buildbrain の運用
コントリビューション
基本 puhitaku がレビュー & マージ
Brainux のリリース
Brainux のバージョン = タグ
タグを打つと CI のビルドが走る
Release note は、前回のタグ〜 今回のタグの差分を GitHub Action が生成するのでそれをベースに作る
下記の ci-* はタグではないために、ci-* を push し CI が走り始めた時点で同名のタグがなければ「HEAD〜2つ前のタグの差分」の release note ができる点に注意(既に一度 CI が走って GitHub release の生成に成功している場合、暗黙的に生成された同名のタグがあるため正常な release note が生成される)
ブランチの運用と命名規則
PR や細かい単位で master に merge していい
ci- で始まるブランチは例外的に CI による全ビルドが走るようになっていて、CI 自体の実装に使う
タグの命名規則
コミットメッセージの規則
特に無し
buildbrain の構造
Makefile エントリポイント
os-* 生成するディストリビューションごとの実装
tools aptcache などビルドの途中で使われるコード
image SD イメージの生成に使うコード(tools にまとめるべき?)
r3build.toml r3build の設定ファイル Linux のドライバを書く時などの hot reloading に使う
linux-brain Linux
u-boot-brain U-Boot
nkbin_maker WinCE のブートローダー EBOOT が解釈できる nk.bin を生成する