Releases
v1.19.0
Compare
Sorry, something went wrong.
No results found
kan
released this
15 Oct 04:30
Added
delta / shellcheck ジョブで、取得した資産の SHA256 を照合するようにした(#20 )。upstream はチェックサムを
公開していないので、GitHub の Releases API が資産に付ける digest を期待値にする。転送中の破損や改ざんは
検出できるが、資産そのものの差し替え(上流のアカウント侵害)は検出できない
lib/github.sh に booch_github_asset_digest / booch_github_verify_asset を足した。digest が付いていない
(古いリリース)ときは警告して照合を飛ばす。API の取得に失敗したとき(レート制限など)と、digest が一致しない
ときは失敗にする
lib/github.sh は、lib/verify.sh が読み込まれていなければ自分で読み込む(github.sh だけを読む利用側を
壊さないため)
jobs/aws.sh に、AWS CLI v2 の古い版のディレクトリを削除する関数を足した(#22 )。公式インストーラの
install --update は前の版(1 版 約 270MB)を /usr/local/aws-cli/v2/ に残すので、job_aws で更新する
たびに溜まっていた
booch_aws_cli_prune: current 以外の使われていない版を sudo で削除する。初回の削除が大きく
ジョブのタイムアウトに掛かりうるので、job_aws の中では消さない。利用側の cleanup から呼ぶ
booch_aws_cli_stale_versions: 削除してよい版を 1 行ずつ出す(doctor などの表示用)。current の aws が
自分の版を名乗るときだけ候補を出し、実行中のプロセスが使っている版と、x.y.z 以外の名前や symlink は
候補にしない。/proc を読めず使用中の版を判定できないとき(sudo の失敗など)は、候補を出さずに非 0 を返す
導入先は BOOCH_AWS_CLI_ROOT で変えられる(既定 /usr/local/aws-cli/v2)
jobs/codex.sh に、Codex の共有デーモン(app-server)の版を CLI に合わせる機構を足した(#21 )。
job_codex が CLI を更新しても、動いているデーモンは自分用の codex で古い版のまま残り、Codex が起動時に
版のずれを警告していた
booch_codex_daemon_versions: "<cli> <app>" の 1 行を出す。デーモンが止まっていれば app は空、
取れなければ非 0(doctor などの表示用)
booch_codex_daemon_sync: 版がずれていれば y/N を聞いて codex app-server daemon update する。実行中の
作業が中断されうるので確認は省かない(非対話なら何もしない)。ジョブは非対話なので、利用側が booch_run の
後に主シェルから呼ぶ。入れ替えても版がそろわないときと、確認に使う lib/confirm.sh を読み込めないときは
1 を返す
Changed
README と install.sh のワンライナー、および install.sh が gh の keyring を取る curl に
--proto '=https' --tlsv1.2 を付けた(#20 )。リダイレクトで平文の http へ落ちることと、TLS の格下げを拒否する
Fixed
apt-get update が一部の repo の index を取得できなくても終了コード 0 を返すため、booch_apt_sync /
booch_apt_install と install.sh が取得失敗に気付けなかった(#19 )。-o APT::Update::Error-Mode=any
を渡して検出するようにした。この項目を知らない古い apt では無視され、これまでどおり動く
booch_apt_sync / booch_apt_install は、検出したときの扱いを環境変数 BOOCH_APT_UPDATE_ERROR_MODE で
選べる。既定の warn は [WARN] を出し、古い index のまま続行する(一時的な不調で setup 全体を止めない)。
strict にすると非 0 を返す。Release が無い、ロックを取れないといった、もともと update が非 0 になる
失敗は、warn でもこれまでどおり非 0 を返す。update の処理は booch_apt_update として公開した
install.sh は取得に失敗した時点で止まる(素の OS では、古い index のまま進むと後続の導入も失敗しやすいため)
You can’t perform that action at this time.