chore(ci): only run maven build on Main merge (#20163)

* chore(ci): only run maven build on Main merge

* revert publish maven package
This commit is contained in:
Chirag Madlani 2025-03-10 19:12:02 +05:30 committed by GitHub
parent 0387298908
commit fc8c6d9b02
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 149 additions and 219 deletions

View File

@ -12,12 +12,6 @@
name: airflow-apis-tests
on:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
paths:
- 'openmetadata-airflow-apis/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths:

View File

@ -13,21 +13,6 @@ name: Maven SonarCloud CI
on:
workflow_dispatch:
push:
branches:
- main
- '[0-9]+.[0-9]+.[0-9]+'
paths:
- "openmetadata-service/**"
- "openmetadata-ui/**"
- "openmetadata-spec/src/main/resources/json/schema/**"
- "openmetadata-dist/**"
- "openmetadata-clients/**"
- "common/**"
- "pom.xml"
- "yarn.lock"
- "Makefile"
- "bootstrap/**"
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths:
@ -45,7 +30,7 @@ permissions:
contents: read
checks: write
concurrency:
concurrency:
group: maven-sonar-build-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
@ -65,10 +50,10 @@ jobs:
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
valid-labels: 'safe to test'
pull-request-number: '${{ github.event.pull_request.number }}'
disable-reviews: true # To not auto approve changes
github-token: "${{ secrets.GITHUB_TOKEN }}"
valid-labels: "safe to test"
pull-request-number: "${{ github.event.pull_request.number }}"
disable-reviews: true # To not auto approve changes
- name: Checkout
uses: actions/checkout@v4
@ -83,13 +68,13 @@ jobs:
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Set up JDK 17
if: steps.cache-output.outputs.exit-code == 0
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
java-version: "17"
distribution: "temurin"
- name: Install Ubuntu dependencies
if: steps.cache-output.outputs.exit-code == 0
@ -116,4 +101,4 @@ jobs:
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
fail_on_test_failures: true
report_paths: 'openmetadata-service/target/surefire-reports/TEST-*.xml'
report_paths: "openmetadata-service/target/surefire-reports/TEST-*.xml"

View File

@ -14,17 +14,10 @@
name: MySQL Playwright Integration Tests
on:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
- '1.[0-9]+[0-9]+'
paths-ignore:
- 'openmetadata-docs/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths-ignore:
- 'openmetadata-docs/**'
- "openmetadata-docs/**"
jobs:
playwright-mysql:
@ -32,19 +25,19 @@ jobs:
strategy:
fail-fast: false
matrix:
browser-type: ['chromium']
browser-type: ["chromium"]
environment: test
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
- name: Wait for the labeler
uses: lewagon/wait-on-check-action@v1.3.4
if: ${{ github.event_name == 'pull_request_target' }}
@ -57,10 +50,10 @@ jobs:
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
valid-labels: 'safe to test'
pull-request-number: '${{ github.event.pull_request.number }}'
disable-reviews: true # To not auto approve changes
github-token: "${{ secrets.GITHUB_TOKEN }}"
valid-labels: "safe to test"
pull-request-number: "${{ github.event.pull_request.number }}"
disable-reviews: true # To not auto approve changes
- name: Checkout
uses: actions/checkout@v4
with:
@ -88,10 +81,10 @@ jobs:
- name: Setup Openmetadata Test Environment
uses: ./.github/actions/setup-openmetadata-test-environment
with:
python-version: '3.9'
python-version: "3.9"
args: "-d mysql"
ingestion_dependency: "all"
- name: Run Playwright Integration Tests with browser ${{ matrix.browser-type }}
- name: Run Playwright Integration Tests with browser ${{ matrix.browser-type }}
env:
E2E_REDSHIFT_HOST_PORT: ${{ secrets.E2E_REDSHIFT_HOST_PORT }}
E2E_REDSHIFT_USERNAME: ${{ secrets.E2E_REDSHIFT_USERNAME }}
@ -113,4 +106,4 @@ jobs:
run: |
cd ./docker/development
docker compose down --remove-orphans
sudo rm -rf ${PWD}/docker-volume
sudo rm -rf ${PWD}/docker-volume

View File

@ -14,17 +14,10 @@
name: Postgres Playwright Integration Tests
on:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
- '1.[0-9]+[0-9]+'
paths-ignore:
- 'openmetadata-docs/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths-ignore:
- 'openmetadata-docs/**'
- "openmetadata-docs/**"
jobs:
playwright-postgresql:
@ -32,19 +25,19 @@ jobs:
strategy:
fail-fast: false
matrix:
browser-type: ['chromium']
browser-type: ["chromium"]
environment: test
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
- name: Wait for the labeler
uses: lewagon/wait-on-check-action@v1.3.4
if: ${{ github.event_name == 'pull_request_target' }}
@ -57,10 +50,10 @@ jobs:
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
valid-labels: 'safe to test'
pull-request-number: '${{ github.event.pull_request.number }}'
disable-reviews: true # To not auto approve changes
github-token: "${{ secrets.GITHUB_TOKEN }}"
valid-labels: "safe to test"
pull-request-number: "${{ github.event.pull_request.number }}"
disable-reviews: true # To not auto approve changes
- name: Checkout
uses: actions/checkout@v4
with:
@ -88,10 +81,10 @@ jobs:
- name: Setup Openmetadata Test Environment
uses: ./.github/actions/setup-openmetadata-test-environment
with:
python-version: '3.9'
python-version: "3.9"
args: "-d postgresql"
ingestion_dependency: "all"
- name: Run Playwright Integration Tests with browser ${{ matrix.browser-type }}
- name: Run Playwright Integration Tests with browser ${{ matrix.browser-type }}
env:
E2E_REDSHIFT_HOST_PORT: ${{ secrets.E2E_REDSHIFT_HOST_PORT }}
E2E_REDSHIFT_USERNAME: ${{ secrets.E2E_REDSHIFT_USERNAME }}
@ -113,4 +106,4 @@ jobs:
run: |
cd ./docker/development
docker compose down --remove-orphans
sudo rm -rf ${PWD}/docker-volume
sudo rm -rf ${PWD}/docker-volume

View File

@ -35,19 +35,19 @@ jobs:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: 17
distribution: 'temurin'
distribution: "temurin"
server-id: ossrh
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD

View File

@ -12,13 +12,6 @@
name: py-operator-build-test
on:
workflow_dispatch:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
paths-ignore:
- 'openmetadata-docs/**'
- 'openmetadata-docs-v1/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths:
@ -39,7 +32,6 @@ jobs:
py-run-build-tests:
runs-on: ubuntu-latest
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
@ -64,10 +56,10 @@ jobs:
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
valid-labels: 'safe to test'
pull-request-number: '${{ github.event.pull_request.number }}'
disable-reviews: true # To not auto approve changes
github-token: "${{ secrets.GITHUB_TOKEN }}"
valid-labels: "safe to test"
pull-request-number: "${{ github.event.pull_request.number }}"
disable-reviews: true # To not auto approve changes
- name: Checkout
uses: actions/checkout@v4

View File

@ -12,13 +12,6 @@
name: py-tests-postgres
on:
workflow_dispatch:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
paths-ignore:
- 'openmetadata-docs/**'
- 'openmetadata-docs-v1/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths:

View File

@ -12,13 +12,6 @@
name: py-tests
on:
workflow_dispatch:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
paths-ignore:
- 'openmetadata-docs/**'
- 'openmetadata-docs-v1/**'
pull_request_target:
types: [labeled, opened, synchronize, reopened]
paths:
@ -42,110 +35,110 @@ jobs:
strategy:
fail-fast: false
matrix:
py-version: ['3.8', '3.9', '3.10', '3.11']
py-version: ["3.8", "3.9", "3.10", "3.11"]
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: false
swap-storage: true
docker-images: false
- name: Wait for the labeler
uses: lewagon/wait-on-check-action@v1.3.4
if: ${{ github.event_name == 'pull_request_target' }}
with:
ref: ${{ github.event.pull_request.head.sha }}
check-name: Team Label
repo-token: ${{ secrets.GITHUB_TOKEN }}
wait-interval: 90
- name: Wait for the labeler
uses: lewagon/wait-on-check-action@v1.3.4
if: ${{ github.event_name == 'pull_request_target' }}
with:
ref: ${{ github.event.pull_request.head.sha }}
check-name: Team Label
repo-token: ${{ secrets.GITHUB_TOKEN }}
wait-interval: 90
- name: Verify PR labels
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
valid-labels: 'safe to test'
pull-request-number: '${{ github.event.pull_request.number }}'
disable-reviews: true # To not auto approve changes
- name: Verify PR labels
uses: jesusvasquez333/verify-pr-label-action@v1.4.0
if: ${{ github.event_name == 'pull_request_target' }}
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
valid-labels: "safe to test"
pull-request-number: "${{ github.event.pull_request.number }}"
disable-reviews: true # To not auto approve changes
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Setup Openmetadata Test Environment
uses: ./.github/actions/setup-openmetadata-test-environment
with:
python-version: ${{ matrix.py-version}}
args: "-m no-ui"
ingestion_dependency: "mysql,elasticsearch,sample-data"
- name: Setup Openmetadata Test Environment
uses: ./.github/actions/setup-openmetadata-test-environment
with:
python-version: ${{ matrix.py-version}}
args: "-m no-ui"
ingestion_dependency: "mysql,elasticsearch,sample-data"
- name: Run Python Tests
if: ${{ matrix.py-version != '3.9' }}
run: |
source env/bin/activate
make run_python_tests
env:
TESTCONTAINERS_RYUK_DISABLED: true
- name: Run Python Tests & record coverage
if: ${{ matrix.py-version == '3.9' }}
run: |
source env/bin/activate
make coverage
rm pom.xml
# fix coverage xml report for github
sed -i 's/src\/metadata/\/github\/workspace\/ingestion\/src\/metadata/g' ingestion/ci-coverage.xml
- name: Run Python Tests
if: ${{ matrix.py-version != '3.9' }}
run: |
source env/bin/activate
make run_python_tests
env:
TESTCONTAINERS_RYUK_DISABLED: true
- name: Clean Up
run: |
cd ./docker/development
docker compose down --remove-orphans
sudo rm -rf ${PWD}/docker-volume
- name: Run Python Tests & record coverage
if: ${{ matrix.py-version == '3.9' }}
run: |
source env/bin/activate
make coverage
rm pom.xml
# fix coverage xml report for github
sed -i 's/src\/metadata/\/github\/workspace\/ingestion\/src\/metadata/g' ingestion/ci-coverage.xml
# we have to pass these args values since we are working with the 'pull_request_target' trigger
- name: Push Results in PR to Sonar
id: push-to-sonar
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' }}
continue-on-error: true
uses: sonarsource/sonarcloud-github-action@v2.3.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.INGESTION_SONAR_SECRET }}
with:
projectBaseDir: ingestion/
args: >
-Dproject.settings=ingestion/sonar-project.properties
-Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
-Dsonar.pullrequest.branch=${{ github.head_ref }}
-Dsonar.pullrequest.github.repository=OpenMetadata
-Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
-Dsonar.pullrequest.provider=github
- name: Clean Up
run: |
cd ./docker/development
docker compose down --remove-orphans
sudo rm -rf ${PWD}/docker-volume
# next two steps are for retrying "Push Results in PR to Sonar" step in case it fails
- name: Wait to retry 'Push Results in PR to Sonar'
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' && steps.push-to-sonar.outcome != 'success' }}
run: sleep 20s
shell: bash
# we have to pass these args values since we are working with the 'pull_request_target' trigger
- name: Push Results in PR to Sonar
id: push-to-sonar
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' }}
continue-on-error: true
uses: sonarsource/sonarcloud-github-action@v2.3.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.INGESTION_SONAR_SECRET }}
with:
projectBaseDir: ingestion/
args: >
-Dproject.settings=ingestion/sonar-project.properties
-Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
-Dsonar.pullrequest.branch=${{ github.head_ref }}
-Dsonar.pullrequest.github.repository=OpenMetadata
-Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
-Dsonar.pullrequest.provider=github
- name: Retry 'Push Results in PR to Sonar'
uses: sonarsource/sonarcloud-github-action@master
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' && steps.push-to-sonar.outcome != 'success' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.INGESTION_SONAR_SECRET }}
with:
projectBaseDir: ingestion/
args: >
-Dproject.settings=ingestion/sonar-project.properties
-Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
-Dsonar.pullrequest.branch=${{ github.head_ref }}
-Dsonar.pullrequest.github.repository=OpenMetadata
-Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
-Dsonar.pullrequest.provider=github
# next two steps are for retrying "Push Results in PR to Sonar" step in case it fails
- name: Wait to retry 'Push Results in PR to Sonar'
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' && steps.push-to-sonar.outcome != 'success' }}
run: sleep 20s
shell: bash
- name: Retry 'Push Results in PR to Sonar'
uses: sonarsource/sonarcloud-github-action@master
if: ${{ github.event_name == 'pull_request_target' && matrix.py-version == '3.9' && steps.push-to-sonar.outcome != 'success' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.INGESTION_SONAR_SECRET }}
with:
projectBaseDir: ingestion/
args: >
-Dproject.settings=ingestion/sonar-project.properties
-Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
-Dsonar.pullrequest.branch=${{ github.head_ref }}
-Dsonar.pullrequest.github.repository=OpenMetadata
-Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
-Dsonar.pullrequest.provider=github

View File

@ -15,13 +15,6 @@
name: Selenium No Ingestion Java CI
on:
push:
branches:
- main
- '0.[0-9]+.[0-9]+'
paths:
- 'openmetadata-ui/src/main/resources/ui/**'
- 'openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pagesWithoutData/**'
pull_request:
branches:
- main

View File

@ -3,12 +3,6 @@ name: SonarCloud + Jest Coverage
on:
# Trigger analysis when pushing in master or pull requests, and when creating
# a pull request.
push:
branches:
- main
- "0.[0-9]+.[0-9]+"
paths:
- openmetadata-ui/src/main/resources/ui/**
pull_request_target:
types: [opened, synchronize, reopened, labeled]
paths: