# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven # This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. name: Java CI with Maven on: workflow_call: secrets: AWS_CA_USER: required: true AWS_CA_PASSWORD: required: true jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Maven uses: stCarolas/setup-maven@v5 with: maven-version: '3.9.9' - name: Set up JDK 8 uses: actions/setup-java@v4 with: java-version: '8' distribution: 'corretto' cache: maven - name: Set up AWS Cli run: | curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip -q awscliv2.zip ./aws/install export TOKEN=`aws codeartifact get-authorization-token --region eu-west-1 --domain pravila --domain-owner 867459752380 --query authorizationToken --output text` echo "CODEARTIFACT_AUTH_TOKEN=$TOKEN" >> $GITHUB_ENV env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_CA_USER }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_CA_PASSWORD }} - name: Create Maven settings run: | echo -e "$SETTINGS_XML" > ~/.m2/settings.xml cat ~/.m2/settings.xml echo "CODEARTIFACT_AUTH_TOKEN: $CODEARTIFACT_AUTH_TOKEN" env: SETTINGS_XML: ${{ vars.MVN_SETTINGS_XML }} - name: Build with Maven run: mvn -B clean package env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_CA_USER }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_CA_PASSWORD }} # Optional: Uploads the full dependency graph to GitHub to improve the quality of Dependabot alerts this repository can receive # - name: Update dependency graph # uses: advanced-security/maven-dependency-submission-action@571e99aab1055c2e71a1e2309b9691de18d6b7d6