Repository navigation
53 lines (44 loc) · 1.72 KB
/
Copy pathdeploy-site.yml
File metadata and controls
53 lines (44 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
name: deploy-site
on:
push:
branches:
- dev
- production
workflow_dispatch:
concurrency:
group: deploy-site-${{ github.ref_name }}
cancel-in-progress: false
permissions:
contents: read
jobs:
deploy:
if: github.repository == 'anomalyco/opencode' && (github.ref_name == 'dev' || github.ref_name == 'production')
runs-on: blacksmith-4vcpu-ubuntu-2404
environment: ${{ github.ref_name }}
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- uses: ./.github/actions/setup-bun
# The workflow's own token, at build time only: script/github-snapshot.ts records the repo
# numbers and releases the site falls back to. The Worker never gets a GitHub token.
- name: Build
working-directory: services/site
run: bun script/build.ts --mode ${{ github.ref_name }}
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@e1253824e5c10ff9df46874f81ed3ec929e19cfd # v6.3.0
with:
role-to-assume: arn:aws:iam::604439173067:role/github/opencode-${{ github.ref_name }}
role-session-name: opencode-${{ github.run_id }}
aws-region: us-east-1
- name: Read deploy secrets
uses: aws-actions/aws-secretsmanager-get-secrets@2297f9a879480a9e3af9b293ed15c70caf8e1c88 # v3.0.2
with:
secret-ids: CLOUDFLARE_API_TOKEN,opencode/${{ github.ref_name }}/CLOUDFLARE_API_TOKEN
parse-json-secrets: false
- name: Deploy
working-directory: services/site
run: bunx cf deploy --prebuilt --mode ${{ github.ref_name }}