feat: migrate builds plugin to go and track per-build records
Adds typed JSON build records under data/builds/<app>/<build-id>.{json,log} keyed on a stable base36 ULID-style DOKKU_BUILD_ID generated for every deploy. The new commands surface that history (builds:list, builds:info, builds:prune) and an operator-configurable retention via builds:set retention. The existing builds:cancel and builds:output now key on the build-id (with safe handling for already-finalized and abandoned records), and the per-build log file replaces journalctl as the durable source of truth for builds:output.
This commit is contained in:
@@ -7,10 +7,7 @@ trigger-git-receive-app() {
|
||||
declare desc="builds the app from the local git repository"
|
||||
declare trigger="receive-app"
|
||||
|
||||
if [[ "$DOKKU_REDIRECT_OUTPUT" != "true" ]]; then
|
||||
export DOKKU_REDIRECT_OUTPUT=true
|
||||
exec &> >(tee >(tee | logger -i -t "dokku-${DOKKU_PID}"))
|
||||
fi
|
||||
dokku_setup_build_capture "$1" "git-hook"
|
||||
|
||||
git_receive_app "$@"
|
||||
return $?
|
||||
|
||||
Reference in New Issue
Block a user