krz/orgo

Lightning fast org-mode static site generator. fast go org-mode static-site-generator

.gitbay/ci.yml

27 lines · 1117 bytes

 1# gitbay CI. Each job becomes one build per push; the runner clones this
 2# repository at the pushed commit and runs every step with `sh -c`, stopping at
 3# the first failure. Repository secrets arrive as environment variables.
 4#
 5# The runner is Linux, and `runner next` claims the oldest pending build with no
 6# platform targeting, so a second runner could not be aimed at macOS jobs. The
 7# darwin tarballs are therefore built on a Mac by .githooks/pre-push at tag time
 8# and uploaded to the same release; see RELEASING.org.
 9jobs:
10  test:
11    steps:
12      - cargo test --locked
13      - cargo clippy --all-targets --locked -- -D warnings
14      - cargo run --locked -- build docs -o "/tmp/orgo-docs-$GITBAY_SHA" --strict
15      - rm -rf "/tmp/orgo-docs-$GITBAY_SHA"
16
17  # Publishes the documentation site by force-pushing the built output to the
18  # `pages` branch, which gitbay serves at https://orgo.krz.sh. A no-op off main.
19  pages:
20    steps:
21      - sh .gitbay/pages.sh
22
23  # The tag push is the release: binaries, the gitbay release, and crates.io.
24  release:
25    tags: "v*"
26    steps:
27      - sh .gitbay/release.sh