Skip to content

Release Latest

Release Latest #14

name: Release Latest
on: workflow_dispatch
jobs:
release_latest:
name: Release Latest
runs-on: ubuntu-latest
permissions:
contents: write
environment:
name: npm
url: https://www.npmjs.com/package/@hadronous/pic
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: ./.github/actions/setup-bun
- uses: ./.github/actions/setup-commitizen
- uses: ./.github/actions/setup-nodejs
- name: Build package
run: bun build:pic
- name: Bump Version
run: cz bump --files-only --yes
- name: Get New Version
run: echo "version=$(cz version --project)" >> "$GITHUB_ENV"
- name: Push changes to repository
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: 'chore: release ${{ env.version }}'
commit_options: '--no-verify --signoff'
file_pattern: .cz.toml CHANGELOG.md packages/pic/package.json
tagging_message: '${{ env.version }}'
- name: Generate Release Notes
run: cz changelog --incremental --file-name RELEASE_NOTES.md
- name: Publish to npm
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_ACCESS_TOKEN }}
run: |
npm pack ./packages/pic/
npm publish --verbose --access public ./packages/pic/
- name: Create Github release
uses: ncipollo/release-action@v1
with:
artifacts: 'hadronous-pic-${{ env.version }}.tgz'
bodyFile: 'RELEASE_NOTES.md'
tag: '${{ env.version }}'
commit: 'main'
makeLatest: true
build_docs:
name: Build Docs
runs-on: ubuntu-latest
needs: release_latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- uses: ./.github/actions/setup-pnpm
- name: Build Docs
run: pnpm -F docs build
- name: Fix permissions
run: |
chmod -c -R +rX "docs/build/" | while read line; do
echo "::warning title=Invalid file permissions automatically fixed::$line"
done
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v2
with:
path: docs/build/
deploy_docs:
name: Deploy Docs
runs-on: ubuntu-latest
needs: build_docs
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2