summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/only-build.yaml36
-rw-r--r--.github/workflows/preview.yaml56
-rw-r--r--.github/workflows/production.yaml57
3 files changed, 149 insertions, 0 deletions
diff --git a/.github/workflows/only-build.yaml b/.github/workflows/only-build.yaml
new file mode 100644
index 0000000..46ee60b
--- /dev/null
+++ b/.github/workflows/only-build.yaml
@@ -0,0 +1,36 @@
+name: only-build
+on:
+ workflow_dispatch:
+ branches:
+ - master
+ schedule:
+ - cron: '0 3 * * *'
+
+jobs:
+ build-hugo:
+ runs-on: ubuntu-latest
+ concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ steps:
+ - name: Setup Hugo
+ uses: peaceiris/actions-hugo@v2
+ with:
+ hugo-version: 'latest'
+ extended: true
+
+ - name: Setup Go
+ uses: actions/setup-go@v4.0.0
+ with:
+ go-version: '^1.21'
+
+ - name: SetUp Env
+ run: hugo new site testenv
+
+ - name: Set theme
+ uses: actions/checkout@v3
+ with:
+ path: ./testenv/themes/hugo-theme-shell
+
+ - name: Build
+ run: hugo --minify -t hugo-theme-shell
+ working-directory: ./testenv
diff --git a/.github/workflows/preview.yaml b/.github/workflows/preview.yaml
new file mode 100644
index 0000000..fd900ae
--- /dev/null
+++ b/.github/workflows/preview.yaml
@@ -0,0 +1,56 @@
+name: preview
+env:
+ VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
+ VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
+on:
+ push:
+ branches-ignore:
+ - master
+ pull_request:
+
+jobs:
+ deploy-preview:
+ runs-on: ubuntu-latest
+ concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ steps:
+ - name: Setup Hugo
+ uses: peaceiris/actions-hugo@v2
+ with:
+ hugo-version: 'latest'
+ extended: true
+
+ - name: Setup Go
+ uses: actions/setup-go@v4.0.0
+ with:
+ go-version: '^1.21'
+
+ - name: Install Vercel CLI
+ run: npm install --global vercel@latest
+
+ - name: SetUp Env
+ run: hugo new site testenv
+
+ - name: Set theme
+ uses: actions/checkout@v3
+ with:
+ path: ./testenv/themes/hugo-theme-shell
+
+ - name: Build
+ run: hugo --minify -t hugo-theme-shell
+ working-directory: ./testenv
+
+ - name: Pull Vercel Environment Information
+ run: vercel pull --yes --environment=preview --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Build Project Artifacts
+ run: vercel build --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Deploy Project Artifacts to Vercel
+ run: vercel deploy --prebuilt --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Deploy
+ uses: peaceiris/actions-gh-pages@v3
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./testenv/public
diff --git a/.github/workflows/production.yaml b/.github/workflows/production.yaml
new file mode 100644
index 0000000..67efd41
--- /dev/null
+++ b/.github/workflows/production.yaml
@@ -0,0 +1,57 @@
+name: production
+env:
+ VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
+ VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
+on:
+ push:
+ branches:
+ - master
+
+jobs:
+ deploy-production:
+ runs-on: ubuntu-latest
+ concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ steps:
+ - name: Setup Hugo
+ uses: peaceiris/actions-hugo@v2
+ with:
+ hugo-version: 'latest'
+ extended: true
+
+ - name: Setup Go
+ uses: actions/setup-go@v4.0.0
+ with:
+ go-version: '^1.21'
+
+ - name: Install Vercel CLI
+ run: npm install --global vercel@latest
+
+ - name: SetUp Env
+ run: hugo new site testenv
+
+ - name: Set theme
+ uses: actions/checkout@v3
+ with:
+ path: ./testenv/themes/hugo-theme-shell
+
+ - name: Build
+ run: hugo --minify -t hugo-theme-shell
+ working-directory: ./testenv
+
+ - name: Pull Vercel Environment Information
+ run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Build Project Artifacts
+ run: vercel build --prod --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Deploy Project Artifacts to Vercel
+ if: ${{ github.ref == 'refs/heads/master' }}
+ run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }} --cwd ./testenv
+
+ - name: Deploy
+ uses: peaceiris/actions-gh-pages@v3
+ if: ${{ github.ref == 'refs/heads/master' }}
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./testenv/public