Buildroot:IT Infrastructure

= Domain names =


 * buildroot.org
 * Sponsored by Earl Levine, Owner: Peter Korsgaard
 * buildroot.net
 * Owner: Peter Korsgaard


 * DNS for both handled through http://gratisdns.dk

= Web site =


 * Source in the main Buildroot Git repository, in docs/website/
 * Automatically pulled on the server by ???
 * Hosted by osuosl.org, VM shared with busybox/uclibc

= Autobuilder =


 * http://autobuild.buildroot.org points to a machine hosted by User:ThomasPetazzoni, a dedicated server he is renting
 * This infrastructure tests random configurations
 * The site runs the code at https://git.buildroot.net/buildroot-test, in the  subdirectory. It is made of very ugly PHP code, backed by a MySQL database.
 * The autobuild.buildroot.org machine doesn't do any builds itself, it only collects build results that are HTTP POSTed by other machines, called build slaves
 * The build slaves run the Python script at https://git.buildroot.net/buildroot-test/tree/scripts/autobuild-run
 * Currently used build slaves:
 * Free Electrons build server, managed by ThomasPetazzoni
 * gcc10, gcc20 from the GCC compile farm, managed by Peter Korsgaard
 * People having account to HTTP POST build results:
 * tpetazzoni
 * pkorsgaard
 * rbraun
 * nroach
 * mweber
 * mhadjinlian
 * jboibessot
 * vriera
 * gustavo
 * ymorin
 * ahentschel
 * ahentschel

= Mailing list =


 * https://buildroot.org/lists/buildroot/
 * Mailman server, maintained by osuosl.org

= Bug tracker =
 * https://bugs.buildroot.net/
 * Bugzilla, hosted on buildroot/busybox/uclibc VM (osuosl.org)
 * Maintained by Mike Frysinger
 * Instance shared with busybox/uclibc

= Git repository =


 * The main Git repository is at https://git.buildroot.net/buildroot, hosted by osuosl.org
 * E-mail notification messages are sent to the mailing list using /git/hooks/send-email hosted by osuosl.org
 * IRC notification messages are posted using irkerbot (/git/hooks/post-receive) hosted by osuosl.org
 * A secondary Git repository is on Github at https://github.com/buildroot/buildroot
 * Mainly to have an official Github mirror, rather than only unofficial forks of Buildroot
 * Kept in sync with the main Git repository by a cronjob run every 10 minutes on ThomasPetazzoni dedicated server.
 * Another mirror on Gitlab at https://gitlab.com/buildroot.org/buildroot - details below

= Gitlab project =


 * Gitlab group buildroot.org, with project https://gitlab.com/buildroot.org/buildroot
 * Administrators are Peter, Thomas and Arnout
 * Main purpose is to run automatic tests
 * controlled by .gitlab-ci.yml in the repository itself
 * https://gitlab.com/buildroot.org/buildroot/pipelines
 * basic tests (check-package, flake8, defconfig-check sanity) are triggered on every push to the repository
 * full tests (build of all defconfigs and runtime tests) are explicitly triggered once a week by a cronjob on Thomas server, for the master branch
 * results are reported over e-mail by the daily-mail script from the buildroot-test repository, executed on Thomas server
 * for convenience, CI runs in a custom docker image, https://hub.docker.com/r/buildroot/base/
 * generated from support/docker/Dockerfile
 * not generated automatically, since this can't be done from Gitlab-CI itself
 * Repository is synced from git.buildroot.org
 * In principle once per day, but sometimes pull fails
 * Better approach: push to the repo from a cron job - TBD
 * Irker and commit emails could be run from here as well, but currently aren't.

= Sources.buildroot.net =

make -k BR2_BACKUP_SITE='' $(find -name \*.mk|sed 's|.*/\([^/]*\)\.mk|\1-source host-\1-source|') make manual-html manual-pdf manual-text
 * Mirror of (nearly?) all Buildroot tarballs/patches.
 * Runs on a dedicated VM hosted by osuosl.org
 * Cronjob updating mirror every 2 hours doing make randconfig +
 * Also generates nightly documentation for nightly.buildroot.net every 6 hours:

= Patchwork =
 * Available at http://patchwork.ozlabs.org/project/buildroot/ or the alias http://patchwork.buildroot.net (HTTP redirect running on sources.buildroot.net)
 * Hosted by Jeremy Kerr, from Ozlabs. He is the point of contact in case of patchwork issues.