This commit is contained in:
Nanne Baars 2021-03-27 17:55:58 +01:00
parent e347887e00
commit f895051277

View File

@ -4,30 +4,46 @@ on:
tags:
- test* # todo replace with v*
jobs:
build:
release:
name: Release WebGoat
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: "Get tag name"
id: tag
uses: dawidd6/action-get-tag@v1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: "Set labels for ${{ github.ref }}"
run: |
echo "WEBGOAT_TAG_VERSION=${{ steps.tag.outputs.tag }}" >> $GITHUB_ENV
echo "WEBGOAT_MAVEN_VERSION=${WEBGOAT_TAG_VERSION:1}" >> $GITHUB_ENV
- name: Build with Maven
run: mvn clean install -DskipTests
run: |
mvn versions:set ${WEBGOAT_VERSION}
mvn clean install -DskipTests
- name: "Create release"
uses: softprops/action-gh-release@v1
with:
draft: false
files: |
webgoat-server/target/*.jar
webwolf/target/*.jar
webgoat-server/target/webgoat-server-${WEBGOAT_MAVEN_VERSION}.jar
webwolf/target/webwolf-${WEBGOAT_MAVEN_VERSION}.jar
body: |
## Version ${{ steps.tag.outputs.tag }}
@ -52,36 +68,27 @@ jobs:
Team WebGoat
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
docker:
name: "Docker build & push"
runs-on: ubuntu-latest
needs: build
steps:
- name: "Check out"
uses: actions/checkout@v2
- name: "Get tag name"
id: tag
uses: dawidd6/action-get-tag@v1
- name: "Set up QEMU"
uses: docker/setup-qemu-action@v1
- name: "Set up Docker Buildx"
uses: docker/setup-buildx-action@v1
- name: "Login to dockerhub"
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: "Build and push"
uses: docker/build-push-action@v2
with:
context: ./docker
file: docker/Dockerfile
push: false #todo enable
platforms: linux/amd64
tags: |
webgoat/goatandwolf:${{ steps.tag.outputs.tag }}
build-args: |
webgoat_version=${{ steps.tag.outputs.tag }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: "Set up QEMU"
uses: docker/setup-qemu-action@v1
- name: "Set up Docker Buildx"
uses: docker/setup-buildx-action@v1
- name: "Login to dockerhub"
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: "Build and push"
uses: docker/build-push-action@v2
with:
context: ./docker
file: docker/Dockerfile
push: false #todo enable
platforms: linux/amd64
tags: |
webgoat/goatandwolf:${WEBGOAT_TAG_VERSION}
# todo webgoat/goatandwolf:latest
build-args: |
webgoat_version=${WEBGOAT_TAG_VERSION}
- name: "Image digest"
run: echo ${{ steps.docker_build.outputs.digest }}