From 4bd5a774f19829c01b79fbca836a20cd13618601 Mon Sep 17 00:00:00 2001
From: Roy Crihfield <roy@manteia.ltd>
Date: Thu, 21 Sep 2023 15:25:52 +0800
Subject: [PATCH] Make CI publish workflow manual only

---
 .github/workflows/on-pr-publish.yaml | 52 ----------------------------
 .github/workflows/publish.yaml       | 28 +++++++++++++++
 2 files changed, 28 insertions(+), 52 deletions(-)
 delete mode 100644 .github/workflows/on-pr-publish.yaml
 create mode 100644 .github/workflows/publish.yaml

diff --git a/.github/workflows/on-pr-publish.yaml b/.github/workflows/on-pr-publish.yaml
deleted file mode 100644
index ef72b7ff..00000000
--- a/.github/workflows/on-pr-publish.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-name: Test, Build, and/or Publish
-on:
-  release:
-    types: [published]
-  pull_request:
-
-jobs:
-  pre_job:
-    # continue-on-error: true # Uncomment once integration is finished
-    runs-on: ubuntu-latest
-    # Map a step output to a job output
-    outputs:
-      should_skip: ${{ steps.skip_check.outputs.should_skip }}
-    steps:
-      - id: skip_check
-        uses: fkirc/skip-duplicate-actions@v4
-        with:
-          # All of these options are optional, so you can remove them if you are happy with the defaults
-          concurrent_skipping: "never"
-          skip_after_successful_duplicate: "true"
-          do_not_skip: '["workflow_dispatch", "schedule"]'
-  run-tests:
-    uses: ./.github/workflows/tests.yaml
-    if: false                   # see tests.yaml
-    # if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
-    needs: pre_job
-  build:
-    name: Run docker build
-    runs-on: ubuntu-latest
-    needs: run-tests
-    if: |
-      always() &&
-      (needs.run-tests.result == 'success' || needs.run-tests.result == 'skipped') &&
-      github.event_name == 'release'
-    steps:
-      - uses: actions/checkout@v3
-      - id: vars
-        name: Output SHA and version tag
-        run: |
-          echo sha=$(echo ${GITHUB_SHA:0:7}) >> "$GITHUB_OUTPUT"
-          echo tag=$(echo ${GITHUB_REF#refs/tags/}) >> "$GITHUB_OUTPUT"
-      - name: Build and tag Docker image
-        run: |
-          docker build . \
-          -t cerc-io/ipld-eth-server \
-          -t git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.sha}} \
-          -t git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.tag}}
-      - name: Push Docker tags
-        run: |
-          echo ${{ secrets.GITEA_PUBLISH_TOKEN }} | docker login https://git.vdb.to -u cerccicd --password-stdin
-          docker push git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.sha}}
-          docker push git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.tag}}
diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml
new file mode 100644
index 00000000..e7edee34
--- /dev/null
+++ b/.github/workflows/publish.yaml
@@ -0,0 +1,28 @@
+name: Publish Docker image
+on:
+  release:
+    types: [published, edited]
+jobs:
+  build:
+    name: Build and publish image
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - id: vars
+        name: Output SHA and version tag
+        run: |
+          echo "sha=${GITHUB_SHA:0:7}" >> $GITHUB_OUTPUT
+          echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
+      - name: Build and tag Docker image
+        env:
+          GIT_VDBTO_TOKEN: ${{ secrets.CICD_REPO_TOKEN }}
+        run: |
+          docker build . \
+            --build-arg GIT_VDBTO_TOKEN \
+            -t git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.sha}} \
+            -t git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.tag}}
+      - name: Push Docker tags
+        run: |
+          echo ${{ secrets.GITEA_PUBLISH_TOKEN }} | docker login https://git.vdb.to -u cerccicd --password-stdin
+          docker push git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.sha}}
+          docker push git.vdb.to/cerc-io/ipld-eth-server/ipld-eth-server:${{steps.vars.outputs.tag}}