Files
biboumi/.woodpecker/docs.yaml
T

50 lines
1.6 KiB
YAML

# Exclude page pipeline to be run on "pages" branch
when:
event: [pull_request, push]
clone:
- name: git
image: woodpeckerci/plugin-git
settings:
partial: false
depth: 1
steps:
# Build sphinx static files
build:
image: docker.io/alpine:3.21
commands:
# Must install all of biboumi's dependencies to satisfy cmake
- apk add --no-cache --virtual .build py3-sphinx py3-sphinx_rtd_theme cmake expat-dev g++ git libidn-dev make postgresql-dev python3 sqlite-dev udns-dev util-linux-dev botan-dev
- mkdir -p build
- cd build
- cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DWITH_BOTAN=1 -DWITH_SQLITE3=1 -DWITH_LIBIDN=1 -DWITH_POSTGRESQL=1
- make html
when:
event: [pull_request, push]
publish:
image: docker.io/bitnami/git
environment:
# secrets must be set in Woodpecker configuration
CODEBERG_TOKEN:
from_secret: codeberg_token
commands:
# Git configuration
- git config --global user.email "ci-test@example.com"
- git config --global user.name "CI"
- git clone https://$CODEBERG_TOKEN@codeberg.org/biboumi/pages.git pages
# Copy build step output to repository folder
- cp -ar build/html/* pages/doc/
# Needed for custom domains
- cp .domains pages || true # Ignore if it doesn't exist
# Commit and push all static files with pipeline started timestamp
- cd pages
- git add .
- git commit -m "CI ${CI_COMMIT_SHA}" || true
- git push || true
when:
- event: push
branch: master