summary refs log tree commit diff
path: root/.github/workflows/release-artifacts.yml
diff options
context:
space:
mode:
authorRichard van der Hoff <1389908+richvdh@users.noreply.github.com>2021-07-13 11:50:14 +0100
committerGitHub <noreply@github.com>2021-07-13 11:50:14 +0100
commit2d8b60e0f23ac43546d666520a3d43d867a57526 (patch)
treeedd52413edb95eeb7b3e9fe0682d2898a12d1c89 /.github/workflows/release-artifacts.yml
parentBuild the python release artifacts in GHA too (diff)
downloadsynapse-2d8b60e0f23ac43546d666520a3d43d867a57526.tar.xz
Github Actions workflow to attach release artifacts to release (#10379)
Diffstat (limited to '.github/workflows/release-artifacts.yml')
-rw-r--r--.github/workflows/release-artifacts.yml28
1 files changed, 27 insertions, 1 deletions
diff --git a/.github/workflows/release-artifacts.yml b/.github/workflows/release-artifacts.yml
index 9d1fb89834..f292d703ed 100644
--- a/.github/workflows/release-artifacts.yml
+++ b/.github/workflows/release-artifacts.yml
@@ -13,7 +13,7 @@ on:
     tags: ["v*"]
 
 permissions:
-  contents: read
+  contents: write
 
 jobs:
   # first get the list of distros to build for.
@@ -62,3 +62,29 @@ jobs:
         with:
           name: python-dist
           path: dist/*
+
+  # if it's a tag, create a release and attach the artifacts to it
+  attach-assets:
+    name: "Attach assets to release"
+    if: startsWith(github.ref, 'refs/tags/')
+    needs:
+      - build-debs
+      - build-sdist
+    runs-on: ubuntu-latest
+    steps:
+      - name: Download all workflow run artifacts
+        uses: actions/download-artifact@v2
+      - name: Build a tarball for the debs
+        run: tar -cvJf debs.tar.xz debs
+      - name: Attach to release
+        uses: softprops/action-gh-release@a929a66f232c1b11af63782948aa2210f981808a  # PR#109
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+        with:
+          files: |
+            python-dist/*
+            debs.tar.xz
+          # if it's not already published, keep the release as a draft.
+          draft: true
+          # mark it as a prerelease if the tag contains 'rc'.
+          prerelease: ${{ contains(github.ref, 'rc') }}