mirror of
https://github.com/spring-projects/spring-petclinic.git
synced 2025-07-22 07:45:49 +00:00
Added a more feature rich workflow
This commit is contained in:
parent
6cba61ff99
commit
ccc963f78d
1 changed files with 72 additions and 6 deletions
|
@ -10,7 +10,11 @@ on:
|
||||||
branches: [ main ]
|
branches: [ main ]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
|
||||||
|
# The source build job is designed to ensure that the source...
|
||||||
|
# * builds
|
||||||
|
# *
|
||||||
|
source-build:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
|
@ -48,10 +52,6 @@ jobs:
|
||||||
# My local Linux laptop uses podman rather than docker, so this is a useful debug step.
|
# 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
|
- name: List all the container images on the runner
|
||||||
run: docker image
|
run: docker image
|
||||||
|
|
||||||
|
|
||||||
#######################################
|
|
||||||
|
|
||||||
|
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
@ -88,4 +88,70 @@ jobs:
|
||||||
# Collect VCS details from git and add them to the build
|
# Collect VCS details from git and add them to the build
|
||||||
jf rt build-add-git
|
jf rt build-add-git
|
||||||
# Publish build info
|
# Publish build info
|
||||||
jf rt build-publish
|
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
|
||||||
|
|
||||||
|
- 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
|
Loading…
Reference in a new issue