Skip to content
This repository has been archived by the owner on Nov 4, 2024. It is now read-only.

Using custom action to replace several steps #11

Using custom action to replace several steps

Using custom action to replace several steps #11

Workflow file for this run

name: PR build
on:
pull_request:
branches: [main]
env:
REGISTRY: ghcr.io
NAMESPACE: galasa-dev
jobs:
build-maven:
name: Build Maven source code and Docker image
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'semeru'
cache: maven
- name: Print githash
run: |
echo $GITHUB_SHA > ./maven.githash
# - name: Make secrets directory
# run : |
# mkdir /home/runner/work/secrets
# - name: Copy settings.xml
# env:
# MAVEN_SETTINGS_XML: ${{ secrets.MAVEN_SETTINGS_XML }}
# run : |
# echo $MAVEN_SETTINGS_XML > /home/runner/work/secrets/settings.xml
# - name: Copy GPG passphrase
# env:
# GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
# run : |
# echo $GPG_PASSPHRASE > /home/runner/work/secrets/passphrase.file
# - name: Copy GPG key
# env:
# GPG_KEY_BASE64: ${{ secrets.GPG_KEY }}
# run : |
# echo $GPG_KEY_BASE64 | base64 --decode > /home/runner/work/secrets/galasa.gpg
# # Set up Maven GPG directory
# - name: Make GPG home directory
# run: |
# mkdir /home/runner/work/gpg
# - name: Change directory permissions
# run: |
# chmod '700' /home/runner/work/gpg
# - name: Import GPG
# run: |
# gpg --homedir /home/runner/work/gpg --pinentry-mode loopback --passphrase-file /home/runner/work/secrets/passphrase.file --import /home/runner/work/secrets/galasa.gpg
# - name: Copy custom settings.xml
# run: |
# cp /home/runner/work/secrets/settings.xml /home/runner/work/gpg/settings.xml
- name: Import GPG secrets and create custom settings.xml
uses: jadecarino/automation/.github/actions/maven-gpg-setup@main
with:
MAVEN_SETTINGS_XML: ${{ secrets.MAVEN_SETTINGS_XML }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
GPG_KEY_BASE64: ${{ secrets.GPG_KEY }}
- name: Building Maven source code
run: |
mvn -f galasa-maven-plugin/pom.xml -X deploy -Dgpg.skip=true \
-Dgalasa.source.repo=https://development.galasa.dev/gh/maven-repo/gradle \
-Dgalasa.central.repo=https://repo.maven.apache.org/maven2/ \
-Dgalasa.release.repo=file:${{ github.workspace }}/repo \
--batch-mode --errors --fail-at-end \
--settings /home/runner/work/gpg/settings.xml
- name: Build Maven image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/dockerfile
load: true
tags: maven:test
build-args: |
dockerRepository=ghcr.io
tag=main