From 57a4d44967429ea549478a9861cceca74b0a3bd6 Mon Sep 17 00:00:00 2001 From: jeremaihiro Date: Wed, 3 Jan 2024 08:44:09 +0100 Subject: [PATCH] add: deploy workflow --- .github/workflows/deploy.yml | 76 ++++++++++++++++++------------------ vite.config.js | 4 +- 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 0a0031a..182fcf2 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,51 +1,51 @@ -# Simple workflow for deploying static content to GitHub Pages -name: Deploy static content to Pages +name: Deploy on: - # Runs on pushes targeting the default branch push: - branches: ['main'] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets the GITHUB_TOKEN permissions to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow one concurrent deployment -concurrency: - group: 'pages' - cancel-in-progress: true + branches: + - main jobs: - # Single deploy job since we're just deploying - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} + build: + name: Build runs-on: ubuntu-latest + steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Set up Node - uses: actions/setup-node@v3 + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Setup Node + uses: actions/setup-node@v1 with: node-version: 18 - cache: 'npm' + - name: Install dependencies - run: npm install - - name: Build + uses: bahmutov/npm-install@v1 + + - name: Build project run: npm run build - - name: Setup Pages - uses: actions/configure-pages@v3 - - name: Upload artifact - uses: actions/upload-pages-artifact@v1 + + - name: Upload production-ready build files + uses: actions/upload-artifact@v2 with: - # Upload dist repository - path: './dist' + name: production-files + path: ./dist + + deploy: + name: Deploy + needs: build + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/main' + + steps: + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: production-files + path: ./dist + - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v1 \ No newline at end of file + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./dist \ No newline at end of file diff --git a/vite.config.js b/vite.config.js index 43621b1..ecdd566 100644 --- a/vite.config.js +++ b/vite.config.js @@ -2,6 +2,6 @@ import { defineConfig } from 'vite' import react from '@vitejs/plugin-react' export default defineConfig({ - plugins: [react()], - base: '/jeremiahiro.github.io/' + base: '/jeremiahiro.github.io/', + plugins: [react()] })