From 12df22882e410315bc55d9a83ea329cfc616c2c2 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 15:11:11 -0400 Subject: [PATCH 01/19] Create docker-publish.yml --- .github/workflows/docker-publish.yml | 62 ++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 .github/workflows/docker-publish.yml diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml new file mode 100644 index 0000000000..a82ee9c6e3 --- /dev/null +++ b/.github/workflows/docker-publish.yml @@ -0,0 +1,62 @@ +name: Docker + +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +on: + schedule: + - cron: '19 17 * * *' + push: + branches: [ main ] + # Publish semver tags as releases. + tags: [ 'v*.*.*' ] + pull_request: + branches: [ main ] + +env: + # Use docker.io for Docker Hub if empty + REGISTRY: docker.io + # github.repository as / + IMAGE_NAME: ${{ github.repository }} + + +jobs: + build: + + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Login against a Docker registry except on PR + # https://github.com/docker/login-action + - name: Log into dockerhub + if: github.event_name != 'pull_request' + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_ACCESS_TOKEN }} + + # Extract metadata (tags, labels) for Docker + # https://github.com/docker/metadata-action + - name: Extract Docker metadata + id: meta + uses: docker/metadata-action@v3 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + + # Build and push Docker image with Buildx (don't push on PR) + # https://github.com/docker/build-push-action + - name: Build and push Docker image + uses: docker/build-push-action@v2 + with: + context: parse/. + push: ${{ github.event_name != 'pull_request' }} + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} From 2f63a68ccbbf597adf14c10c653e559b6ead5754 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 15:28:07 -0400 Subject: [PATCH 02/19] update --- .github/workflows/docker-publish.yml | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index a82ee9c6e3..39f5820106 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -1,25 +1,17 @@ name: Docker -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. - on: schedule: - cron: '19 17 * * *' push: - branches: [ main ] - # Publish semver tags as releases. - tags: [ 'v*.*.*' ] + branches: [ master ] + tags: [ '*.*.*' ] pull_request: - branches: [ main ] + branches: [ master ] env: - # Use docker.io for Docker Hub if empty REGISTRY: docker.io - # github.repository as / - IMAGE_NAME: ${{ github.repository }} + IMAGE_NAME: ${{ github.repository }} #parseplatform/parse-dashboard jobs: @@ -34,8 +26,6 @@ jobs: - name: Checkout repository uses: actions/checkout@v2 - # Login against a Docker registry except on PR - # https://github.com/docker/login-action - name: Log into dockerhub if: github.event_name != 'pull_request' uses: docker/login-action@v1 @@ -43,16 +33,12 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_ACCESS_TOKEN }} - # Extract metadata (tags, labels) for Docker - # https://github.com/docker/metadata-action - name: Extract Docker metadata id: meta uses: docker/metadata-action@v3 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - # Build and push Docker image with Buildx (don't push on PR) - # https://github.com/docker/build-push-action - name: Build and push Docker image uses: docker/build-push-action@v2 with: From e25845f02ce7fd29cf437acf87b995f4f9581b53 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 15:29:28 -0400 Subject: [PATCH 03/19] update --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 39f5820106..f4e6ec4175 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -42,7 +42,7 @@ jobs: - name: Build and push Docker image uses: docker/build-push-action@v2 with: - context: parse/. + context: . push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From d37f6cd5f3abd63dc068fa9a09bc8f8a8b67df09 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 15:35:24 -0400 Subject: [PATCH 04/19] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c03c791652..902adcfb92 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ## New Features ## Improvements +- CI now pushes docker images to Docker Hub (Corey Baker) [#1780](https://github.com/parse-community/parse-dashboard/pull/1780) - Add CI check to add changelog entry (Manuel Trezza) [#1764](https://github.com/parse-community/parse-dashboard/pull/1764) - Refactor: uniform issue templates across repos (Manuel Trezza) [#1767](https://github.com/parse-community/parse-dashboard/pull/1767) - fix: date cell value not selected on double clicks (fn-faisal) [#1730](https://github.com/parse-community/parse-dashboard/pull/1730) From f8fd2bbe6905164f3e71604c31f9ea66cb8d7862 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 15:40:00 -0400 Subject: [PATCH 05/19] change linux version --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index f4e6ec4175..5a7d0521b6 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -17,7 +17,7 @@ env: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-18.04 permissions: contents: read packages: write From a23d60d34e8ebfa8b5ce8be9d21958a7b35f3743 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 16:33:55 -0400 Subject: [PATCH 06/19] update access token --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 5a7d0521b6..4daf4680b3 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -31,7 +31,7 @@ jobs: uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_ACCESS_TOKEN }} + password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Extract Docker metadata id: meta From c26179991905bc2d3e03f637fbfc657d7bc42073 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 16:56:11 -0400 Subject: [PATCH 07/19] add correct tags --- .github/workflows/docker-publish.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 4daf4680b3..d0bddf6618 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -38,6 +38,10 @@ jobs: uses: docker/metadata-action@v3 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + type=ref,event=branch + type=ref,event=pr + type=semver,pattern={{version}} - name: Build and push Docker image uses: docker/build-push-action@v2 From 78129382c056fcf8add15d0e8a9548c2f994ce9d Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 17:15:02 -0400 Subject: [PATCH 08/19] add latest tag --- .github/workflows/docker-publish.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index d0bddf6618..727815ce1d 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -38,10 +38,8 @@ jobs: uses: docker/metadata-action@v3 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - tags: | - type=ref,event=branch - type=ref,event=pr - type=semver,pattern={{version}} + flavor: | + latest=true - name: Build and push Docker image uses: docker/build-push-action@v2 From 9f0188f5ef6ad63905b46758a95437a04f00ce07 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 17:40:01 -0400 Subject: [PATCH 09/19] switch image_name --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 727815ce1d..a6bbe6558a 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -11,7 +11,7 @@ on: env: REGISTRY: docker.io - IMAGE_NAME: ${{ github.repository }} #parseplatform/parse-dashboard + IMAGE_NAME: parseplatform/parse-dashboard jobs: From 44440ccff9fb86ae74289d33338898f89025f958 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 17:48:48 -0400 Subject: [PATCH 10/19] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 902adcfb92..b129ab6d77 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ ## New Features ## Improvements -- CI now pushes docker images to Docker Hub (Corey Baker) [#1780](https://github.com/parse-community/parse-dashboard/pull/1780) +- CI now pushes docker images to Docker Hub (Corey Baker) [#1781](https://github.com/parse-community/parse-dashboard/pull/1781) - Add CI check to add changelog entry (Manuel Trezza) [#1764](https://github.com/parse-community/parse-dashboard/pull/1764) - Refactor: uniform issue templates across repos (Manuel Trezza) [#1767](https://github.com/parse-community/parse-dashboard/pull/1767) - fix: date cell value not selected on double clicks (fn-faisal) [#1730](https://github.com/parse-community/parse-dashboard/pull/1730) From cb9eea260daef44c8ded62cf9217cdcd02f00d60 Mon Sep 17 00:00:00 2001 From: Corey Date: Sat, 4 Sep 2021 17:54:45 -0400 Subject: [PATCH 11/19] nit --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index a6bbe6558a..3ba7b60b22 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -26,7 +26,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v2 - - name: Log into dockerhub + - name: Log into Docker Hub if: github.event_name != 'pull_request' uses: docker/login-action@v1 with: From 2f004c1e3caaa3368dae9594e69fdf0239470925 Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 07:05:45 -0400 Subject: [PATCH 12/19] add multi-platform --- .github/workflows/docker-publish.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 3ba7b60b22..a313181b21 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -26,6 +26,13 @@ jobs: - name: Checkout repository uses: actions/checkout@v2 + - name: Set up QEMU + id: qemu + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - name: Log into Docker Hub if: github.event_name != 'pull_request' uses: docker/login-action@v1 @@ -45,6 +52,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . + platforms: linux/amd64, linux/arm/v6, linux/s390x, linux/ppc64le, linux/arm/v7, linux/arm64/v8 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From 7ce3898bf085587331b639bdbd44d851dfbbe5c9 Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 07:33:44 -0400 Subject: [PATCH 13/19] reduce platforms --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index a313181b21..0d887d400f 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -52,7 +52,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . - platforms: linux/amd64, linux/arm/v6, linux/s390x, linux/ppc64le, linux/arm/v7, linux/arm64/v8 + platforms: linux/amd64, linux/arm/v6, linux/arm/v7, linux/arm64/v8 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From 190258b3426b3d2b239628b68726f978d141a241 Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 07:57:31 -0400 Subject: [PATCH 14/19] remove arm7 --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 0d887d400f..3d68e0b78e 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -52,7 +52,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . - platforms: linux/amd64, linux/arm/v6, linux/arm/v7, linux/arm64/v8 + platforms: linux/amd64, linux/arm/v6, linux/arm64/v8 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From 46d2f4314e84f801c0a4df6646d4720eded46697 Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 08:29:06 -0400 Subject: [PATCH 15/19] remove arm64 --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 3d68e0b78e..967b2df018 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -52,7 +52,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . - platforms: linux/amd64, linux/arm/v6, linux/arm64/v8 + platforms: linux/amd64, linux/arm/v6 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From a6a1f1c8a9e3bfa46079fe0ebcbdfbe578c7b2bc Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 08:43:18 -0400 Subject: [PATCH 16/19] only build on Intel --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 967b2df018..528ea985f9 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -52,7 +52,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . - platforms: linux/amd64, linux/arm/v6 + platforms: linux/amd64 push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From 3051a77726a743c9dbbe4136c1a2b8fe9de15d42 Mon Sep 17 00:00:00 2001 From: Corey Date: Sun, 5 Sep 2021 13:04:52 -0400 Subject: [PATCH 17/19] Nit --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 528ea985f9..06b27a74b3 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -1,4 +1,4 @@ -name: Docker +name: docker on: schedule: From 18cc3840ddce3f087d2d709076977f2fd6c3d227 Mon Sep 17 00:00:00 2001 From: Corey Date: Mon, 6 Sep 2021 21:15:47 -0400 Subject: [PATCH 18/19] Update docker-publish.yml --- .github/workflows/docker-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 06b27a74b3..af51bb9cd8 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -2,7 +2,7 @@ name: docker on: schedule: - - cron: '19 17 * * *' + - cron: '19 17 * * *' # Nightly builds capture upstream updates to dependency images such as node. push: branches: [ master ] tags: [ '*.*.*' ] From aa5978bb744bb61c2be5267029d59b2ab9714682 Mon Sep 17 00:00:00 2001 From: Corey Date: Tue, 7 Sep 2021 09:40:24 -0400 Subject: [PATCH 19/19] allow latest tag to be set automatically --- .github/workflows/docker-publish.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index af51bb9cd8..a16232f79e 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -45,8 +45,6 @@ jobs: uses: docker/metadata-action@v3 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - flavor: | - latest=true - name: Build and push Docker image uses: docker/build-push-action@v2