Skip to content

v0.0.1

v0.0.1 #14

Workflow file for this run

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 }}