feat: Split CI/CD into three focused workflows
Replaced the monolithic pipeline with three dedicated workflows: ci.yml (build on every push), cd.yml (manual deploy to staging or prod), and nightly.yml (scheduled build and deploy). This makes it easier to trigger deploys independently of builds and to diagnose failures.
This commit is contained in:
parent
2db3ec3da4
commit
f06f63277f
4 changed files with 75 additions and 22 deletions
31
.forgejo/workflows/nightly.yml
Normal file
31
.forgejo/workflows/nightly.yml
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
name: Nightly
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 2 * * *'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: self-hosted
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Build
|
||||
run: nix shell nixpkgs#mdbook --command ./deploy.sh build
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: site-${{ github.sha }}
|
||||
path: blog/
|
||||
|
||||
|
||||
deploy:
|
||||
needs: build
|
||||
runs-on: self-hosted
|
||||
steps:
|
||||
- name: Download artifact
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: site-${{ github.sha }}
|
||||
path: blog/
|
||||
- name: Deploy
|
||||
run: nix shell nixpkgs#rsync --command ./deploy.sh local
|
||||
Loading…
Add table
Add a link
Reference in a new issue