-
Notifications
You must be signed in to change notification settings - Fork 0
83 lines (75 loc) · 2.66 KB
/
release.yaml
File metadata and controls
83 lines (75 loc) · 2.66 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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
name: release
on:
push:
tags:
- 'v*'
permissions:
contents: read
env:
# 7 GiB by default on GitHub, setting to 6 GiB
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
NODE_OPTIONS: --max-old-space-size=6144
jobs:
context:
permissions:
checks: read
contents: read
pull-requests: read
statuses: read
uses: escapace/workflows/.github/workflows/context.yaml@trunk
continuous-integration:
if: needs.context.outputs.environment == 'production' || needs.context.outputs.environment == 'staging'
needs:
- context
permissions:
contents: read
packages: read
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
uses: escapace/workflows/.github/workflows/ci-typescript.yaml@trunk
with:
enable-artifact-upload: true
enable-codecov: ${{ !github.event.repository.private }}
enable-github-pages: ${{ fromJSON(needs.context.outputs.github-pages) }}
github-pages-path: ${{ needs.context.outputs.github-pages-path }}
node-version: ${{ needs.context.outputs.node-version }}
pnpm-version: ${{ needs.context.outputs.pnpm-version }}
ref: ${{ needs.context.outputs.ref }}
version: ${{ needs.context.outputs.version }}
release-typescript:
if: needs.context.outputs.environment == 'production' || needs.context.outputs.environment == 'staging'
needs:
- context
- continuous-integration
permissions:
id-token: write
packages: write
secrets:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
uses: escapace/workflows/.github/workflows/release-typescript.yaml@trunk
with:
node-version: ${{ needs.context.outputs.node-version }}
release-github:
if: needs.context.outputs.environment == 'production' || needs.context.outputs.environment == 'staging'
needs:
- context
- continuous-integration
- release-typescript
permissions:
contents: write
uses: escapace/workflows/.github/workflows/release-github.yaml@trunk
with:
changelog: ${{ needs.context.outputs.changelog }}
prerelease: ${{ fromJSON(needs.context.outputs.prerelease) }}
version: ${{ needs.context.outputs.version }}
release-github-pages:
if: fromJSON(needs.context.outputs.github-pages) && (needs.context.outputs.environment == 'production' || needs.context.outputs.environment == 'staging')
needs:
- context
- continuous-integration
- release-typescript
permissions:
contents: read
id-token: write
pages: write
uses: escapace/workflows/.github/workflows/release-github-pages.yaml@trunk