From b88f394201aac8ba0b6f8b00260589410cd49169 Mon Sep 17 00:00:00 2001 From: Paul Munteanu Date: Fri, 13 Aug 2021 00:25:26 +0300 Subject: Implement docker publishing for each project --- .github/workflows/docker-publish-api.yml | 47 ++++++++++++++++++++++++++++ .github/workflows/docker-publish-cdn.yml | 47 ++++++++++++++++++++++++++++ .github/workflows/docker-publish-gateway.yml | 47 ++++++++++++++++++++++++++++ 3 files changed, 141 insertions(+) create mode 100644 .github/workflows/docker-publish-api.yml create mode 100644 .github/workflows/docker-publish-cdn.yml create mode 100644 .github/workflows/docker-publish-gateway.yml (limited to '.github') diff --git a/.github/workflows/docker-publish-api.yml b/.github/workflows/docker-publish-api.yml new file mode 100644 index 00000000..70871e6a --- /dev/null +++ b/.github/workflows/docker-publish-api.yml @@ -0,0 +1,47 @@ +name: docker-publish-api + +on: + push: + paths: + - 'api/**' + +jobs: + docker-api: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Cache Docker layers + uses: actions/cache@v2 + with: + path: /tmp/.buildx-cache/api + key: ${{ runner.os }}-buildx-${{ github.sha }}-api + restore-keys: | + ${{ runner.os }}-buildx-api + - + 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: ./api + push: true + tags: ${{ secrets.DOCKERHUB_TAGS }} + cache-from: type=local,src=/tmp/.buildx-cache/api + cache-to: type=local,dest=/tmp/.buildx-cache-new/api + - + # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA + # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394 + name: Move cache fix + run: | + rm -rf /tmp/.buildx-cache/api + mv /tmp/.buildx-cache-new/api /tmp/.buildx-cache/api \ No newline at end of file diff --git a/.github/workflows/docker-publish-cdn.yml b/.github/workflows/docker-publish-cdn.yml new file mode 100644 index 00000000..ec83eaeb --- /dev/null +++ b/.github/workflows/docker-publish-cdn.yml @@ -0,0 +1,47 @@ +name: docker-publish-cdn + +on: + push: + paths: + - 'cdn/**' + +jobs: + docker-cdn: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Cache Docker layers + uses: actions/cache@v2 + with: + path: /tmp/.buildx-cache/cdn + key: ${{ runner.os }}-buildx-${{ github.sha }}-cdn + restore-keys: | + ${{ runner.os }}-buildx-cdn + - + 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: ./cdn + push: true + tags: ${{ secrets.DOCKERHUB_TAGS }} + cache-from: type=local,src=/tmp/.buildx-cache/cdn + cache-to: type=local,dest=/tmp/.buildx-cache-new/cdn + - + # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA + # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394 + name: Move cache fix + run: | + rm -rf /tmp/.buildx-cache/cdn + mv /tmp/.buildx-cache-new/cdn /tmp/.buildx-cache/cdn \ No newline at end of file diff --git a/.github/workflows/docker-publish-gateway.yml b/.github/workflows/docker-publish-gateway.yml new file mode 100644 index 00000000..0597b00d --- /dev/null +++ b/.github/workflows/docker-publish-gateway.yml @@ -0,0 +1,47 @@ +name: docker-publish-gw + +on: + push: + paths: + - 'gateway/**' + +jobs: + docker-gw: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Cache Docker layers + uses: actions/cache@v2 + with: + path: /tmp/.buildx-cache/gw + key: ${{ runner.os }}-buildx-${{ github.sha }}-gw + restore-keys: | + ${{ runner.os }}-buildx-gw + - + 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: ./gateway + push: true + tags: ${{ secrets.DOCKERHUB_TAGS }} + cache-from: type=local,src=/tmp/.buildx-cache/gw + cache-to: type=local,dest=/tmp/.buildx-cache-new/gw + - + # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA + # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394 + name: Move cache fix + run: | + rm -rf /tmp/.buildx-cache/gw + mv /tmp/.buildx-cache-new/gw /tmp/.buildx-cache/gw \ No newline at end of file -- cgit 1.5.1 From 3145868d43799d8e9c2960f824cdfc1290df7316 Mon Sep 17 00:00:00 2001 From: Paul Munteanu Date: Fri, 13 Aug 2021 00:30:34 +0300 Subject: Add tags for each image --- .github/workflows/docker-publish-api.yml | 2 +- .github/workflows/docker-publish-cdn.yml | 2 +- .github/workflows/docker-publish-gateway.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to '.github') diff --git a/.github/workflows/docker-publish-api.yml b/.github/workflows/docker-publish-api.yml index 70871e6a..5d64303f 100644 --- a/.github/workflows/docker-publish-api.yml +++ b/.github/workflows/docker-publish-api.yml @@ -35,7 +35,7 @@ jobs: with: context: ./api push: true - tags: ${{ secrets.DOCKERHUB_TAGS }} + tags: ${{ secrets.DOCKERHUB_TAGS_API }} cache-from: type=local,src=/tmp/.buildx-cache/api cache-to: type=local,dest=/tmp/.buildx-cache-new/api - diff --git a/.github/workflows/docker-publish-cdn.yml b/.github/workflows/docker-publish-cdn.yml index ec83eaeb..2350ce03 100644 --- a/.github/workflows/docker-publish-cdn.yml +++ b/.github/workflows/docker-publish-cdn.yml @@ -35,7 +35,7 @@ jobs: with: context: ./cdn push: true - tags: ${{ secrets.DOCKERHUB_TAGS }} + tags: ${{ secrets.DOCKERHUB_TAGS_CDN }} cache-from: type=local,src=/tmp/.buildx-cache/cdn cache-to: type=local,dest=/tmp/.buildx-cache-new/cdn - diff --git a/.github/workflows/docker-publish-gateway.yml b/.github/workflows/docker-publish-gateway.yml index 0597b00d..7a569197 100644 --- a/.github/workflows/docker-publish-gateway.yml +++ b/.github/workflows/docker-publish-gateway.yml @@ -35,7 +35,7 @@ jobs: with: context: ./gateway push: true - tags: ${{ secrets.DOCKERHUB_TAGS }} + tags: ${{ secrets.DOCKERHUB_TAGS_GW }} cache-from: type=local,src=/tmp/.buildx-cache/gw cache-to: type=local,dest=/tmp/.buildx-cache-new/gw - -- cgit 1.5.1 From 9378842f47251104571e233eb97e8c3931afc960 Mon Sep 17 00:00:00 2001 From: Paul Munteanu Date: Fri, 13 Aug 2021 00:47:19 +0300 Subject: [API/Docker] Fix cache keys --- .github/workflows/docker-publish-api.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to '.github') diff --git a/.github/workflows/docker-publish-api.yml b/.github/workflows/docker-publish-api.yml index 5d64303f..405faae4 100644 --- a/.github/workflows/docker-publish-api.yml +++ b/.github/workflows/docker-publish-api.yml @@ -20,9 +20,9 @@ jobs: uses: actions/cache@v2 with: path: /tmp/.buildx-cache/api - key: ${{ runner.os }}-buildx-${{ github.sha }}-api + key: ${{ runner.os }}-buildx-api-${{ github.sha }} restore-keys: | - ${{ runner.os }}-buildx-api + ${{ runner.os }}-buildx-api- - name: Login to DockerHub uses: docker/login-action@v1 -- cgit 1.5.1 From 6b130d0b2f7c04cc76ac6071cb53c1eb86ef4f4f Mon Sep 17 00:00:00 2001 From: Paul Munteanu Date: Fri, 13 Aug 2021 00:53:48 +0300 Subject: [Docker] Fix docker publish for cdn and gateway --- .github/workflows/docker-publish-cdn.yml | 4 ++-- .github/workflows/docker-publish-gateway.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to '.github') diff --git a/.github/workflows/docker-publish-cdn.yml b/.github/workflows/docker-publish-cdn.yml index 2350ce03..9b3f6a64 100644 --- a/.github/workflows/docker-publish-cdn.yml +++ b/.github/workflows/docker-publish-cdn.yml @@ -20,9 +20,9 @@ jobs: uses: actions/cache@v2 with: path: /tmp/.buildx-cache/cdn - key: ${{ runner.os }}-buildx-${{ github.sha }}-cdn + key: ${{ runner.os }}-buildx-cdn-${{ github.sha }} restore-keys: | - ${{ runner.os }}-buildx-cdn + ${{ runner.os }}-buildx-cdn- - name: Login to DockerHub uses: docker/login-action@v1 diff --git a/.github/workflows/docker-publish-gateway.yml b/.github/workflows/docker-publish-gateway.yml index 7a569197..eac1052b 100644 --- a/.github/workflows/docker-publish-gateway.yml +++ b/.github/workflows/docker-publish-gateway.yml @@ -20,9 +20,9 @@ jobs: uses: actions/cache@v2 with: path: /tmp/.buildx-cache/gw - key: ${{ runner.os }}-buildx-${{ github.sha }}-gw + key: ${{ runner.os }}-buildx-gw-${{ github.sha }} restore-keys: | - ${{ runner.os }}-buildx-gw + ${{ runner.os }}-buildx-gw- - name: Login to DockerHub uses: docker/login-action@v1 -- cgit 1.5.1