🐛 [Sonar] Disabled Sonar Scan for PR/Branches from forks due to missing SONAR_TOKEN not available for forks #3260
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Kapua CI | |
on: [ push, pull_request ] # Triggers the workflow on push or pull request events | |
env: #these 2 env variables defines respectively the maven projects were cucumber tests resides and maven projects were consumers applications needed for docker images building resides. | |
TEST_PROJECTS: "org.eclipse.kapua:kapua-security-test,org.eclipse.kapua:kapua-qa-integration,org.eclipse.kapua:kapua-scheduler-test,org.eclipse.kapua:kapua-user-test,org.eclipse.kapua:kapua-system-test,org.eclipse.kapua:kapua-job-test,org.eclipse.kapua:kapua-device-registry-test,org.eclipse.kapua:kapua-account-test,org.eclipse.kapua:kapua-tag-test,org.eclipse.kapua:kapua-translator-test" | |
APP_PROJECTS: "org.eclipse.kapua:kapua-service-authentication-app,org.eclipse.kapua:kapua-consumer-lifecycle-app,org.eclipse.kapua:kapua-consumer-telemetry-app" | |
# Secrets | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- name: Set up Maven caches | |
uses: ./.github/actions/setUpMavenCaches | |
with: | |
kapua-artifact-cache-enabled: 'false' | |
- name: Maven version | |
run: mvn --version | |
- name: Build Kapua project | |
run: mvn -B -DskipTests clean install -T 1C | |
- name: Save built Kapua Artifacts | |
uses: ./.github/actions/saveBuiltKapuaArtifacts | |
build-javadoc: | |
needs: build | |
name: Build Javadoc | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- name: Set up Maven caches | |
uses: ./.github/actions/setUpMavenCaches | |
with: | |
kapua-artifact-cache-enabled: 'false' | |
- name: Build Kapua Javadoc | |
run: mvn -B -DskipTests install javadoc:jar | |
junit-tests: | |
needs: build | |
name: Run jUnit Tests | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
needs-docker-images: 'false' | |
run-junit: 'true' | |
test-brokerAcl: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@brokerAcl' | |
needs-docker-images: 'true' | |
test-tag: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@tag' | |
needs-docker-images: 'false' | |
test-broker: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@broker' | |
needs-docker-images: 'true' | |
test-device: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@device' | |
needs-docker-images: 'true' | |
test-device-management: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@deviceManagement' | |
needs-docker-images: 'true' | |
test-connection: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@connection' | |
needs-docker-images: 'true' | |
test-datastore: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@datastore' | |
needs-docker-images: 'true' | |
test-user: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@user' | |
needs-docker-images: 'false' | |
test-userIntegrationBase: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@userIntegrationBase' | |
needs-docker-images: 'true' | |
test-userIntegration: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@userIntegration' | |
needs-docker-images: 'true' | |
test-security: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@security' | |
needs-docker-images: 'false' | |
test-jobsAndScheduler: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '(@job or @scheduler) and not @it' | |
needs-docker-images: 'false' | |
test-job-IT: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@job and @it' | |
needs-docker-images: 'true' | |
test-jobEngine-IT: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@jobEngine' | |
needs-docker-images: 'true' | |
test-jobsIntegration: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@jobsIntegration' | |
needs-docker-images: 'true' | |
test-accountAndTranslator: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@account or @translator' | |
needs-docker-images: 'false' | |
test-RoleAndGroup: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@role or @group' | |
needs-docker-images: 'false' | |
test-deviceRegistry: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@deviceRegistry' | |
needs-docker-images: 'true' | |
test-endpoint: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@endpoint' | |
needs-docker-images: 'true' | |
test-api-auth: | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@rest_auth' | |
needs-docker-images: 'true' | |
needs-api-docker-image: 'true' | |
test-api-corsfilter: | |
needs: test-endpoint # test suite dependent on the endpoint service (if it has failings it's useless to perform these tests) | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@rest_cors' | |
needs-docker-images: 'true' | |
needs-api-docker-image: 'true' | |
test-api-parsing: | |
needs: test-api-auth | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- name: Checkout repository # Checks out a copy of the repository on the runner | |
uses: actions/checkout@v4 | |
- name: Set up runner | |
uses: ./.github/actions/setUpRunner | |
- uses: ./.github/actions/runTestsTaggedAs | |
with: | |
tag: '@rest_parsing' | |
needs-docker-images: 'true' | |
needs-api-docker-image: 'true' |