日本語版
最新ニュース
企業

継続的インテグレーションを開発者マシンに戻します

Rubocop スタイルのルール、Brakeman セキュリティ スキャン、モデル コントローラー システム テストの実行の間に、リモートの BuildKite ベースの継続的インテグレーション セットアップで、コード変更が HEY に出荷できる状態であることを確認するのに約 5 分 30 秒かかります。 私の Intel 14900K ベースの Linux ボックスでは、これを半分以下の時間で実行できます (M3 Max はそれほど遅くありません!)。 したがって、リモート ランナーを削除し、37signals で開発者マシンに継続的統合を戻すだけです。過去 5 ~ 7 年ほどでマルチコア開発マシンがどれほど大きな進歩を遂げたかは注目に値します。 これらすべてのチェックと検証をローカル マシンで適切な時間内に実行することは、少し前までは考えられなかったでしょう。 しかし、14900K には 20 以上のコアがあり、M3…

継続的インテグレーションを開発者マシンに戻します

1714452360
2024-04-29 18:40:53

Rubocop スタイルのルール、Brakeman セキュリティ スキャン、モデル コントローラー システム テストの実行の間に、リモートの BuildKite ベースの継続的インテグレーション セットアップで、コード変更が HEY に出荷できる状態であることを確認するのに約 5 分 30 秒かかります。 私の Intel 14900K ベースの Linux ボックスでは、これを半分以下の時間で実行できます (M3 Max はそれほど遅くありません!)。 したがって、リモート ランナーを削除し、37signals で開発者マシンに継続的統合を戻すだけです。

過去 5 ~ 7 年ほどでマルチコア開発マシンがどれほど大きな進歩を遂げたかは注目に値します。 これらすべてのチェックと検証をローカル マシンで適切な時間内に実行することは、少し前までは考えられなかったでしょう。 しかし、14900K には 20 以上のコアがあり、M3 Max には 16 コアがあり、性能の低い M2 MacBook でも 8 コアがあります。これらはすべて、2010 年代半ばにローカルで実行するのは空想的に思えたであろう膨大な量の並列処理を実行できます。

HEY もかなり充実したコードベースです。 約 55,000 行の Ruby コード。約 5,000 のテスト ケースと、さらに 300 のシステム テストで検証されています。 事実上、これらのテストはすべてフルスタックを通過し、データベースにアクセスします。 これらは徹底的に嘲笑されているわけではありません。

私にとって、最新の開発者向け CPU のパフォーマンスの向上で最も満足のいく部分は、スタックを簡素化できることです。 リモート CI セットアップのインストール、操作、および管理は非常に複雑です。 独自のハードウェアでそれを実行し、その複雑さに直接対処するか、クラウドベースのセットアップに鼻からお金を払うかのどちらかです。 簡素化の排水溝にすべてを流すことができるようになったのは、驚くべき前進です。

いつものように、単純化された未来は均等に分配されません。 Shopify や GitHub のような企業が、数百万行のコードに対して完全なテストをローカルですぐに実行できるようになるとは思えません。 しかし、すべての Web アプリの 99.99% は、それらの巨大企業よりも広さの点で HEY にはるかに近いです。 また、小規模なチームでは、可動部品を可能な限りすべて取り除く必要があります。 アプリケーションが必要とするものよりも複雑なスタックを決して望んではいけません。

だから私たちはそれらを燃やし続ける必要がある 複雑さの架け橋 向こう側に着いたら。 ここ 37signals にあるリモート継続的インテグレーション ブリッジのすべてに火をつけるのが待ちきれません。 進歩はかがり火です。

#継続的インテグレーションを開発者マシンに戻します

執筆者について: nipponese

Nipponese News編集部は、国内外のニュースを日本語で分かりやすくお届けします。