- This repo holds the source for the public DuckDB Nightly Build Status site (static pages with daily updates based on nigthly builds created in DuckDB repository). It’s a Jekyll site using the Just the Docs theme.
Here’s a short maintenance guide for duckdb/duckdb-build-status.
- Jekyll:
_config.yml
,Gemfile
, layouts/partials (_layouts/
,_includes/
), styles (_sass/
), and the landing pageindex.md
. - Workflow:
NightlyBuildsCheck.yml
workflow is the entry point and it's triggered by notification fromInvokeCI.yml
. It uses scripts to create build reports and push them to update this repo contents. When it completes, Pages get automatically deployed. You can re-run theNightlyBuildsCheck
manually and if you don't want that run results to be deployed, just passfalse
to theshoulf_be_deployed
input.
❗️ Sinse
InvokeCI
runs on different branches, its each run triggers corresponding run of theNightlyBuildsCheck
- Build helpers:
scripts/
with tasks to fetch/assemble data and produce generated content. ([scripts][https://github.com/duckdb/duckdb-build-status/tree/main/scripts]) - Generated content: dated pages like
docs/main/YYYY-MM-DD-main.md
. (docs/main
)
# in the repo root
bundle install
bundle exec jekyll serve
# open http://127.0.0.1:4000
-
When new release branch in the main DuckDB repo, create a corresponding branch in current repo to trigger nighly builds status report creation for the new branch of DuckDB. Web-site structure and
create_inputs()
should also be updated. -
If InvokeCI trigger changes, it doesn't matter for the auto daily run, but when you'd like to re-run
NightlyBuildsCheck
workflow manually, you should use new event name for theevent
input. (NightlyBuildsCheck)
If you tell me which branches/dates you plan to keep on the site, I can draft a minimal “one-button” Rake command (or a short shell script) tailored to just those inputs.
mkdir docs/<new branch name>
, e.g.mkdir docs/v1.4-andium
- Create for copy+paste and rename one of
.md
files indocs
directory to create.md
file for the new release, e.g.docs/andium.md
- this will be a page template serving a list of the build reports for that branch - Change navigation order in all
docs/*.md
files as you think it will work best, remember thatmain
should have alwaysnav_order: 1
. - Merge these updates to
main
- ifdocs/v1.4-andium
doesn't exist, it will fail on pushing reports and will not deploy the Pages for that branch.