From db234dde95115a3081c4c6b90fff6fb25d25995e Mon Sep 17 00:00:00 2001 From: Artem Pelenitsyn Date: Fri, 6 Sep 2024 15:48:01 -0400 Subject: [PATCH] CI: cabal-head prerelease: move to a current GitHub Action for prereleases --- .github/workflows/validate.yml | 58 ++++++++-------------------------- 1 file changed, 13 insertions(+), 45 deletions(-) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 047ea46cf09..ae5e2c7a746 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -448,6 +448,8 @@ jobs: name: Create a GitHub prerelease with the binary artifacts runs-on: ubuntu-latest if: github.ref == 'refs/heads/master' + permissions: + contents: write # IMPORTANT! Any job added to the workflow should be added here too needs: [validate, validate-old-ghcs, build-alpine, dogfooding] @@ -456,32 +458,15 @@ jobs: # for now this is hardcoded. is there a better way? - uses: actions/download-artifact@v4 with: - name: cabal-Windows-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-Linux-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-Linux-static-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-macOS-aarch64 + pattern: cabal-* + path: binaries - name: Create GitHub prerelease - uses: marvinpinto/action-automatic-releases@v1.2.1 + uses: softprops/action-gh-release@v2 with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - automatic_release_tag: cabal-head + tag_name: cabal-head prerelease: true - title: cabal-head - files: | - cabal-head-Windows-x86_64.tar.gz - cabal-head-Linux-x86_64.tar.gz - cabal-head-Linux-static-x86_64.tar.gz - cabal-head-macOS-aarch64.tar.gz + files: binaries/cabal-* prerelease-lts: name: Create a GitHub LTS prerelease with the binary artifacts @@ -495,39 +480,22 @@ jobs: steps: - uses: actions/download-artifact@v4 with: - name: cabal-Windows-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-Linux-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-Linux-static-x86_64 - - - uses: actions/download-artifact@v4 - with: - name: cabal-macOS-x86_64 + pattern: cabal-* + path: binaries - run: | # bash-ism, but we forced bash above mv cabal-{,lts-}head-Windows-x86_64.tar.gz mv cabal-{,lts-}head-Linux-x86_64.tar.gz mv cabal-{,lts-}head-Linux-static-x86_64.tar.gz - mv cabal-{,lts-}head-macOS-x86_64.tar.gz + mv cabal-{,lts-}head-macOS-aarch64.tar.gz - name: Create GitHub prerelease - uses: marvinpinto/action-automatic-releases@v1.2.1 + uses: softprops/action-gh-release@v2 with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - automatic_release_tag: cabal-lts-head + tag_name: cabal-lts-head prerelease: true - title: cabal-lts-head - files: | - cabal-lts-head-Windows-x86_64.tar.gz - cabal-lts-head-Linux-x86_64.tar.gz - cabal-lts-head-Linux-static-x86_64.tar.gz - cabal-lts-head-macOS-x86_64.tar.gz + files: binaries/cabal-* # We use this job as a summary of the workflow # It will fail if any of the previous jobs does