|
|
|
name: GitHub Actions Deploy hotkeys-js
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- master
|
|
|
|
tags:
|
|
|
|
- v*
|
|
|
|
jobs:
|
|
|
|
build-deploy:
|
|
|
|
runs-on: ubuntu-18.04
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@master
|
|
|
|
|
|
|
|
- name: Setup Node
|
|
|
|
uses: actions/setup-node@v1
|
|
|
|
with:
|
|
|
|
node-version: '10.x'
|
|
|
|
|
|
|
|
# - name: Cache dependencies
|
|
|
|
# uses: actions/cache@v1
|
|
|
|
# with:
|
|
|
|
# path: ~/.npm
|
|
|
|
# key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
|
|
|
|
# restore-keys: |
|
|
|
|
# ${{ runner.os }}-node-
|
|
|
|
|
|
|
|
- name: Look Changelog
|
|
|
|
uses: jaywcjlove/changelog-generator@v1.3.9
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
filter-author: (jaywcjlove|小弟调调™|dependabot\[bot\]|Renovate Bot)
|
|
|
|
filter: '[R|r]elease[d]\s+[v|V]\d(\.\d+){0,2}'
|
|
|
|
|
|
|
|
- run: npm install
|
|
|
|
- run: npm run build
|
|
|
|
- run: npm run test
|
|
|
|
|
|
|
|
- name: Build and Deploy
|
|
|
|
uses: peaceiris/actions-gh-pages@v2.5.0
|
|
|
|
env:
|
|
|
|
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
|
|
|
PUBLISH_BRANCH: gh-pages
|
|
|
|
PUBLISH_DIR: ./doc
|
|
|
|
|
|
|
|
- name: Is a tag created auto?
|
|
|
|
id: create_tag
|
|
|
|
uses: jaywcjlove/create-tag-action@v1.1.7
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
package-path: ./package.json
|
|
|
|
|
|
|
|
- name: Generate Changelog
|
|
|
|
id: changelog
|
|
|
|
uses: jaywcjlove/changelog-generator@v1.3.9
|
|
|
|
if: steps.create_tag.outputs.successful
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
head-ref: ${{ steps.create_tag.outputs.version }}
|
|
|
|
filter-author: (jaywcjlove|小弟调调™|dependabot\[bot\]|Renovate Bot)
|
|
|
|
filter: '[R|r]elease[d]\s+[v|V]\d(\.\d+){0,2}'
|
|
|
|
|
|
|
|
- name: Create Release
|
|
|
|
id: create_release
|
|
|
|
uses: actions/create-release@latest
|
|
|
|
if: steps.create_tag.outputs.successful
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
with:
|
|
|
|
tag_name: ${{ steps.create_tag.outputs.version }}
|
|
|
|
release_name: ${{ steps.create_tag.outputs.version }}
|
|
|
|
body: |
|
|
|
|
${{ steps.changelog.outputs.compareurl }}
|
|
|
|
${{ steps.changelog.outputs.changelog }}
|
|
|
|
draft: false
|
|
|
|
prerelease: false
|