Conversation
| - name: Install Ubuntu dependencies | ||
| if: steps.cache-output.outputs.exit-code == 0 | ||
| run: | | ||
| sudo apt-get update | ||
| sudo apt-get install -y unixodbc-dev python3-venv librdkafka-dev gcc libsasl2-dev build-essential libssl-dev libffi-dev \ | ||
| librdkafka-dev unixodbc-dev libevent-dev jq | ||
| sudo make install_antlr_cli | ||
|
|
||
| - name: Build with Maven |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
| - name: Build with Maven | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: mvn -DskipTests clean install -pl '!openmetadata-ui,!openmetadata-docs,!openmetadata-docs-v1' -am | ||
|
|
||
| - name: Run Integration Tests (MySQL + Elasticsearch) |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
| - name: Run Integration Tests (MySQL + Elasticsearch) | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: mvn test -pl :openmetadata-integration-tests -Pmysql-elasticsearch | ||
|
|
||
| - name: Clean Up |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
| - name: Install Ubuntu dependencies | ||
| if: steps.cache-output.outputs.exit-code == 0 | ||
| run: | | ||
| sudo apt-get update | ||
| sudo apt-get install -y unixodbc-dev python3-venv librdkafka-dev gcc libsasl2-dev build-essential libssl-dev libffi-dev \ | ||
| librdkafka-dev unixodbc-dev libevent-dev jq | ||
| sudo make install_antlr_cli | ||
|
|
||
| - name: Build with Maven |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
| - name: Build with Maven | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: mvn -DskipTests clean install -pl '!openmetadata-ui,!openmetadata-docs,!openmetadata-docs-v1' -am | ||
|
|
||
| - name: Run Integration Tests (PostgreSQL + OpenSearch) |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
| - name: Run Integration Tests (PostgreSQL + OpenSearch) | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: mvn test -pl :openmetadata-integration-tests -Ppostgres-opensearch | ||
|
|
||
| - name: Clean Up |
Check failure
Code scanning / CodeQL
Checkout of untrusted code in a privileged context Critical
Code Review 👍 Approved with suggestionsMajor integration testing framework addition with comprehensive SDK enhancements. Well-structured parallel test infrastructure with only minor documentation concerns. Suggestions 💡 2 suggestionsCode Quality: Migration tracker documentation still committed to repository📄 openmetadata-integration-tests/TEST_MIGRATION_TRACKER.md The file This type of documentation is typically maintained externally (in issues/PRs/project management tools) rather than committed to the repository. Having it in the codebase:
Consider removing this file and tracking the migration status in the PR description or an external tracking issue instead. Security: Test credentials hardcoded in bootstrap code📄 openmetadata-integration-tests/src/test/java/org/openmetadata/it/bootstrap/TestSuiteBootstrap.java:83-91 The TestSuiteBootstrap contains hardcoded test credentials that, while only used in test environments, could be concerning: private static final String ELASTIC_PASSWORD = "password";
private static final String FUSEKI_ADMIN_PASSWORD = "test-admin";These are acceptable for test infrastructure, but consider:
This is low severity since these are clearly for test containers and won't be deployed to production, but the pattern should be documented to prevent confusion. Resolved ✅ 2 resolvedCode Quality: Backup files (.bak, .backup, .bak2) still committed to repository
Code Quality: Excessive migration tracking documentation files committed
What Works WellExcellent Test Infrastructure Design: The TestSuiteBootstrap with LauncherSessionListener ensures containers start once per session, not per test class, enabling efficient parallel execution. Clean Fluent SDK APIs: New fluent builders (DataContracts, AIApplications, TestCases, etc.) provide a readable, chainable API pattern that improves SDK usability significantly. Robust Concurrency Handling: The MySQL deadlock fix ( Well-Organized Module: The new RecommendationsConsider adding explicit test-only comments around hardcoded credentials in bootstrap code to prevent any future confusion about their purpose. OptionsAuto-apply is off Gitar will not commit updates to this branch. Comment with these commands to change:
Was this helpful? React with 👍 / 👎 | This comment will update automatically (Docs) |
|
|



Describe your changes:
Fixes
I worked on ... because ...
Type of change:
Checklist:
Fixes <issue-number>: <short explanation>