Skip to content

v0.0.6

v0.0.6 #9

Workflow file for this run

name: Maven Release
# Performs a Maven release using JDK 11 when a new GitHub release has been published
on:
release:
types: [ published ]
jobs:
publish:
name: Maven Artifact Publisher (JDK 17)
runs-on: ubuntu-latest
env:
AUTORELEASE_ARTIFACT: ${{ secrets.AUTORELEASE_ARTIFACT }}
SKIP_JAR_DEPLOYMENT: ${{ secrets.SKIP_JAR_DEPLOYMENT }}
MAVEN_CACHE_KEY: ${{ secrets.MAVEN_CACHE_KEY }}
steps:
- name: Set up build cache
uses: actions/cache@0781355a23dac32fd3bac414512f4b903437991a # v2
if: ${{ env.MAVEN_CACHE_KEY }}
with:
path: |
~/.m2
lib
key: uclalibrary-cache-${{ env.MAVEN_CACHE_KEY }}-${{ hashFiles('**/pom.xml') }}
restore-keys: uclalibrary-cache-${{ env.MAVEN_CACHE_KEY }}-
- name: Check out source code
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2
with:
lfs: true
- name: Checkout LFS objects
run: git lfs checkout
- name: Install JDK 17
uses: actions/setup-java@8764a52df183aa0ccea74521dfd9d506ffc7a19a # v2
with:
distribution: 'adopt'
java-version: 17
# If running locally in act, install Maven
- name: Set up Maven if needed
if: ${{ env.ACT }}
uses: stCarolas/setup-maven@1d56b37995622db66cce1214d81014b09807fb5a # v4
with:
maven-version: 3.6.3
- name: Set autorelease config
if: env.AUTORELEASE_ARTIFACT == null
run: echo "AUTORELEASE_ARTIFACT=false" >> $GITHUB_ENV
- name: Set Jar deployment config
if: env.SKIP_JAR_DEPLOYMENT == null
run: echo "SKIP_JAR_DEPLOYMENT=false" >> $GITHUB_ENV
- name: Optionally, login to Docker repository
uses: docker/login-action@f3364599c6aa293cdc2b8391b1b56d0c30e45c8a # v1.8.0
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
if: env.DOCKER_USERNAME != null
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Install local dependencies
uses: samuelmeuli/action-maven-publish@201a45a3f311b2ee888f252ba9f4194257545709 # v1.4.0
with:
maven_goals_phases: "validate"
maven_profiles: default
maven_args: >
-V -ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error
- name: Release with Maven
uses: samuelmeuli/action-maven-publish@201a45a3f311b2ee888f252ba9f4194257545709 # v1.4.0
with:
gpg_private_key: ${{ secrets.BUILD_KEY }}
gpg_passphrase: ${{ secrets.BUILD_PASSPHRASE }}
nexus_username: ${{ secrets.SONATYPE_USERNAME }}
nexus_password: ${{ secrets.SONATYPE_PASSWORD }}
maven_profiles: release
maven_args: >
-Drevision=${{ github.event.release.tag_name }} -DautoReleaseAfterClose=${{ env.AUTORELEASE_ARTIFACT }}
-ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error -Ddocker.showLogs=true
-Ddocker.username=${{ secrets.DOCKER_USERNAME }} -Ddocker.password=${{ secrets.DOCKER_PASSWORD }}
-DskipNexusStagingDeployMojo=${{ env.SKIP_JAR_DEPLOYMENT }}
- name: Publish Jar Artifact to S3
uses: jakejarvis/s3-sync-action@be0c4ab89158cac4278689ebedd8407dd5f35a83 # v0.5.1
with:
args: >
--acl public-read --follow-symlinks --exclude '*'
--include "cantaloupe-auth-delegate-${{ github.event.release.tag_name }}.jar"
env:
AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: "us-west-2"
SOURCE_DIR: "target"
DEST_DIR: "cantaloupe-delegate/"