Skip to content

Workflow file for this run

# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
# For more information see: https://github.com/actions/setup-java#apache-maven-with-a-settings-path
name: Maven Deploy to GitHub Packages
on:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
settings-path: ${{ github.workspace }} # location for the settings.xml file
- name: Build with Maven
run: mvn -B package --file pom.xml
test:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Doppler CLI
uses: dopplerhq/cli-action@v1
- name: Login in Doppler
run: doppler setup --token=${{ secrets.DOPPLER_TOKEN_PROD }} --no-prompt
- name: Pass All Secrets to Next Steps
run: doppler secrets download --no-file --format=docker >> $GITHUB_ENV;
- name: Check Test Env Variables
run: echo PLUGGY_CLIENT_ID $PLUGGY_CLIENT_ID PLUGGY_BASE_URL $PLUGGY_BASE_URL
env:
PLUGGY_CLIENT_ID: ${{ env.PLUGGY_CLIENT_ID }}
PLUGGY_CLIENT_SECRET: ${{ env.PLUGGY_CLIENT_SECRET }}
PLUGGY_BASE_URL: ${{ env.PLUGGY_BASE_URL }}
- name: Integration Tests
run: mvn -B verify --file pom.xml
env:
PLUGGY_CLIENT_ID: ${{ env.PLUGGY_CLIENT_ID }}
PLUGGY_CLIENT_SECRET: ${{ env.PLUGGY_CLIENT_SECRET }}
PLUGGY_BASE_URL: ${{ env.PLUGGY_BASE_URL }}
deploy:
runs-on: ubuntu-latest
needs: [build, test]
steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
settings-path: ${{ github.workspace }} # location for the settings.xml file
- name: Publish to GitHub Packages Apache Maven
run: mvn deploy -Dmaven.test.skip.exec -s $GITHUB_WORKSPACE/settings.xml # skip tests in this step
env:
GITHUB_TOKEN: ${{ github.token }}