この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13306|答える: 0

[出典] ジェンキンスが簡単に紹介

[リンクをコピー]
掲載地 2018/11/22 9:59:36 | | | |
第1章 ジェンキンスとは何か?

ジェンキンスはスケーラブルで継続的統合エンジンです。

主に以下の用途で使用されます:

  • ソフトウェアプロジェクトを継続的に、かつ自動的に構築・テストすること。
  • 定期的に行われる作業を監視しています。


ジェンキンスが持つ特徴には以下があります:

  • インストールは簡単です。jenkins.warをデータベースサポートなしのservletコンテナにデプロイするだけです。
  • l 設定が簡単で、すべての設定は提供されるウェブインターフェースを通じて実現されます。
  • l 統合RSS/E-mailは、ビルド結果をRSSまたはメールで通知してビルド完了時に公開します。
  • 私はJUnit/TestNGのテストレポートを生成します。
  • 分散ビルドサポート Jenkinsは複数のマシンを一緒にビルド・テストできるようにします。
  • l ファイル認識:Jenkinsはどのjarがどのビルドで生成されたか、どのバージョンのjarがどのビルドで使われているかなどを追跡できます。
  • プラグインサポート:拡張機能もサポートしているので、チームの使い方に合ったツールを開発できます。


1 ジェンキンスの起源

継続的統合(CI)は、多くのソフトウェア開発チームがソフトウェア開発ライフサイクル全体を通じてコードの品質を確保することに注力する一般的な慣行となっています。 これはソフトウェア構築のプロセスを容易にし、より明確にするための実践です。 また、開発チームが次のような課題に対応するのに役立ちます:

  • l ソフトウェアビルド自動化:設定完了後、CIシステムはあらかじめ決められたスケジュールや特定のイベントに合わせてターゲットソフトウェアを構築します。
  • l 持続可能な自動チェックを構築する:CIシステムは新規または修正されたソースコードを継続的に取得できます。つまり、ソフトウェア開発チームが定期的に新たまたは修正されたコードをチェックする必要がある場合でも、CIシステムは新しいコードが元のソフトウェアの成功したビルドを妨げているかどうかを常に確認します。 これにより、開発者が相互依存するコードの変更を確認する時間と労力が減ります(簡単に言うと、笑)。
  • l 持続可能な自動テストを構築する:チェックの拡張部分を構築し、ビルド後にあらかじめ定められたテストルールを実行し、完了後に関連関係者への通知(メール、RSSなど)を発動します。
  • l 生成後のプロセスの自動化:自動化されたチェックやテストが正常に完了すると、ドキュメント作成、ソフトウェアのパッケージ化、コンポーネントのランタイムやソフトウェアリポジトリへのデプロイなど、ソフトウェアビルドサイクルで追加のタスクが必要になることがあります。 これにより、コンポーネントをより迅速にユーザーに提供できるようになります。
  • CIシステムを展開するために必要な最低要件は、利用可能なソースコードのリポジトリとビルドスクリプトを含むプロジェクトです。


以下の図はCIシステムの基本構造を要約しています。



システムの構成要素は以下の順序で動作しています:

1. 開発者がコードをソースコードリポジトリにチェックインします。

2. CIシステムは各プロジェクトごとに別々のワークスペースを作成します。 新しいビルドがプリセットまたはリクエストされると、ソースコードリポジトリから対応するワークスペースにソースコードを保存します。

3. CIシステムは対応するワークスペースでビルドプロセスを実行します。

4. (構成が存在する場合)ビルドが完了すると、CIシステムは新しいアーティファクトで定義された一連のテストを実行します。 完了時に関連関係者への通知(メール、RSSなど)を発動します。

5. (構成がある場合)ビルドが成功した場合、このアーティファクトはパッケージ化され、デプロイ対象(例:アプリケーションサーバー)に転送されるか、ソフトウェアリポジトリに新しいバージョンとして保存されます。 ソフトウェアリポジトリはCIシステムの一部であったり、ファイルサーバーや Java.net、SourceForgeなどのウェブサイトなどの外部リポジトリであったりします。

6. CIシステムは通常、リクエストに基づいて対応するアクションを開始します。例えば、即時ビルド、レポート生成、または一部の構築されたアーティファクトの取得などです。

ジェンキンスはそのようなCIシステムの一つです。 かつてはハドソンとして知られていました。

以下はジェンキンスを利用する理由です:

  • l すべてのCI製品の中で最もインストールと設定が簡単です。
  • l ウェブアクセスを基盤とし、ユーザーインターフェースは非常に親しみやすく直感的かつ柔軟で、多くの場合AJAXからの即時フィードバックを提供します。
  • l JenkinsはJava上で開発されており(Java開発者にとって非常に有用です)、Javaベースのソフトウェア構築に限定されません。
  • ジェンキンスには多数のプラグインがあります。 これらのプラグインはJenkinsの機能を大幅に拡張します。 これらはすべてオープンソースであり、ウェブインターフェースを通じて直接インストール・管理が可能です。


1.1 ジェンキンスの目的
ジェンキンスの主な目標は、ソフトウェア開発プロセスを監視し、問題を迅速に明らかにすることです。 したがって、開発者や関連職員が時間と労力を節約し、開発効率を向上させることができます。

開発プロセス全体を通じてCIシステムの主な役割は制御です。コードリポジトリの変更を検出すると、ビルドを実行する作業をビルドプロセス自体に委ねます。 ビルドが失敗した場合、CIシステムは関係者に通知し、その後リポジトリの監視を続けます。 登場人物は受動的に見えます。 しかし、問題はすぐに反映されています。

特に、以下の利点があります。

  • l ジェンキンス すべての設定はウェブインターフェースで行えます。 MAVEN_HOMEやメールなど一部の設定は一度設定だけで済み、すべてのプロジェクトを利用できます。 もちろん、XMLを修正することで設定することも可能です。
  • Mavenをサポートするモジュールについては、JenkinsがMavenを最適化しており、モジュールを自動的に認識できるようにし、各モジュールをジョブとして設定できます。 かなり柔軟です。
  • l テストレポート集約、すべてのモジュールのテストレポートをまとめ、結果は一目で明確に表示されます。これはほぼ不可能な作業です。
  • lアーティファクトフィンガープリントでは、各ビルドの結果が自動的に適切に管理され、設定なしで簡単に閲覧・ダウンロードが可能です。






先の:書籍:エラリー・クインの「ナショナル・ネーム・シリーズ」探偵小説傑作集
次に:Jekinsがどのように.NET Frameworkプロジェクトを展開するか
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com