From f57412a4f50bbec26226ad942591843ab5b02a3f Mon Sep 17 00:00:00 2001 From: Nanne Baars Date: Sat, 27 Mar 2021 14:07:24 +0100 Subject: [PATCH] WIP --- .github/workflows/main.yml | 48 +++++++++++++++++------------------ .github/workflows/release.yml | 46 +++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index bf58b270b..47cc29f0f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -7,32 +7,32 @@ on: - '*' jobs: -# build: -# runs-on: ${{ matrix.os }} -# strategy: -# matrix: -# os: [ubuntu-latest, windows-latest, macos-latest] -# java: [11, 15] -# steps: -# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 -# - name: Set up JDK ${{ matrix.java }} -# uses: actions/setup-java@v1 -# with: -# java-version: ${{ matrix.java }} -# 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: Build with Maven -# run: mvn clean install -DskipTests + build: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + java: [11, 15] + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + - name: Set up JDK ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + 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: Build with Maven + run: mvn clean install notify-slack: if: github.event_name == 'push' && (success() || failure()) -# needs: -# - build + needs: + - build runs-on: ubuntu-latest steps: - name: "Slack workflow notification" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..5b3952a6f --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,46 @@ +name: "Release Pipeline" +on: + push: + tags: + - test* # replace with v* +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + java: [11, 15] + steps: + - uses: actions/checkout@v2 + - name: Set up JDK ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + 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: Build with Maven + run: mvn clean install -DskipTests + docker: + runs-on: ubuntu-latest + steps: + - 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: . + file: docker/Dockerfile + platforms: linux/amd64,linux/arm/v7,linux/arm64 + push: false + tags: | + webgoat/goatandwolf:${{ steps.tag.outputs.tag }} + build-args: | + webgoat_version=${{ steps.tag.outputs.tag }}