From 4b90fdcb324e9db09235a776fa22f4f64d185b79 Mon Sep 17 00:00:00 2001 From: anhefti Date: Thu, 22 Apr 2021 14:27:16 +0200 Subject: [PATCH] build docker only on tagging --- .github/workflows/buildReporting.yml | 169 ++++++++++++++------------- 1 file changed, 85 insertions(+), 84 deletions(-) diff --git a/.github/workflows/buildReporting.yml b/.github/workflows/buildReporting.yml index 0711befa..920bd23a 100644 --- a/.github/workflows/buildReporting.yml +++ b/.github/workflows/buildReporting.yml @@ -13,6 +13,59 @@ on: jobs: maven-build: + runs-on: ubuntu-latest + steps: + - + name: Get short SHA + uses: benjlevesque/short-sha@v1.2 + id: short-sha + - + name: Store short SHA as environment variable + run: echo $SHA + env: + SHA: ${{ steps.short-sha.outputs.sha }} + - + name: Checkout repository + uses: actions/checkout@v2 + - + name: Set up JDK 8 + uses: actions/setup-java@v2 + with: + java-version: '8' + distribution: 'adopt' + - + 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 -e -P let_reporting -Dsebserver-version="${{ env.SHA }}" + env: + sebserver-version: ${{ env.SHA }} + - + name: Reporting + uses: codecov/codecov-action@v1 + with: + flags: unittests + name: SEB Server Build + fail_ci_if_error: false + verbose: false + - + name: Simplify package name + run: mv target/seb-server-${{ env.SHA }}.jar target/seb-server.jar + - + uses: actions/upload-artifact@v2 + with: + name: Package + path: target/seb-server.jar + + docker-build: + needs: maven-build + # Run only on tagging + if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') runs-on: ubuntu-latest steps: - @@ -23,78 +76,26 @@ jobs: run: | echo $TAG_NAME echo ${{ env.TAG_NAME }} -# - -# name: Get short SHA -# uses: benjlevesque/short-sha@v1.2 -# id: short-sha -# - -# name: Store short SHA as environment variable -# run: echo $SHA -# env: -# SHA: ${{ steps.short-sha.outputs.sha }} -# - -# name: Checkout repository -# uses: actions/checkout@v2 -# - -# name: Set up JDK 8 -# uses: actions/setup-java@v2 -# with: -# java-version: '8' -# distribution: 'adopt' -# - -# 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 -e -P let_reporting -Dsebserver-version="${{ env.SHA }}" -# env: -# sebserver-version: ${{ env.SHA }} -# - -# name: Reporting -# uses: codecov/codecov-action@v1 -# with: -# flags: unittests -# name: SEB Server Build -# fail_ci_if_error: false -# verbose: false -# - -# name: Simplify package name -# run: mv target/seb-server-${{ env.SHA }}.jar target/seb-server.jar -# - -# uses: actions/upload-artifact@v2 -# with: -# name: Package -# path: target/seb-server.jar -# -# docker-build: -# needs: maven-build -# -# runs-on: ubuntu-latest -# steps: -# - -# 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: Checkout repository -# uses: actions/checkout@v2 -# - -# name: Download a single artifact -# uses: actions/download-artifact@v2 -# with: -# name: Package + - + 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: Checkout repository + uses: actions/checkout@v2 + - + name: Download a single artifact + uses: actions/download-artifact@v2 + with: + name: Package # - # name: Get short SHA # uses: benjlevesque/short-sha@v1.2 @@ -104,15 +105,15 @@ jobs: # run: echo $SHA # env: # SHA: ${{ steps.short-sha.outputs.sha }} -# - -# name: Build and push -# id: docker_build -# uses: docker/build-push-action@v2 -# with: -# context: . -# file: ./docker/Dockerfile -# push: true -# tags: | -# anhefti/seb-server:latest -# anhefti/seb-server:${{ env.SHA }} -# + - + name: Build and push + id: docker_build + uses: docker/build-push-action@v2 + with: + context: . + file: ./docker/Dockerfile + push: true + tags: | + anhefti/seb-server:latest + anhefti/seb-server:${{ env.TAG_NAME }} +