ビルド・サーバ
ふとビルドサーバっていう言葉を聞いて、なんなんだそれはと思ったので書いてみる。
よくわかっていない…。
ビルドサーバとは
ビルドサーバってググっても、ビルドサーバとはこれです、というような直接的な話は無い。IBM Knowledge Centerのページで、『ビルド・サーバーは、クライアントからソース・コードを受け取り、それを使用して実行可能ファイルを作成します。』と書いてあるぐらいだ。まあ、要はビルドサーバはこれのことなのだ。
ビルドとは
ビルド自動化
んじゃ、ビルドって何なの?ビルドは、プログラマがコードを書いて、それを実際に動くプログラムにしていくことだと思う。ビルドの中にコンパイルがあって、それをデプロイすることで実際に使えるプログラムになっていく、みたいな感じ?(ビルドとデプロイって結局なんやねん!?!?!???みたいな記事)
実際のビルドはコンパイルするだけでなく、ビルド番号の更新、最新のソースコードを取得、配布パッケージを作成、xUnitなどで自動化されたテストとかとか、いろいろと意味がある。チームの場合には、ローカル開発環境で開発してそれらをビルドしていくのがビルドサーバ?
ビルド自動化っていうことだと思うんだけど、ググってて、Jenkinsおじさんが出てきた。Jenkinsはご存知の通り、Javaで書かれたオープンソースの継続的インテグレーションツール。現場でアジャイル開発が行われている中で、テストを自動化させていくのに、CI/CDツールを使っていると思うんだけど、こういう環境自体がビルド・サーバなんだと思われる。
詳しい内容は他の人が説明しているのでそちらを参照してくださいー。
まとめ
開発、テストを効率的に行うために必要なサーバーのこと。
アジャイルにはビルドサーバー?