chore: add Vercel dependencies #16
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| on: | |
| push: | |
| branches: | |
| - "*" | |
| tags: | |
| - "v*.*.*" | |
| jobs: | |
| release: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| id-token: write | |
| contents: write | |
| deployments: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - run: corepack enable | |
| - uses: actions/setup-node@v4 | |
| with: | |
| cache: "yarn" | |
| cache-dependency-path: "yarn.lock" | |
| node-version-file: ".nvmrc" | |
| - if: github.ref_type == 'branch' | |
| run: | | |
| jq \ | |
| --arg build "$GITHUB_RUN_NUMBER" \ | |
| --arg commit "${GITHUB_SHA::8}" \ | |
| '.version = .version + "-dev." + $build + "+" + $commit' \ | |
| packages/cli/package.json > packages/cli/package.json.tmp | |
| mv packages/cli/package.json.tmp packages/cli/package.json | |
| - run: yarn install | |
| - name: Build and pack CLI | |
| run: | | |
| yarn workspace docflow build | |
| mkdir -p out | |
| cd packages/cli | |
| yarn pack --out ../../out/docflow-cli.tgz | |
| - id: extract-changelog | |
| uses: dahlia/submark@5a5ff0a58382fb812616a5801402f5aef00f90ce | |
| with: | |
| input-file: CHANGELOG.md | |
| heading-level: 2 | |
| heading-title-text: version ${{ github.ref_name }} | |
| ignore-case: true | |
| omit-heading: true | |
| - run: cat ${{ steps.extract-changelog.outputs.output-file }} | |
| - name: Release | |
| uses: softprops/action-gh-release@v2 | |
| if: startsWith(github.ref, 'refs/tags/') | |
| with: | |
| body_path: ${{ steps.extract-changelog.outputs.output-file }} | |
| repository: ${{ github.repository }} | |
| generate_release_notes: false | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| files: out/*.tgz | |
| - name: Publish to registry | |
| if: | | |
| github.event_name == 'push' && | |
| (github.ref_type == 'tag' || github.ref == 'refs/heads/main') | |
| run: | | |
| set -ex | |
| npm config set //registry.npmjs.org/:_authToken "$NPM_AUTH_TOKEN" | |
| npm whoami | |
| if [[ "$GITHUB_REF_TYPE" = "tag" ]]; then | |
| npm publish --provenance --access public docflow-cli.tgz | |
| else | |
| npm publish --provenance --access public --tag dev docflow-cli.tgz | |
| fi | |
| env: | |
| NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
| working-directory: ${{ github.workspace }}/out/ | |
| deploy-docs: | |
| if: github.event_name == 'push' && github.ref_type == 'tag' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - run: corepack enable | |
| - uses: actions/setup-node@v4 | |
| with: | |
| cache: "yarn" | |
| cache-dependency-path: "yarn.lock" | |
| node-version-file: ".nvmrc" | |
| - name: Install dependencies | |
| run: yarn install | |
| - name: Deploy a docs site | |
| run: |- | |
| cd docs | |
| yarn vercel deploy --yes --prod --token=${{ secrets.VERCEL_TOKEN }} |