-
Notifications
You must be signed in to change notification settings - Fork 0
101 lines (80 loc) · 2.53 KB
/
release-insiders.yml
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
name: Release Insiders
on:
pull_request:
branches:
- develop
types: [closed]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm install
- name: Use linter
run: npm run lint
- name: Build mytril
run: npm run build
prepublish:
runs-on: ubuntu-latest
needs: build
permissions:
contents: write
outputs:
version_release: ${{ steps.get_version_release.outputs.version_release }}
steps:
- uses: actions/checkout@v4
- name: New prerelease version
id: get_version_release
run: |
version=$(npm version prerelease --preid=insiders --no-git-tag-version)
echo "Generated version: $version"
echo "version_release=${version}" >> $GITHUB_OUTPUT
- name: Inspect the working tree
run: |
echo "Inspecting Git status and diff..."
git status
git diff
- name: Commit & Push version change
if: github.event_name == 'push'
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git branch --show-current
git commit -a -m "publish insiders release - ${{ steps.get_version_release.outputs.version_release }}"
git status
git push
publish:
runs-on: ubuntu-latest
needs: prepublish
env:
version_release: ${{ needs.prepublish.outputs.version_release }}
steps:
- uses: actions/checkout@v4
- name: Setup node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm install
- name: New prerelease version
run: npm version prerelease --preid=insiders --no-git-tag-version
- name: Authenticate to NPM
run: |
echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_AUTH_TOKEN }}" > ~/.npmrc
- name: Build
run: npm run build
- name: Verify files
run: npm pack --dry-run
- name: Inspect the working tree
run: echo "The current branch is ${{ env.version_release }}"
- name: Publish to NPM
run: |
echo "Publishing version ${{ env.version_release }}"
npm publish --tag insiders
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}