Skip to content

Publish

Publish #743

Workflow file for this run

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@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.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@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
with:
package_json_file: doc/package.json
run_install: true
- run: pnpm build --base=/api
- uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
- uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0
with:
path: doc/dist
- uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
id: deployment