Bump org.sonarqube from 7.2.0.6526 to 7.2.1.6560 #323
Workflow file for this run
This file contains hidden or 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: Build | |
| on: | |
| push: | |
| branches: | |
| - 'main' | |
| pull_request: | |
| branches: | |
| - 'main' | |
| - 'hotfix/v*.*.*' | |
| jobs: | |
| build-jar: | |
| name: Build JAR | |
| runs-on: ubuntu-latest | |
| outputs: | |
| current_version: ${{ steps.metadata.outputs.current_version }} | |
| steps: | |
| - name: Checkout project | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up JDK 21 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Cache SonarCloud packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.sonar/cache | |
| key: ${{ runner.os }}-sonar | |
| restore-keys: ${{ runner.os }}-sonar | |
| - name: Cache Gradle packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.gradle/caches | |
| key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} | |
| restore-keys: ${{ runner.os }}-gradle | |
| - name: Lint | |
| run: ./gradlew spotlessCheck | |
| - name: Build | |
| run: ./gradlew build --info | |
| - name: Publish test report | |
| if: always() | |
| uses: mikepenz/action-junit-report@v6 | |
| with: | |
| report_paths: '**/build/test-results/test/TEST-*.xml' | |
| - name: Sonar | |
| if: github.event.pull_request.head.repo.fork == false | |
| run: ./gradlew jacocoTestReport sonar | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
| - name: Metadata | |
| id: metadata | |
| run: echo current_version=$(echo $(./gradlew properties --no-daemon --console=plain -q | grep "^version:" | awk '{printf $2}')) >> $GITHUB_OUTPUT | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Docker login | |
| if: github.ref == 'refs/heads/main' | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.MICHELIN_DOCKER_HUB_USERNAME }} | |
| password: ${{ secrets.MICHELIN_DOCKER_HUB_PASSWD }} | |
| - name: Docker build | |
| uses: docker/build-push-action@v6 | |
| with: | |
| context: . | |
| file: .docker/jar.Dockerfile | |
| platforms: linux/amd64,linux/arm64 | |
| push: ${{ github.ref == 'refs/heads/main' && 'true' || 'false' }} | |
| tags: michelin/kafkactl:${{ steps.metadata.outputs.current_version }} | |
| env: | |
| DOCKER_BUILD_SUMMARY: false | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: kafkactl-jar | |
| path: build/libs/kafkactl-${{ steps.metadata.outputs.current_version }}.jar | |
| build-native: | |
| name: Build Native Image ${{ matrix.platform }} | |
| runs-on: ${{ matrix.os }} | |
| outputs: | |
| current_version: ${{ steps.metadata.outputs.current_version }} | |
| strategy: | |
| matrix: | |
| os: [ 'ubuntu-latest', 'ubuntu-24.04-arm', 'windows-latest', 'macos-latest' ] | |
| include: | |
| - os: 'ubuntu-latest' | |
| platform: 'linux-amd64' | |
| extension: '' | |
| - os: 'ubuntu-24.04-arm' | |
| platform: 'linux-arm64' | |
| extension: '' | |
| - os: 'macos-latest' | |
| platform: 'darwin-arm64' | |
| extension: '' | |
| - os: 'windows-latest' | |
| platform: 'windows-amd64' | |
| extension: '.exe' | |
| steps: | |
| - name: Checkout project | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up GraalVM | |
| uses: graalvm/setup-graalvm@v1 | |
| with: | |
| distribution: 'graalvm' | |
| java-version: '21' | |
| native-image-musl: ${{ matrix.os == 'ubuntu-latest' }} | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Cache Gradle packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.gradle/caches | |
| key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} | |
| restore-keys: ${{ runner.os }}-gradle | |
| - name: Lint | |
| run: ./gradlew spotlessCheck | |
| - name: Build | |
| run: ./gradlew nativeCompile ${{ matrix.os == 'ubuntu-latest' && '-Pmusl' || '' }} | |
| - name: Metadata | |
| id: metadata | |
| run: echo current_version=$(echo $(./gradlew properties --no-daemon --console=plain -q | grep "^version:" | awk '{printf $2}')) >> $GITHUB_OUTPUT | |
| shell: bash | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: kafkactl-${{ matrix.platform }} | |
| path: build/native/nativeCompile/kafkactl-${{ steps.metadata.outputs.current_version }}${{ matrix.extension }} | |
| build-docker-native: | |
| name: Build Docker Native Image | |
| runs-on: ubuntu-latest | |
| needs: build-native | |
| steps: | |
| - name: Checkout project | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Download artifact | |
| uses: actions/download-artifact@v6 | |
| with: | |
| pattern: kafkactl-linux-* | |
| path: build/native/nativeCompile | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Docker login | |
| if: github.ref == 'refs/heads/main' | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.MICHELIN_DOCKER_HUB_USERNAME }} | |
| password: ${{ secrets.MICHELIN_DOCKER_HUB_PASSWD }} | |
| - name: Docker build | |
| uses: docker/build-push-action@v6 | |
| with: | |
| context: . | |
| file: .docker/Dockerfile | |
| platforms: linux/amd64,linux/arm64 | |
| push: ${{ github.ref == 'refs/heads/main' && 'true' || 'false' }} | |
| tags: michelin/kafkactl:${{ needs.build-native.outputs.current_version }}-native | |
| env: | |
| DOCKER_BUILD_SUMMARY: false |