-
-
Notifications
You must be signed in to change notification settings - Fork 168
76 lines (72 loc) · 2.47 KB
/
publish.yml
File metadata and controls
76 lines (72 loc) · 2.47 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
name: Publish
on:
schedule:
- cron: '0 10 * * *'
workflow_dispatch:
permissions:
contents: write
id-token: write
pages: write
concurrency:
group: pages
cancel-in-progress: true
jobs:
publish-to-npm:
if: github.repository == 'lichess-org/api'
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./types
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 24
registry-url: 'https://registry.npmjs.org'
- run: |
npm install --global pnpm
pnpm install
- run: pnpm gen
- run: pnpm format
- name: Check for changes
id: check_changes
run: |
git status --porcelain
echo "changed_files=$(git status --porcelain)" >> "$GITHUB_OUTPUT"
- name: Publish to npm
if: steps.check_changes.outputs.changed_files != ''
run: |
git add .
npm version patch --no-git-tag-version
sed -i 's/version: .*/version: '"$(node -p "require('./package.json').version")"'/' ../doc/specs/lichess-api.yaml
npm publish --provenance
- uses: stefanzweifel/git-auto-commit-action@04702edda442b2e678b25b537cec683a1493fcb9 # v7.1.0
if: steps.check_changes.outputs.changed_files != ''
with:
commit_message: 'Update API version'
commit_author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
publish-to-github-pages:
if: github.repository == 'lichess-org/api'
needs: publish-to-npm
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
defaults:
run:
working-directory: doc
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: master
- uses: pnpm/action-setup@8912a9102ac27614460f54aedde9e1e7f9aec20d # v6.0.5
with:
package_json_file: doc/package.json
run_install: true
- run: pnpm build --base=/api
- uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0
- uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
with:
path: doc/dist
- uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0
id: deployment