build minuteとは?CIの請求を構成する単位
build minuteはCIの標準的な課金単位です: runner時間の1分で、しばしばOSの係数で乗算され切り上げられます - まさにここから予想外のCI請求が生まれます。
ホスト型CIは分単位で課金するので、請求はbuild minuteに料率を掛けただけです。巧妙なのは、「1分」のjobを文字どおりの1分のコンピュートよりずっと高くする倍率と切り上げにあります。
minuteの数え方
runnerがjobに費やす実時間で課金され、通常は最も近いminuteに切り上げられます。10秒のjobと50秒のjobがどちらも1minuteとして課金されえます。
OSの倍率
OSごとに料率が異なります: Linuxがベースライン、WindowsがおよそLinuxの2倍、macOSが大きな倍率です。つまりbuild minuteは単一の価格ではなく、jobがどのOSで動いたかに大きく依存します。
minuteが浪費される場所
- 多数の短いjobでのjobごとの切り上げ(matrixのfan-out)。
- 不安定なビルドのre-runが、1つの結果のためにminuteを2倍・3倍にする。
- 実時間に含まれるキューとプロビジョニングのオーバーヘッド。
- 軽い作業にプレミアムのminuteを燃やす過大なrunner。
minuteのコストを削る
請求を最も動かすレバーは2つ: minuteあたりの料率を下げることと、浪費されるminuteを減らすことです。Latchkeyはその両方を攻めます - 通常GitHubホスト型よりminuteあたりおよそ70%安価で、加えて不安定なre-runを潰す自己修復により、1つのグリーンなビルドに二重に支払うのをやめられます。
minute vs 秒
minute単位の切り上げは、matrixが展開する多数の短いjobで最も強く効きます。秒単位の課金は各jobを丸ごと1minuteに切り上げる代わりに実際の所要時間で課金するので、短いjobが支配的なワークロードでは請求を大きく削れます。
重要なポイント
- build minuteはrunner時間の1分で、CIの課金単位です。
- OSの倍率により、WindowsとmacOSのminuteははるかに高くつきます。
- 切り上げ、re-run、過大なrunnerがminuteを浪費します。
- 低い料率と浪費されるminuteの削減が請求を下げる方法です。
関連ガイド
What Is Per-Job Runner Billing? Paying for Work, Not IdlePer-job runner billing charges for the runner time a job actually uses, often per second. Learn how it differ…
What Is Runner Utilization? Are You Paying for Idle Time?Runner utilization is the share of paid runner time doing useful work. Learn how low utilization wastes money…
What Is a Larger GitHub Runner? More Cores, Higher PriceA larger GitHub runner is a hosted runner with more vCPU and memory than the standard size, billed at a premi…
What Is a Managed CI Platform? Runners as a ServiceA managed CI platform operates your runner fleet end to end - provisioning, scaling, images, caching, and rel…