diff --git a/.github/workflows/build-and-deploy.yml b/.github/workflows/build-and-deploy.yml new file mode 100644 index 0000000..ef216dc --- /dev/null +++ b/.github/workflows/build-and-deploy.yml @@ -0,0 +1,42 @@ +name: Build and deploy +run-name: Build and deploy app on GitHub Pages +on: + push: + branches: + - main +jobs: + build-app: + runs-on: ubuntu-latest + steps: + - run: > + echo "Build triggered by commit \"${{ github.event.head_commit.message }}\" + (${{ github.event.head_commit.id }}) by \"${{ github.event.head_commit.author }}\"" + - run: echo "Building on ${{ runner.os }}..." + - name: Check out repository code + uses: actions/checkout@v4 + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + - name: Install app dependencies + run: npm install + - name: Build app with Webpack + run: npm run build + - name: Setup GitHub Pages + uses: actions/configure-pages@v5 + - name: Upload artifact on GitHub Pages + uses: actions/upload-pages-artifact@v3 + with: + path: dist/ + deploy-app: + runs-on: ubuntu-latest + needs: build-app + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + permissions: + id-token: write + steps: + - name: Deploy app to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4