Skip to content

Configure Sonar deployment from CI #53

Configure Sonar deployment from CI

Configure Sonar deployment from CI #53

Workflow file for this run

name: Deploy module
on:
push:
branches: [ main ]
workflow_dispatch:
jobs:
build:
strategy:
fail-fast: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: 17
distribution: 'temurin'
cache: maven
gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }}
gpg-passphrase: MAVEN_GPG_PASSPHRASE # env variable for passphrase in sign and deploy
server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
server-username: MAVEN_USERNAME # env variable for username in deploy
server-password: MAVEN_CENTRAL_TOKEN # env variable for token in deploy
- name: Cache SonarCloud packages
uses: actions/cache@v4.0.2
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Build, sign and deploy
run: mvn -P sign -B deploy -f client/pom.xml
env:
MAVEN_USERNAME: apupier
MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }}
MAVEN_CENTRAL_TOKEN: ${{ secrets.MAVEN_CENTRAL_TOKEN }}
- name: Sonar analysis
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dsonar.token=${SONAR_TOKEN} -Dsonar.organization=camel-tooling -Dsonar.projectKey=camel-tooling_camel-lsp-client-netbeans -Dsonar.host.url=https://sonarcloud.io -f client/pom.xml