name: Release on: release: types: [published] jobs: setup: runs-on: ubuntu-latest outputs: version: ${{ steps.trim.outputs.version }} steps: - id: trim run: echo "::set-output name=version::${TAG:1}" env: TAG: ${{ github.event.release.tag_name }} release: needs: setup runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: node-version: '14.x' registry-url: https://registry.npmjs.org/ - name: Setup and build run: | npm ci npm install -g json json -I -f package.json -e "this.version=\"$VERSION\"" json -I -f package-lock.json -e "this.version=\"$VERSION\"" npm run build ./scripts/docs-config.sh "$VERSION" release npm run docs npm pack env: VERSION: ${{ needs.setup.outputs.version }} - name: Publish to NPM run: ./scripts/publish.sh env: NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} VERSION: ${{ needs.setup.outputs.version }} - name: Deploy Docs run: ./scripts/deploy-docs.sh "$VERSION" release env: GITHUB_TOKEN: ${{ secrets.GH_AUTH_TOKEN }} GH_AUTH_EMAIL: ${{ secrets.GH_AUTH_EMAIL }} VERSION: ${{ needs.setup.outputs.version }} - name: Upload NPM package file id: upload-npm-package-file uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} VERSION: ${{ needs.setup.outputs.version }} with: upload_url: ${{ github.event.release.upload_url }} asset_path: ${{ format('chart.js-{0}.tgz', needs.setup.outputs.version) }} asset_name: ${{ format('chart.js-{0}.tgz', needs.setup.outputs.version) }} asset_content_type: application/gzip release-tag: needs: [setup,release] runs-on: ubuntu-latest if: "!github.event.release.prerelease" steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: node-version: '14.x' registry-url: https://registry.npmjs.org/ - name: Setup and build run: | npm ci npm install -g json json -I -f package.json -e "this.version=\"$VERSION\"" json -I -f package-lock.json -e "this.version=\"$VERSION\"" npm run build ./scripts/docs-config.sh "$VERSION" npm run docs env: VERSION: ${{ needs.setup.outputs.version }} - name: Deploy Docs run: ./scripts/deploy-docs.sh "$VERSION" env: GITHUB_TOKEN: ${{ secrets.GH_AUTH_TOKEN }} GH_AUTH_EMAIL: ${{ secrets.GH_AUTH_EMAIL }} VERSION: ${{ needs.setup.outputs.version }}