From ddbc4ed6ba0b0b4d4dc5194450a578ca6def8823 Mon Sep 17 00:00:00 2001 From: lulu12329 Date: Mon, 26 Feb 2024 20:54:56 +0100 Subject: [PATCH 1/3] cleanup: remove comments --- .github/workflows/docker-test.yml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/.github/workflows/docker-test.yml b/.github/workflows/docker-test.yml index 7483ec0..8aed2b7 100644 --- a/.github/workflows/docker-test.yml +++ b/.github/workflows/docker-test.yml @@ -21,20 +21,3 @@ jobs: run: docker build --pull --rm -f "dockerfiles/Dockerfile.test" --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" . - name: Run tests run: docker run bingusboingus npm run test - # - name: Log in to registry - # run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin - # - name: Push image - # run: | - # IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME - - # IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') - - # VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') - - # [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') - - # [ "$VERSION" == "master" ] && VERSION=latest - # echo IMAGE_ID=$IMAGE_ID - # echo VERSION=$VERSION-test - # docker tag $IMAGE_NAME $IMAGE_ID:$VERSION-test - # docker push $IMAGE_ID:$VERSION-test From 53def06876480e1faf143ce0b0217978e477ede4 Mon Sep 17 00:00:00 2001 From: lulu12329 Date: Mon, 26 Feb 2024 21:17:06 +0100 Subject: [PATCH 2/3] feat: add test workflow --- .github/workflows/deploy-test.yml | 62 +++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 .github/workflows/deploy-test.yml diff --git a/.github/workflows/deploy-test.yml b/.github/workflows/deploy-test.yml new file mode 100644 index 0000000..d5981e0 --- /dev/null +++ b/.github/workflows/deploy-test.yml @@ -0,0 +1,62 @@ +name: Test Workflow + +on: + push: + branches: ['deploy-workflow'] + +env: + IMAGE_NAME: bingusboingus + +jobs: + build: + runs-on: ubuntu-latest + permissions: + packages: write + contents: read + + steps: + - uses: actions/checkout@v3 + - name: Build image + run: docker build --pull --rm -f "dockerfiles/Dockerfile.prod" --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" . + - name: Log in to registry + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin + - name: Push image + run: | + IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME + + IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') + + VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') + + [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') + + echo IMAGE_ID=$IMAGE_ID + echo VERSION=$VERSION + docker tag $IMAGE_NAME $IMAGE_ID:$VERSION + docker push $IMAGE_ID:$VERSION + + if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then + docker tag $IMAGE_ID:$VERSION $IMAGE_ID:latest + docker push $IMAGE_ID:latest + fi + deploy: + needs: build + runs-on: ubuntu-latest + steps: + - name: executing remote ssh commands using password + uses: appleboy/ssh-action@v1.0.3 + with: + host: ${{ secrets.SERVER_HOST }} + username: ${{ secrets.SERVER_USERNAME }} + key: ${{ secrets.SERVER_KEY }} + passphrase: ${{ secrets.SERVER_PASSPHRASE }} + script_stop: true + script: | + cd bingusboingus + # docker compose pull + # docker compose up -d + # build repoUrl + # change all uppercase characters to lowercase + # strip git ref prefix from version + # strip v prefix from tag name + # zse Docker:latest tag convention From 23dea1850517da9702229e6f5feaba4bcbb80a06 Mon Sep 17 00:00:00 2001 From: lulu12329 Date: Mon, 26 Feb 2024 21:42:43 +0100 Subject: [PATCH 3/3] ops: fix release pipeline --- .github/workflows/deploy-test.yml | 62 ------------------- .github/workflows/deploy.yml | 53 +++++++++++++--- .../workflows/{docker.yml => docker-dev.yml} | 7 --- 3 files changed, 46 insertions(+), 76 deletions(-) delete mode 100644 .github/workflows/deploy-test.yml rename .github/workflows/{docker.yml => docker-dev.yml} (85%) diff --git a/.github/workflows/deploy-test.yml b/.github/workflows/deploy-test.yml deleted file mode 100644 index d5981e0..0000000 --- a/.github/workflows/deploy-test.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: Test Workflow - -on: - push: - branches: ['deploy-workflow'] - -env: - IMAGE_NAME: bingusboingus - -jobs: - build: - runs-on: ubuntu-latest - permissions: - packages: write - contents: read - - steps: - - uses: actions/checkout@v3 - - name: Build image - run: docker build --pull --rm -f "dockerfiles/Dockerfile.prod" --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" . - - name: Log in to registry - run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin - - name: Push image - run: | - IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME - - IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') - - VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') - - [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') - - echo IMAGE_ID=$IMAGE_ID - echo VERSION=$VERSION - docker tag $IMAGE_NAME $IMAGE_ID:$VERSION - docker push $IMAGE_ID:$VERSION - - if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then - docker tag $IMAGE_ID:$VERSION $IMAGE_ID:latest - docker push $IMAGE_ID:latest - fi - deploy: - needs: build - runs-on: ubuntu-latest - steps: - - name: executing remote ssh commands using password - uses: appleboy/ssh-action@v1.0.3 - with: - host: ${{ secrets.SERVER_HOST }} - username: ${{ secrets.SERVER_USERNAME }} - key: ${{ secrets.SERVER_KEY }} - passphrase: ${{ secrets.SERVER_PASSPHRASE }} - script_stop: true - script: | - cd bingusboingus - # docker compose pull - # docker compose up -d - # build repoUrl - # change all uppercase characters to lowercase - # strip git ref prefix from version - # strip v prefix from tag name - # zse Docker:latest tag convention diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5fc281b..52f4d62 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,14 +1,53 @@ name: Deploy on: - workflow_run: - workflows: [Docker Image CI] - types: [completed] - tags: - - 'v[0-9]+.[0-9]+.[0-9]+' + release: + types: edited # change later to published + +env: + IMAGE_NAME: bingusboingus jobs: + build: + runs-on: ubuntu-latest + permissions: + packages: write + contents: read + + steps: + - uses: actions/checkout@v3 + - name: Build image + run: docker build --pull --rm -f "dockerfiles/Dockerfile.prod" --tag $IMAGE_NAME --label "runnumber=${GITHUB_RUN_ID}" . + - name: Log in to registry + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin + - name: Push image + run: | + IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME + + IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]') + + VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') + + [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') + + echo IMAGE_ID=$IMAGE_ID + echo VERSION=$VERSION + docker tag $IMAGE_NAME $IMAGE_ID:$VERSION + docker push $IMAGE_ID:$VERSION + + if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then + docker tag $IMAGE_ID:$VERSION $IMAGE_ID:latest + docker push $IMAGE_ID:latest + fi + + # build repoUrl + # change all uppercase characters to lowercase + # strip git ref prefix from version + # strip v prefix from tag name + # zse Docker:latest tag convention + deploy: + needs: build runs-on: ubuntu-latest steps: - name: executing remote ssh commands using password @@ -24,5 +63,5 @@ jobs: docker compose pull docker compose up -d -###ssh sachen -# https://github.com/appleboy/ssh-action + ###ssh sachen + # https://github.com/appleboy/ssh-action diff --git a/.github/workflows/docker.yml b/.github/workflows/docker-dev.yml similarity index 85% rename from .github/workflows/docker.yml rename to .github/workflows/docker-dev.yml index 5b82966..a44b46e 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker-dev.yml @@ -3,8 +3,6 @@ name: Docker Image CI on: push: branches: ['dev'] - tags: - - 'v[0-9]+.[0-9]+.[0-9]+' env: IMAGE_NAME: bingusboingus @@ -37,11 +35,6 @@ jobs: docker tag $IMAGE_NAME $IMAGE_ID:$VERSION docker push $IMAGE_ID:$VERSION - if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then - docker tag $IMAGE_ID:$VERSION $IMAGE_ID:latest - docker push $IMAGE_ID:latest - fi - # build repoUrl # change all uppercase characters to lowercase # strip git ref prefix from version