name: Deploy to GitHub Pages and create release on: workflow_dispatch: push: tags: - '*' jobs: deploy: name: Deploy to GitHub Pages and create release runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Use Node.js uses: actions/setup-node@v1 with: node-version: 10.x - name: Update npm run: npm install -g npm@7 - name: npm install and build run: | npm install npm run build - name: Create archive run: | cd dist zip -9 -r dist.zip . -x "js/*.map" -x "/*.map" - name: Create Release Notes run: | npm install github-release-notes@0.16.0 -g gren changelog --generate --config="/.github/workflows/config.grenrc.js" env: GREN_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create release uses: ncipollo/release-action@v1 with: artifacts: "dist/dist.zip" token: ${{ secrets.GITHUB_TOKEN }} bodyFile: "CHANGELOG.md" - name: Deploy 🚀 uses: JamesIves/github-pages-deploy-action@4.1.1 with: token: ${{ secrets.GITHUB_TOKEN }} branch: build # The branch the action should deploy to. folder: dist/ # The folder the action should deploy. clean: true # Automatically remove deleted files from the deploy branch clean-exclude: .nojekyll