Merge pull request #2 from holixon/dependabot/maven/org.apache.maven.… #4
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: Master and Snapshot release | |
on: | |
push: | |
branches: | |
- master | |
- develop | |
- snapshot-producer | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
# Get GPG private key into GPG | |
- name: Import GPG Owner Trust | |
run: echo ${{ secrets.GPG_OWNERTRUST }} | base64 --decode | gpg --import-ownertrust | |
- name: Import GPG key | |
run: echo ${{ secrets.GPG_SECRET_KEYS }} | base64 --decode | gpg --import --no-tty --batch --yes | |
# Setup JDK and Maven | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'zulu' | |
cache: maven | |
server-id: ossrh | |
server-username: OSS_CENTRAL_USERNAME # env variable for Maven Central | |
server-password: OSS_CENTRAL_PASSWORD # env variable for Maven Central | |
- name: Prepare Maven Wrapper | |
run: chmod +x ./mvnw | |
- name: Build with Maven | |
run: ./mvnw clean verify -U -B -T4 -ntp | |
- name: Prepare I-Tests | |
run: mkdir -p target/jgiven-reports/json | |
- name: Run I-Tests with Maven | |
run: ./mvnw integration-test failsafe:verify -Pitest -B -T4 -ntp | |
- name: Deploy a new version to central | |
run: ./mvnw deploy -B -ntp -DskipTests -Prelease -Dgpg.keyname="${{secrets.GPG_KEYNAME}}" -Dgpg.passphrase="${{secrets.GPG_PASSPHRASE}}" | |
env: | |
OSS_CENTRAL_USERNAME: "${{ secrets.SONATYPE_USERNAME }}" | |
OSS_CENTRAL_PASSWORD: "${{ secrets.SONATYPE_PASSWORD }}" | |
if: github.ref == 'refs/heads/master' # limit artifact production to master for the moment | |
- name: Upload coverage information to CodeCov | |
uses: codecov/codecov-action@v3 | |
with: | |
token: "${{ secrets.CODECOV_TOKEN }}" | |
- name: Upload test coverage to Codacy | |
if: github.event_name == 'push' && github.actor != 'dependabot[bot]' | |
run: bash <(curl -Ls https://coverage.codacy.com/get.sh) | |
env: | |
CODACY_PROJECT_TOKEN: "${{secrets.CODACY_PROJECT_TOKEN}}" |