diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 5f011f0e..64454669 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,23 +1,38 @@ on: push: - branches: - - main + branches: ["main"] # TODO(c-bata): Remove this after confirming that the deployment works. pull_request: - branches: - - main + branches: ["main"] + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + jobs: publish-gh-pages: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@v3 + - name: Install Rust toolchains + uses: dtolnay/rust-toolchain@stable - name: Install wasm-pack run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh - name: Setup Node uses: actions/setup-node@v2 with: - node-version: '16' + node-version: '18' - name: Build standalone_app run: make MODE="prd" standalone_app/public/bundle.js - name: Create publish directory @@ -25,9 +40,10 @@ jobs: mkdir gh-publish cp -r standalone_app/public gh-publish/public cp standalone_app/index.html gh-publish/index.html - - name: Deploy - uses: peaceiris/actions-gh-pages@v3 - if: ${{ github.ref == 'refs/heads/main' }} + - name: Upload artifact + uses: actions/upload-pages-artifact@v2 with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./gh-publish + path: './gh-publish' + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v2