aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/publish-website.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/publish-website.yml')
-rw-r--r--.github/workflows/publish-website.yml48
1 files changed, 48 insertions, 0 deletions
diff --git a/.github/workflows/publish-website.yml b/.github/workflows/publish-website.yml
new file mode 100644
index 0000000..f492738
--- /dev/null
+++ b/.github/workflows/publish-website.yml
@@ -0,0 +1,48 @@
+# SPDX-FileCopyrightText: 2024 Linnea Gräf <nea@nea.moe>
+#
+# SPDX-License-Identifier: CC0-1.0
+
+on:
+ - push
+name: Web
+jobs:
+ build-website:
+ runs-on: ubuntu-latest
+ name: Astro Build
+ steps:
+ - uses: actions/checkout@v4
+ name: Checkout Code
+ - name: Setup node
+ uses: actions/setup-node@v4
+ with:
+ node-version: 23
+ - name: Setup PNPM
+ uses: pnpm/action-setup@v4
+ with:
+ package_json_file: 'web/package.json'
+ - name: Build Astro
+ run: |
+ cd web
+ pnpm install --frozen-lockfile
+ pnpm build
+ - name: Upload web artifact
+ uses: actions/upload-pages-artifact@v3
+ with:
+ path: web/dist/
+ deploy-website:
+ name: Deploy Website
+ runs-on: ubuntu-latest
+ needs: build-website
+ if: ${{ 'push' == github.event_name && 'master' == github.ref_name && '637563904' == github.repository_id }}
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ permissions:
+ pages: write
+ id-token: write
+ steps:
+ - uses: actions/download-artifact@v4
+ name: Download web artifact
+ - name: Deploy github pages
+ id: deployment
+ uses: actions/deploy-pages@v4