Просмотр исходного кода

use docker/metadata-action in release-slackbot-proxy.yml workflow

Yuki Takei 4 лет назад
Родитель
Сommit
cf37d13bf9
1 измененных файлов с 17 добавлено и 12 удалено
  1. 17 12
      .github/workflows/release-slackbot-proxy.yml

+ 17 - 12
.github/workflows/release-slackbot-proxy.yml

@@ -13,14 +13,21 @@ jobs:
     steps:
     - uses: actions/checkout@v2
 
-    - name: Get version
+    - name: Setup semver
+      id: semver
       working-directory: ./packages/slackbot-proxy
       run: |
-        export RELEASE_VERSION=`npm run version --silent`
-        echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV
+        semver=`npm run version --silent`
+        echo "::set-output name=SEMVER::$semver"
 
-    - name: Set up Docker Buildx
-      uses: docker/setup-buildx-action@v1
+    - name: Docker meta
+      id: meta
+      uses: docker/metadata-action@v3
+      with:
+        images: weseek/growi-slackbot-proxy,ghcr.io/weseek/growi-slackbot-proxy,asia.gcr.io/${{ secrets.GCP_PRJ_ID_SLACKBOT_PROXY }}/growi-slackbot-proxy
+        tags: |
+          type=raw,value=latest
+          type=raw,value=${{ steps.semver.outputs.SEMVER }}
 
     - name: Login to docker.io registry
       run: |
@@ -44,6 +51,9 @@ jobs:
       run: |
         gcloud auth configure-docker --quiet
 
+    - name: Set up Docker Buildx
+      uses: docker/setup-buildx-action@v1
+
     - name: Build and push
       uses: docker/build-push-action@v2
       with:
@@ -51,13 +61,8 @@ jobs:
         file: ./packages/slackbot-proxy/docker/Dockerfile
         platforms: linux/amd64
         push: true
-        tags: |
-          weseek/growi-slackbot-proxy:latest
-          weseek/growi-slackbot-proxy:${{ env.RELEASE_VERSION }}
-          ghcr.io/weseek/growi-slackbot-proxy:latest
-          ghcr.io/weseek/growi-slackbot-proxy:${{ env.RELEASE_VERSION }}
-          asia.gcr.io/${{ secrets.GCP_PRJ_ID_SLACKBOT_PROXY }}/growi-slackbot-proxy:latest
-          asia.gcr.io/${{ secrets.GCP_PRJ_ID_SLACKBOT_PROXY }}/growi-slackbot-proxy:${{ env.RELEASE_VERSION }}
+        tags: ${{ steps.meta.outputs.tags }}
+
 
     - name: Update Docker Hub Description
       uses: peter-evans/dockerhub-description@v2