From b6b26d057ed9de72ca6861fc287ca75e30a82ce8 Mon Sep 17 00:00:00 2001 From: Sahil Malhotra Date: Thu, 5 Oct 2023 09:40:47 -0400 Subject: [PATCH] docker ci-cd updates --- .github/workflows/docker-cd-dev.yml | 41 +++++++++++++++++++++++++++++ .github/workflows/docker-cd.yml | 25 ++++++++++++++---- .github/workflows/docker-ci.yml | 8 +++--- .github/workflows/docker-tag-cd.yml | 41 +++++++++++++++++++++++++++++ 4 files changed, 107 insertions(+), 8 deletions(-) create mode 100644 .github/workflows/docker-cd-dev.yml create mode 100644 .github/workflows/docker-tag-cd.yml diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml new file mode 100644 index 00000000..ba3d376f --- /dev/null +++ b/.github/workflows/docker-cd-dev.yml @@ -0,0 +1,41 @@ +name: Docker Development Image CD + +on: + push: + branches: [ dev ] + workflow_dispatch: + +jobs: + docker-cd: + runs-on: ubuntu-latest + steps: + + - name: Checkout Repository + uses: actions/checkout@v3 + with: + submodules: true + + - name: Setup Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Docker meta data + id: docker-meta-data + uses: docker/metadata-action@v4 + with: + images: codexrems/request-generator + flavor: latest=false + + - name: Log in to Docker Hub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Build and push Server Docker image + uses: docker/build-push-action@v5 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: true + tags: codexrems/request-generator:experimental + labels: ${{ steps.docker-meta-data.outputs.labels }} \ No newline at end of file diff --git a/.github/workflows/docker-cd.yml b/.github/workflows/docker-cd.yml index a211087a..bbf000e8 100644 --- a/.github/workflows/docker-cd.yml +++ b/.github/workflows/docker-cd.yml @@ -2,16 +2,29 @@ name: Docker Image CD on: push: - branches: [ master ] + branches: [ main ] workflow_dispatch: jobs: docker-cd: runs-on: ubuntu-latest steps: + - name: Checkout Repository - uses: actions/checkout@v2 - + uses: actions/checkout@v3 + with: + submodules: true + + - name: Setup Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Docker meta data + id: docker-meta-data + uses: docker/metadata-action@v4 + with: + images: codexrems/request-generator + flavor: latest=false + - name: Log in to Docker Hub uses: docker/login-action@v1 with: @@ -19,8 +32,10 @@ jobs: password: ${{ secrets.DOCKER_TOKEN }} - name: Build and push Server Docker image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v5 with: context: . + platforms: linux/amd64,linux/arm64 push: true - tags: codexrems/crd-request-generator:REMSvCurrent + tags: codexrems/request-generator:latest + labels: ${{ steps.docker-meta-data.outputs.labels }} \ No newline at end of file diff --git a/.github/workflows/docker-ci.yml b/.github/workflows/docker-ci.yml index f2ee2142..5edae1d3 100644 --- a/.github/workflows/docker-ci.yml +++ b/.github/workflows/docker-ci.yml @@ -2,7 +2,7 @@ name: Docker Image CI on: pull_request: - branches: [ master ] + branches: [ main, dev ] workflow_dispatch: @@ -12,7 +12,9 @@ jobs: steps: - name: Checkout Repository - uses: actions/checkout@v2 - + uses: actions/checkout@v3 + with: + submodules: true + - name: Test Server Docker image Builds run: docker build . \ No newline at end of file diff --git a/.github/workflows/docker-tag-cd.yml b/.github/workflows/docker-tag-cd.yml new file mode 100644 index 00000000..06fb18e9 --- /dev/null +++ b/.github/workflows/docker-tag-cd.yml @@ -0,0 +1,41 @@ +name: Docker Tagged Image CD +on: + workflow_dispatch: + push: + tags: + - '*' + +jobs: + docker: + runs-on: ubuntu-latest + steps: + + - name: Checkout Repository + uses: actions/checkout@v3 + with: + submodules: true + + - name: Setup Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Docker meta data + id: docker-meta-data + uses: docker/metadata-action@v4 + with: + images: codexrems/request-generator + flavor: latest=false + + - name: Log in to Docker Hub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Build and push + uses: docker/build-push-action@v5 + with: + context: . + push: true + platforms: linux/amd64,linux/arm64 + tags: ${{ steps.docker-meta-data.outputs.tags }} + labels: ${{ steps.docker-meta-data.outputs.labels }}