Stefan Kalscheuer 253cb21f68
Some checks failed
continuous-integration/drone/push Build is passing
CI / build (11, 1.11.12) (push) Failing after 48s
CI / build (11, 1.17.1) (push) Failing after 4s
CI / build (11, 1.2.0) (push) Failing after 5s
CI / build (17, 1.11.12) (push) Failing after 16s
CI / build (17, 1.17.1) (push) Failing after 4s
CI / build (17, 1.2.0) (push) Failing after 5s
CI / build (21, 1.17.1) (push) Failing after 17s
CI / build (21, 1.2.0) (push) Failing after 4s
CI / build (true, 21, 1.11.12) (push) Failing after 5s
build: only run analysis if tokens are available
This allows reuse of the GitHub actions on internal platforms without
messing up SonarCloud analysis from different repositories.
2024-08-03 17:06:04 +02:00

53 lines
1.9 KiB
YAML

name: CI
on: [ push, pull_request ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
jdk: [ 11, 17, 21 ]
vault: [ '1.2.0', '1.11.12', '1.17.1' ]
include:
- jdk: 21
vault: '1.11.12'
analysis: true
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Java
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.jdk }}
distribution: 'temurin'
- name: Compile
run: mvn -B clean compile
- name: Set up Vault
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')
run: |
wget -q "https://releases.hashicorp.com/vault/${{ matrix.vault }}/vault_${{ matrix.vault }}_linux_amd64.zip"
wget -q -O - "https://releases.hashicorp.com/vault/${{ matrix.vault }}/vault_${{ matrix.vault }}_SHA256SUMS" | grep linux_amd64 | sha256sum -c
tmp="$(mktemp -d)"
unzip "vault_${{ matrix.vault }}_linux_amd64.zip" -d "$tmp"
rm "vault_${{ matrix.vault }}_linux_amd64.zip"
sudo mv "$tmp/vault" /usr/bin/vault
rm -rf "$tmp"
- name: Test (Unit & Integration)
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')
env:
VAULT_VERSION: ${{ matrix.vault }}
run: mvn -B -P coverage -P integration-test verify
- name: Test (Unit)
if: github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/heads/release/')
run: mvn -B -P coverage verify
- name: Analysis
if: ${{ matrix.analysis && env.GITHUB_TOKEN != '' && env.SONAR_TOKEN != '' }}
run: >
mvn -B sonar:sonar
-Dsonar.host.url=https://sonarcloud.io
-Dsonar.organization=stklcode-github
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}