mirror of
https://codeberg.org/Codeberg-CI/examples.git
synced 2025-09-11 21:04:58 -04:00
Add Zola example (#53)
An example workflow to push pages built with [Zola](https://www.getzola.org) to Codeberg Pages. Reviewed-on: https://codeberg.org/Codeberg-CI/examples/pulls/53 Reviewed-by: 6543 <6543@obermui.de> Co-authored-by: daudix <ddaudix@gmail.com> Co-committed-by: daudix <ddaudix@gmail.com>
This commit is contained in:
parent
0e1cfcc3fe
commit
4be3316c10
53
Zola/.woodpecker.yaml
Normal file
53
Zola/.woodpecker.yaml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
# Takes a repository with Zola source, generates the static site and
|
||||||
|
# pushes the result to the pages branch of the same repository
|
||||||
|
#
|
||||||
|
# Must be set in Woodpecker configuration:
|
||||||
|
# mail: Your email address used by Codeberg
|
||||||
|
# codeberg_token: Codeberg access token with "write:repository" permission
|
||||||
|
#
|
||||||
|
# .domains file can be put inside static folder in Zola source
|
||||||
|
#
|
||||||
|
|
||||||
|
# Exclude the pipeline to run on the pages branch
|
||||||
|
when:
|
||||||
|
branch:
|
||||||
|
exclude: pages
|
||||||
|
|
||||||
|
# Clone recursively to fully clone the themes given as Git submodules
|
||||||
|
clone:
|
||||||
|
git:
|
||||||
|
image: woodpeckerci/plugin-git
|
||||||
|
settings:
|
||||||
|
recursive: true
|
||||||
|
|
||||||
|
steps:
|
||||||
|
# Build Zola static files
|
||||||
|
build:
|
||||||
|
image: alpine:edge
|
||||||
|
commands:
|
||||||
|
- apk add zola
|
||||||
|
- zola build
|
||||||
|
when:
|
||||||
|
event: [push, pull_request]
|
||||||
|
|
||||||
|
publish:
|
||||||
|
image: bitnami/git
|
||||||
|
secrets: [mail, codeberg_token]
|
||||||
|
commands:
|
||||||
|
# Configure Git
|
||||||
|
- git config --global user.email $MAIL
|
||||||
|
- git config --global user.name "Woodpecker CI"
|
||||||
|
# Clone the output branch
|
||||||
|
- git clone --branch pages https://$CODEBERG_TOKEN@codeberg.org/$CI_REPO.git $CI_REPO_NAME
|
||||||
|
# Enter the output branch
|
||||||
|
- cd $CI_REPO_NAME
|
||||||
|
# Remove old files
|
||||||
|
- git rm -r "*" || true # Don't fail if there's nothing to remove
|
||||||
|
# Copy the output of the build step
|
||||||
|
- cp -ar ../public/. .
|
||||||
|
# Commit and push all static files with the source commit hash
|
||||||
|
- git add --all
|
||||||
|
- git commit -m "Woodpecker CI ${CI_COMMIT_SHA} [SKIP CI]" --allow-empty
|
||||||
|
- git push
|
||||||
|
when:
|
||||||
|
event: [push]
|
Loading…
x
Reference in New Issue
Block a user