Files
werkator/.werkator.yml
T
mhoennigandClaude Fable 5 4bbd3483d5 Werkdock builds itself: werkdock build definition
A second named build beside the default: gofmt gate, go vet, go test,
and the static binary as the artifact (werkdock/dist). Verified locally
end to end and via config:print.

Expected red on the webspace instance until the trixie rootfs learns
the go toolchain — that image extension (Go + Node, roadmap step 2 of
plan 21) is the follow-up.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-01 07:09:20 +02:00

50 lines
2.0 KiB
YAML

server:
# Public base URL of this Werkator installation — used for all links posted to Gitea.
publicBaseUrl: ""
# Gitea integration for fetching commits and posting build statuses.
gitea:
baseUrl: https://github.com # base URL of the Gitea instance
owner: mhoennig # repository owner (user or organisation) for Gitea API (e.g. status checks)
repo: werkator # repository name
statusContext: werkator # label shown on Gitea commit status checks (default: werkator)
# Build artifact retention.
artifacts:
# number of builds to keep per branch
retentionPerBranch: 3
# Controls the branch-polling loop.
watcher:
# max commit age for new origin branches to be pulled automatically
newBranchMaxAge: 5d
# Named build definitions. "default" is the base every other one inherits its
# settings from — never its trigger.
builds:
default:
# When this build runs and for which branches. The only part a build does
# NOT inherit from the default — everything below it does.
trigger:
onPush: true # build every new commit of the selected branches
# run before each build
cleanCommand: rm -rf build
# shell command for each build
buildCommand: ./gradlew --console=plain --no-daemon test
# directories copied as build artifacts
artifactDirs:
- build/reports
stdoutLog: build.stdout.log # filename for captured stdout
stderrLog: build.stderr.log # filename for captured stderr
# Werkdock builds itself: the Go module in werkdock/ (plan step 21).
# The first gofmt call prints any unformatted files, the second fails
# the build on them. Needs the go toolchain in the build environment.
werkdock:
trigger:
onPush: true
cleanCommand: rm -rf werkdock/dist
buildCommand: cd werkdock && gofmt -l . && test -z "$(gofmt -l .)" && go vet ./... && go test ./... && CGO_ENABLED=0 go build -o dist/werkdock .
artifactDirs:
- werkdock/dist