Added a more feature rich workflow

This commit is contained in:
Matt York 2023-10-15 11:59:47 +01:00
parent 6cba61ff99
commit ccc963f78d

View file

@ -10,7 +10,11 @@ on:
branches: [ main ]
jobs:
build:
# The source build job is designed to ensure that the source...
# * builds
# *
source-build:
runs-on: ubuntu-latest
strategy:
@ -49,9 +53,71 @@ jobs:
- name: List all the container images on the runner
run: docker image
- name: Checkout code
uses: actions/checkout@v2
#######################################
- name: Setup JFrog CLI
uses: jfrog/setup-jfrog-cli@v3
env:
JF_URL: ${{ secrets.JF_URL }}
JF_ACCESS_TOKEN: ${{ secrets.JF_ACCESS_TOKEN }}
- name: Retag image with jfrog repo
run: docker tag spring-petclinic:3.1.0-SNAPSHOT my0373.jfrog.io/my0373-docker/spring-petclinic:3.1.0-SNAPSHOT
- name: Build Tag and push Docker Image
env:
IMAGE_NAME: my0373.jfrog.io/my0373-docker/spring-petclinic:3.1.0-SNAPSHOT
run:
jf docker push $IMAGE_NAME
- name: Scan for vulnerabilities
run:
jf scan *
- name: Publish Build info With JFrog CLI
env:
# Generated and maintained by GitHub
JFROG_CLI_BUILD_NAME: spring-petclinic
# JFrog organization secret
JFROG_CLI_BUILD_NUMBER : ${{ github.run_number }}
run: |
# Export the build name and build nuber
# Collect environment variables for the build
jf rt build-collect-env
# Collect VCS details from git and add them to the build
jf rt build-add-git
# Publish build info
jf rt build-publish
##############################
container-build:
runs-on: ubuntu-latest
strategy:
matrix:
java: [ '17' ]
steps:
- uses: actions/checkout@v3
- name: Set up JDK ${{matrix.java}}
uses: actions/setup-java@v2
with:
java-version: ${{matrix.java}}
distribution: 'adopt'
cache: maven
- name: Build the Maven container image
run: ./mvnw spring-boot:build-image
# I add this step for debug.
# My local Linux laptop uses podman rather than docker, so this is a useful debug step.
- name: List all the container images on the runner
run: docker image
- name: Checkout code
uses: actions/checkout@v2