Skip to content

Fix blog articles

Fix blog articles #179

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: npm
- run: npm ci
- run: npm run build
- uses: actions/upload-pages-artifact@v1
with:
path: dist
retention-days: 90
lint:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: npm
- run: npm ci
- run: npm run lint
typecheck:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: npm
- run: npm ci
- run: npm run typecheck
validate-blog:
if: startsWith(github.head_ref, 'blog/') && !startsWith(github.head_ref, 'blog/admin/')
needs: [build, lint, typecheck]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: npm
- run: npm ci
- run: |
git fetch origin main
git diff origin/main..HEAD --name-only | xargs npm run validate-blog --
update-blogmeta:
needs: [validate-blog]
permissions:
contents: write
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
# Checkout pull request HEAD commit instead of merge commit
with:
ref: ${{ github.event.pull_request.head.ref }}
- uses: actions/setup-node@v3
with:
node-version-file: .node-version
cache: npm
- run: npm ci
- name: Update Blog Meta
run: |
git fetch origin main
git diff origin/main..HEAD --name-status | xargs npm run update-blogmeta --
- name: Git Commit
run: |
git add -N .
if ! git diff --exit-code --quiet
then
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git add .
git commit -m "[Bot] Update Blog Meta"
git push
fi
deploy:
if: github.ref == 'refs/heads/main'
needs: [build, lint, typecheck]
permissions:
pages: write
id-token: write
concurrency:
group: 'pages'
cancel-in-progress: false
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-22.04
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v1