ビルド時間の制限は2019年末ごろから始まったばかりなので調べてもあまり情報がヒットしない。
というわけで、このサイトの今月分をレポートする。
今月は約半分(158分)だったが、もしかしたらギリギリかも?という印象を受けた。
なんとNetlify CMSのEditorial Workflow(下書きモード)に下書きを投稿するたびにビルドが行われていたのだ!
これを気をつけないと時間をオーバーしてしまいそうだ。
使用状況画面までの遷移が少しわかりにくくなっているのでスクリーンショット撮影した。
まずはチームのトップページへ。
チーム画面からBilling
を選択する。課金情報という意味だ。
ここで各サイトのページに飛んでしまうとメニューが変わってしまうので分からなかった。
すると一番最初のページに表示されている。
厳密には私は18日(本日)で月をまたいだので矢印の下(Build minutes)という項目が空白になっているが、昨日はここにも数字が表示されておりクリックすると日毎の詳細が見ることができた。
矢印がある箇所のEffective from(~月日から実施)が2019の7月となっている(本日は2020年3月18日)
プラン名の項目なので恐らく「先月利用分」が表示されているのだろうと見ているが、この記事を執筆している間にも増えている。大丈夫なのだろうか?
記事を投稿して約2週間で半分使っているのでぎりぎりかちょっと足りないぐらいだ。
3月頭頃にBLOGの制作テストで何度もビルドしたことを考えると1日1記事程度であれば300分で足りそうな印象はある。
しかしこの表記だと本当にひと月でリセットされるのかと疑問になるが、公式の価格ページを見ると間違いなくひと月だ。
これはNetlifyの罠だった。
Editorial Workflow(下書きのようなもの)を導入すればビルドは行われないと思っていたが、実際に下書きを保存するたびにビルドが行われてしまっているようだ。
これでは1記事上げるまでに何度もビルドされてしまう(一発で書き上がる記事などない)
Netlifyでは「Deploy Preview」という機能がデフォルトでオンになっているらしい。プルリクエストがあるたびにビルドする機能が悪さしているようだ。
オフしておけば下書きを更新する度にビルドされることはなくなる。
以上で自動デプロイされなくなる。記事をPublishした時だけビルドが走るようになる。
当然ではあるがプルリクエストに反応して自動デプロイしたいのであればオフにしないほうが良いだろう。
2022/06/07更新
当BLOG運営に置いてはどうしてもこの制限を超えてしまうことがわかっている。
そこで現在では、ビルド時間を消費しない方法としてNetlicy-cls
を利用してローカルでビルド > デプロイするという方法を取っている。
Netlify-CLIを使ってGatsby.jsのサイトをローカルでビルドしてデプロイする | 謎の技術研究部
一度設定してしまえばビルドとデプロイがとてつもなく簡単になるので試してみてほしい。