See the live site: https://bazel-contrib.github.io/bazel-catalog
This is written in Bash and JQ.
To work in this repository, it helps to understand the structure and dataflows.
-
Ingest data from sources into this repo to produce a "sync" PR.
- From BCR using
scripts/merge_bcr_metadata.sh
. This is intended to be non-destructive. - From GitHub API using
scripts/collect_github_stats.sh
- From BCR using
-
git data produced by
collect_gitstats.sh
is slow to collect and has a giant output, which goes into thegitstats
folder in thegh-pages
branch to avoid bloating themain
branch.
GitHub Actions will then take over automatically, running the render.yml workflow which:
- Runs
scripts/render_ghpages.sh
to produce the rest of the content in thegh-pages
branch.- This script runs
filters/*_data.jq
to get some datapoints which we render in markdown
- This script runs
- Pushes the
gh-pages
branch - A separate GHA workflow updates the live GitHub pages site after the gh-pages branch changes.
Still needed:
- Cron-style automation for data ingest.