Skip to content

Garden Linux Daily Dashboard ​

The Garden Linux Daily Dashboard is a static, browser-based monitoring page for the Garden Linux (GL) build and release pipeline. It displays the real-time health of each pipeline stage and shows historical data for past GL days.

Pipeline stages ​

The dashboard monitors four pipeline stages and two auxiliary workflows:

StageRepositoryWorkflows
Stage 1 – Package BuildsAll non-archived gardenlinux/package-* reposbuild.yml on main or master
Stage 2 – Repositorygardenlinux/repobuild.yml, update.yml
Stage 3 – Build & Release Imagesgardenlinux/gardenlinuxnightly.yml (daily), manual_release.yml
Auxiliary – Cloud Test Cleanupgardenlinux/gardenlinuxcloud_test_cleanup.yml
Auxiliary – Debian Snapshotgardenlinux/repo-debian-snapshotsnapshot.yml

Stage 4 only applies to GL versions below 2174. From GL 2174 onwards (schema v2), the dashboard suppresses Stage 4 entirely.

Deprecations ​

StageRepositoryWorkflows
Stage 4 – Publish Imagesgardenlinux/gardenlinuxpublish.yml, publish_s3.yml

INFO

Stage 4 only applies to GL versions below 2174. From GL 2174 onwards (schema v2), the dashboard suppresses Stage 4 entirely.

Data sources ​

The dashboard combines three data sources.

Package states (Stage 1) ​

A Go binary (package-aggregator/main.go) runs nightly at 03:00 UTC via the aggregate_package_states.yml workflow. It scans every non-archived, non-excluded gardenlinux/package-* repository, checks the most recent build.yml run on main or master, and writes the result to packages/{glDays}.json on the packages branch.

The dashboard fetches this file at build time. The Stage 1 table shows only packages with a non-success status. An empty table means all packages are healthy.

Historic release archive (Stages 2–3) ​

scripts/collect-historic.js runs nightly at 05:00 UTC via the archive_historic_releases.yml workflow. It queries the GitHub API for the last 14 GL days and writes per-day pipeline summaries to historic/{glDays}.json on the historic-releases branch.

For past GL days the dashboard reads these pre-built cache files. It falls back to live GitHub API calls only when the cache is absent for a given day.

Live GitHub API (current day) ​

For the current GL day the browser fetches workflow run data directly from the GitHub API at page load time. Unauthenticated requests are subject to a rate limit of 60 requests per hour. You can raise this limit by storing a personal access token in the dashboard settings (see View the dashboard and re-run workflows).

Branch data model ​

BranchContent
packagespackages/{glDays}.json — package build states per GL day
historic-releaseshistoric/{glDays}.json — full pipeline summary cache per GL day
gh-pagesStatic dashboard site (index.html, style.css, dist/)

Schema versions ​

ConditionSchemaStage 4
GL < 2174v1Present
GL ≥ 2174v2Suppressed

The schema version affects which workflow IDs the dashboard expects and how it calculates pipeline durations.