-
-
Notifications
You must be signed in to change notification settings - Fork 2
131 lines (102 loc) · 2.97 KB
/
release-please.yml
File metadata and controls
131 lines (102 loc) · 2.97 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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
name: Release Please
on:
push:
branches:
- master
permissions:
contents: read
jobs:
release-please:
runs-on: ubuntu-latest
if: github.repository == 'poolifier/poolifier-web-worker'
permissions:
contents: write
pull-requests: write
outputs:
release_created: ${{ steps.release.outputs.release_created }}
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
token: ${{ secrets.WORKFLOW_TOKEN }}
config-file: .github/release-please/config.json
manifest-file: .github/release-please/manifest.json
build-release:
needs: release-please
runs-on: ubuntu-latest
if: needs.release-please.outputs.release_created
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Format Check
run: deno task format:check
- name: Lint
run: deno task lint
- name: Tests with Coverage
run: deno task test:coverage
- name: Bundle
run: deno task bundle
publish-jsr:
needs: build-release
runs-on: ubuntu-latest
permissions:
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Publish Release
if: ${{ contains(github.ref_name, '-') == false }}
run: deno publish
publish-npm:
needs: build-release
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: 24.x
registry-url: 'https://registry.npmjs.org'
- name: Bundle
run: deno task bundle
- name: Publish Release
if: ${{ contains(github.ref_name, '-') == false }}
run: cd dist && npm publish
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Publish Release Candidate
if: ${{ contains(github.ref_name, '-rc') == true }}
run: cd dist && npm publish --tag next
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Publish Beta Release
if: ${{ contains(github.ref_name, '-beta') == true }}
run: cd dist && npm publish --tag beta
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Publish Alpha Release
if: ${{ contains(github.ref_name, '-alpha') == true }}
run: cd dist && npm publish --tag alpha
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}