Skip to content

ci: update workflows config. #32

ci: update workflows config.

ci: update workflows config. #32

Workflow file for this run

name: CI
on:
push:
branches:
- main
jobs:
build-deploy:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
- run: npm install
- run: npm run build
- run: npm run type-check
- run: npm run coverage
- name: Create idoc config.
run: |
cat > idoc.yml << EOF
site: "HSL(a) Matcher {{version}}"
menus:
Home: index.html
Sponsor: https://jaywcjlove.github.io/#/sponsor
EOF
- run: npm install idoc@1 -g
- run: idoc --output="coverage"
- name: Create Coverage Badges
uses: jaywcjlove/coverage-badges-cli@main
with:
source: coverage/coverage-summary.json
output: coverage/badges.svg
- name: Generate Contributors Images
uses: jaywcjlove/github-action-contributors@main
with:
filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\])
output: coverage/CONTRIBUTORS.svg
avatarSize: 42
- name: Create Tag
id: create_tag
uses: jaywcjlove/create-tag-action@main
with:
package-path: ./package.json
- name: get tag version
id: tag_version
uses: jaywcjlove/changelog-generator@main
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
commit_message: ${{steps.tag_version.outputs.tag}} ${{ github.event.head_commit.message }}
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./coverage
- name: Generate Changelog
id: changelog
uses: jaywcjlove/changelog-generator@main
with:
head-ref: ${{steps.create_tag.outputs.version}}
filter-author: (renovate-bot|Renovate Bot)
filter: '[R|r]elease[d]\s+[v|V]\d(\.\d+){0,2}'
- name: Create Release
uses: ncipollo/release-action@v1
if: steps.create_tag.outputs.successful
with:
allowUpdates: true
token: ${{ secrets.GITHUB_TOKEN }}
name: ${{ steps.create_tag.outputs.version }}
tag: ${{ steps.create_tag.outputs.version }}
body: |
[![Buy me a coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor) [![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://jaywcjlove.github.io/npm-unpkg/#/pkg/@uiw/hsl-matcher@${{steps.changelog.outputs.version}}/file/README.md)
Documentation ${{ steps.changelog.outputs.tag }}: https://raw.githack.com/jaywcjlove/hsl-matcher/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html
Comparing Changes: ${{ steps.changelog.outputs.compareurl }}
```shell
npm i hsl-matcher@${{steps.create_tag.outputs.versionNumber}}
```
${{ steps.changelog.outputs.changelog }}
- run: npm publish --access public --provenance
name: 📦 hsl-matcher publish to NPM
continue-on-error: true
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
# outputs:
# successful: ${{steps.create_tag.outputs.successful }}
# github-package:
# runs-on: ubuntu-latest
# needs: build-deploy
# if: needs.build-deploy.outputs.successful
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-node@v3
# with:
# node-version: 16
# registry-url: https://npm.pkg.github.com
# scope: '@jaywcjlove'
# - run: npm install
# - run: npm run build
# - name: "Modify hsl-matcher => @jaywcjlove/hsl-matcher"
# uses: jaywcjlove/github-action-package@main
# with:
# path: package.json
# data: |
# { "name": "@jaywcjlove/hsl-matcher" }
# - run: npm publish
# name: 📦 @jaywcjlove/hsl-matcher publish to NPM
# continue-on-error: true
# env:
# NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}