summaryrefslogtreecommitdiff
path: root/.github/workflows/promote_to_release.yml
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2024-09-12 21:06:59 +0100
committerGitHub <noreply@github.com>2024-09-12 22:06:59 +0200
commite2875aee74d8f41db9028cbfae0952bc9bf250e7 (patch)
treef3a68d03ce40f605196806cccc5048c52be3fcea /.github/workflows/promote_to_release.yml
parent18b89d948dcb849c4dc577478794c3d5fb23b597 (diff)
ci: Add action to cut LTS release (#25590)
Factored from https://github.com/denoland/deno/pull/25123. --------- Signed-off-by: David Sherret <dsherret@users.noreply.github.com> Co-authored-by: David Sherret <dsherret@gmail.com> Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
Diffstat (limited to '.github/workflows/promote_to_release.yml')
-rw-r--r--.github/workflows/promote_to_release.yml62
1 files changed, 62 insertions, 0 deletions
diff --git a/.github/workflows/promote_to_release.yml b/.github/workflows/promote_to_release.yml
new file mode 100644
index 000000000..07109acb6
--- /dev/null
+++ b/.github/workflows/promote_to_release.yml
@@ -0,0 +1,62 @@
+name: promote_to_release
+
+on:
+ workflow_dispatch:
+ inputs:
+ releaseKind:
+ description: 'Kind of release'
+ type: choice
+ options:
+ - rc
+ - lts
+ required: true
+ commitHash:
+ description: Commit to promote to release
+ required: true
+
+jobs:
+ promote-to-release:
+ name: Promote to Release
+ runs-on: macOS-latest
+ if: github.repository == 'denoland/deno'
+ steps:
+ - name: Clone repository
+ uses: actions/checkout@v4
+ with:
+ token: ${{ secrets.DENOBOT_PAT }}
+ submodules: recursive
+
+ - name: Authenticate with Google Cloud
+ uses: google-github-actions/auth@v1
+ with:
+ project_id: denoland
+ credentials_json: ${{ secrets.GCP_SA_KEY }}
+ export_environment_variables: true
+ create_credentials_file: true
+
+ - name: Setup gcloud
+ uses: google-github-actions/setup-gcloud@v1
+ with:
+ project_id: denoland
+
+ - name: Install deno
+ uses: denoland/setup-deno@v1
+ with:
+ deno-version: v1.x
+
+ - name: Install rust-codesign
+ run: |-
+ ./tools/install_prebuilt.js rcodesign
+ echo $GITHUB_WORKSPACE/third_party/prebuilt/mac >> $GITHUB_PATH
+
+ - name: Promote to Release
+ env:
+ APPLE_CODESIGN_KEY: '${{ secrets.APPLE_CODESIGN_KEY }}'
+ APPLE_CODESIGN_PASSWORD: '${{ secrets.APPLE_CODESIGN_PASSWORD }}'
+ run: |
+ deno run -A ./tools/release/promote_to_release.ts ${{github.event.inputs.releaseKind}} ${{github.event.inputs.commitHash}}
+
+ - name: Upload archives to dl.deno.land
+ run: |
+ gsutil -h "Cache-Control: public, max-age=3600" cp ./*.zip gs://dl.deno.land/release/$(cat release-${{github.event.inputs.commitHash}}-latest.txt)/
+ gsutil -h "Cache-Control: no-cache" cp release-${{github.event.inputs.commitHash}}-latest.txt gs://dl.deno.land/release-${{github.event.inputs.commitHash}}-latest.txt