From 7429ebeaa69336f9f2ee80e8a56d51f9a8e7392d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Pier=C5=9Bci=C5=84ski?= Date: Wed, 27 Mar 2024 15:59:19 +0100 Subject: [PATCH] deploy workflow --- .github/workflows/deploy.yml | 41 ++++++++++++++++ .github/workflows/nuxtjs.yml | 90 ------------------------------------ 2 files changed, 41 insertions(+), 90 deletions(-) create mode 100644 .github/workflows/deploy.yml delete mode 100644 .github/workflows/nuxtjs.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..8398bca --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,41 @@ +# https://github.com/actions/deploy-pages#usage +name: Deploy to GitHub Pages +on: + workflow_dispatch: + push: + branches: + - main +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - run: corepack enable + - uses: actions/setup-node@v3 + with: + node-version: '20' + # Pick your own package manager and build script + - run: npm install + - run: npx nuxt build --preset github_pages + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + path: ./.output/public + # Deployment job + deploy: + # Add a dependency to the build job + needs: build + # Grant GITHUB_TOKEN the permissions required to make a Pages deployment + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + # Deploy to the github_pages environment + environment: + name: github_pages + url: ${{ steps.deployment.outputs.page_url }} + # Specify runner + deployment step + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/.github/workflows/nuxtjs.yml b/.github/workflows/nuxtjs.yml deleted file mode 100644 index b2f94b0..0000000 --- a/.github/workflows/nuxtjs.yml +++ /dev/null @@ -1,90 +0,0 @@ -# Sample workflow for building and deploying a Nuxt site to GitHub Pages -# -# To get started with Nuxt see: https://nuxtjs.org/docs/get-started/installation -# -name: Deploy Nuxt 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 - -jobs: - # Build job - build: - 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 - exit 0 - elif [ -f "${{ github.workspace }}/package.json" ]; then - echo "manager=npm" >> $GITHUB_OUTPUT - echo "command=ci" >> $GITHUB_OUTPUT - exit 0 - else - echo "Unable to determine package manager" - exit 1 - fi - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: "20" - cache: ${{ steps.detect-package-manager.outputs.manager }} - - name: Setup Pages - uses: actions/configure-pages@v4 - with: - # Automatically inject router.base in your Nuxt configuration file and set - # target to static (https://nuxtjs.org/docs/configuration-glossary/configuration-target/). - # - # You may remove this line if you want to manage the configuration yourself. - static_site_generator: nuxt - - name: Restore cache - uses: actions/cache@v4 - with: - path: | - dist - .nuxt - key: ${{ runner.os }}-nuxt-build-${{ hashFiles('dist') }} - restore-keys: | - ${{ runner.os }}-nuxt-build- - - name: Install dependencies - run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} - - name: Static HTML export with Nuxt - run: ${{ steps.detect-package-manager.outputs.manager }} run generate - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: ./dist - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4