Skip to content

Bump lodash from 4.17.21 to 4.17.23 in /asset-generator #33

Bump lodash from 4.17.21 to 4.17.23 in /asset-generator

Bump lodash from 4.17.21 to 4.17.23 in /asset-generator #33

name: Build and Deploy Site
# Controls when the action will run.
on:
# Triggers the workflow on push events only for the master branch
push:
branches: [ master ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains one job called "build" and one called "deploy"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
# Set up Node
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install Node packages
run: |
cd asset-generator && npm ci
- name: Clear asset directory
run: |
rm -Rf content/images
rm -Rf content/js
- name: Generate dynamic assets
run: |
cd asset-generator
rm -Rf dist web-bundles
tsc
node dist/index.js
webpack --mode production
- name: Copy dynamic assets into the site directory
run: |
cp -r asset-generator/static/. content/images
cp -r asset-generator/web-bundles/. content/js
# Set up Python
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version-file: ".python-version"
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Install Python dependencies
run: uv sync --locked
- name: Build site
run: |
uv run pelican content -o output -s publishconf.py
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload Artifact
uses: actions/upload-pages-artifact@v3
with:
# upload just the output folder
path: './output'
# The deploy job
deploy:
runs-on: ubuntu-latest
needs: build
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{steps.deployment.outputs.page_url}}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4