From 95c5e89c9ff36e71e8db5d0c81c6fc19ae251651 Mon Sep 17 00:00:00 2001 From: shalluv Date: Wed, 31 Jan 2024 13:56:39 +0700 Subject: [PATCH] ci: fix --- .github/workflows/astro.yml | 54 +++++++++++-------------------------- 1 file changed, 16 insertions(+), 38 deletions(-) diff --git a/.github/workflows/astro.yml b/.github/workflows/astro.yml index 4dbb0fc..13741b0 100644 --- a/.github/workflows/astro.yml +++ b/.github/workflows/astro.yml @@ -1,32 +1,22 @@ -# Sample workflow for building and deploying an Astro site to GitHub Pages -# -# To get started with Astro see: https://docs.astro.build/en/getting-started/ -# name: Deploy Astro site to Pages 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 permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages 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 env: - BUILD_PATH: "." # default value when not using subfolders - # BUILD_PATH: subfolder + BUILD_PATH: "." jobs: build: @@ -34,42 +24,30 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4 - - name: Detect package manager - id: detect-package-manager - run: | - if [ -f "${{ github.workspace }}/yarn.lock" ]; then - echo "manager=yarn" >> $GITHUB_OUTPUT - echo "command=install" >> $GITHUB_OUTPUT - echo "runner=yarn" >> $GITHUB_OUTPUT - exit 0 - elif [ -f "${{ github.workspace }}/package.json" ]; then - echo "manager=npm" >> $GITHUB_OUTPUT - echo "command=ci" >> $GITHUB_OUTPUT - echo "runner=npx --no-install" >> $GITHUB_OUTPUT - exit 0 - else - echo "Unable to determine package manager" - exit 1 - fi + uses: actions/checkout@v3 + + - uses: pnpm/action-setup@v2 + - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v3 with: - node-version: "20" - cache: ${{ steps.detect-package-manager.outputs.manager }} - cache-dependency-path: ${{ env.BUILD_PATH }}/package-lock.json + node-version-file: ".nvmrc" + cache: pnpm + - name: Setup Pages id: pages uses: actions/configure-pages@v4 + - name: Install dependencies - run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} + run: pnpm install --frozen-lockfile working-directory: ${{ env.BUILD_PATH }} + - name: Build with Astro - run: | - ${{ steps.detect-package-manager.outputs.runner }} astro build \ - --site "${{ steps.pages.outputs.origin }}" \ - --base "${{ steps.pages.outputs.base_path }}" + run: pnpm build \ + --site "${{ steps.pages.outputs.origin }}" \ + --base "${{ steps.pages.outputs.base_path }}" working-directory: ${{ env.BUILD_PATH }} + - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: