新しいビルドジョブを作成する方法 Jenkins フリースタイルプロジェクト

⚡ スマートサマリー

Jenkins Freestyle Project は、ソースコードのチェックアウト、ビルド手順、ビルド後のアクションを 1 つの構成可能なタスクにバンドルする、繰り返し可能なビルド ジョブです。 Jenkins パイプラインコードを書かずに利用できるWebインターフェース。

  • 🔘 定義: フリースタイルの仕事は Jenkins汎用プロジェクトタイプ、フォームを通じて構成され、 Jenkinsファイルにソフトウェアを指定する必要があります。
  • ☑️ 受験資格: ランニング Jenkins まず、コントローラー、ビルドエージェント上のJDK、Gitプラグイン、およびアクセス可能なリポジトリが必要です。
  • 10のステップ: ログインし、新しいアイテムを作成し、名前を付け、リポジトリを設定し、ビルドステップを追加し、保存してビルドし、コンソール出力を確認します。
  • 🧪 実例: GitHub から取得した HelloWorld プロジェクトは javac でコンパイルされ、内部の java で実行されます。 Windows バッチビルドステップ。
  • 🛠️ 設定マップ: 6つのフォームセクション — 一般、情報源 Code 管理、ビルドトリガー、ビルド環境、ビルドステップ、ビルド後のアクションなど、あらゆるオプションを網羅しています。
  • ⚙️ 範囲制限: フリースタイルジョブは単一タスクの自動化に適していますが、複数段階のデリバリー作業はバージョン管理されたパイプラインジョブで行うべきです。

新しいビルドジョブを作成する方法 Jenkins フリースタイルプロジェクト

何が Jenkins フリースタイルプロジェクト?

Jenkins フリースタイルプロジェクト これは、ステップとビルド後のアクションを含む、繰り返し可能なビルド ジョブ、スクリプト、またはパイプラインです。これは、複数の操作にまたがることのできる改良されたジョブまたはタスクです。ビルド トリガーを構成でき、プロジェクト ベースのセキュリティを提供します。 Jenkins プロジェクト。また、ステップやビルド後のアクションを作成するのに役立つプラグインも提供しています。

実行できるアクションの種類 Jenkins ビルドステップまたはビルド後のアクションはかなり限られています。 Jenkins この問題を解決するのに役立つフリースタイルプロジェクト。

下の図はフリースタイルジョブをより広い 継続的インテグレーション ソースコードのチェックアウトから、ビルド後の結果報告までの一連の処理をループ処理します。

仕事を作る手順 Jenkins フリースタイルプロジェクト
ジョブの作成方法 Jenkins

作成の前提条件 Jenkins フリースタイルジョブ

以下の10のステップが最後まで正しく機能するためには、4つの条件が満たされている必要があります。これらの条件のいずれかが欠けていると、通常、最初のフリースタイルビルドが青いボールではなく赤いボールで失敗する原因となります。

  • ランニング Jenkins コントローラ。 Jenkins デフォルトではポート8080でリッスンします。 Jenkins まだ実行されていません。 インストール手順 最初。
  • ビルドを実行するマシンにJDKがインストールされていること。 実行例はコンパイルされます Javaので、 javac ジョブを実行するコントローラーまたはエージェントのPATHに設定されている必要があります。1行のコマンドで確認してください。 java -version 他のものを追加する前に、ビルド手順を実行してください。
  • Gitプラグイン。 その Gitの このオプションはソースの下にのみ表示されます Code プラグインのインストール後の管理は、 管理 Jenkins プラグイン.
  • アクセス可能なリポジトリ。 公開HTTPS URL 認証情報は不要です。プライベートリポジトリには、以下の場所に保存された認証情報が必要です。 Jenkins まず最初に、そうしないと最初のビルド時にチェックアウトが失敗します。

アカウント ジョブ/作成 新規シングルユーザーの場合、許可も必要です。 Jenkins 管理者アカウントには既にそれが付与されています。

新しいビルドジョブを作成する方法 Jenkins

フリースタイル ビルド ジョブは、柔軟性が高く、使いやすいオプションです。 あらゆるタイプのプロジェクトに使用できます。 セットアップは簡単で、そのオプションの多くは他のビルド ジョブに使用されます。 以下は、ジョブを作成するための段階的なプロセスです。 Jenkins.

ステップ1)ログイン Jenkins

作成するには Jenkins フリースタイルジョブにログインして、 Jenkins ダッシュボードにアクセスするには Jenkins インストールパス。通常は、localhost でホストされます。 http://localhost:8080 あなたがまだ インストール Jenkins 別の経路では、適切なものを使用してください URL ダッシュボードにアクセスするには、以下を参照してください。 Jenkins 雇用創出の例。

Jenkins ダッシュボードに到達 Jenkins ログイン後のインストールパス

ステップ 2) 新しいアイテムを作成する

クリック "新しいアイテムダッシュボードの左上にある「」をクリックしてください。下のスクリーンショットは、そのリンクの位置を示しています。

左上にある「新しいアイテム」リンク Jenkins ダッシュボード

ステップ3) 商品の詳細を入力する

次の画面で、

  1. 作成したいアイテムの名前を入力します。 このデモでは「Hello world」を使用します。
  2. フリースタイルプロジェクトを選択
  3. 「OK」をクリックします

「OK」をクリックする前に、フリースタイルプロジェクトを選択したアイテム名ボックス

ステップ4) プロジェクトの詳細を入力する

テストしたいプロジェクトの詳細を入力してください。開いた設定ページは以下のとおりです。

プロジェクトの詳細を入力 Jenkins フリースタイルジョブ設定ページ

ステップ5)リポジトリに入る URL

出典元 Code 管理、リポジトリを入力してください URLテストリポジトリは以下の場所にあります。 https://github.com/kriru/firstJava.git

ソース Code Gitテストリポジトリを含む管理セクション URL 入力されました

ローカル リポジトリを使用することもできます。

GitHubリポジトリが非公開の場合、 Jenkins まずGitHubでログイン認証情報を検証し、その後で初めてGitHubリポジトリからソースコードを取得します。

ステップ6) 設定を微調整する

必要な情報をすべて入力したので、次はコードを作成します。 ビルド セクションを参照して、必要なときにコードをビルドします。 設定した時間に定期的にビルドが実行されるようにスケジュールすることもできます。

建設中、

  1. クリック "ビルドステップを追加 
  2. クリック "実行する Windows バッチコマンド」を選択し、ビルドプロセス中に実行するコマンドを追加します。

利用可能なビルド手順を一覧表示するドロップダウンメニューは次のようになります。

フリースタイルジョブ設定ページでビルドステップの追加ドロップダウンが開きました

⚠️ バージョンノート: 最近 Jenkins このエリアのリリースラベル ビルド手順 ではなく 建設Linux または macOS エージェントの同等のオプションは シェルを実行するボタンは依然として ビルドステップを追加.

ここでは、Java コードをコンパイルするための Java コマンドを追加しました。

次の Windows コマンドを追加しました:

javac HelloWorld.java
java HelloWorld

入力された2行のコマンドボックスを以下に示します。

実行する Windows javacコマンドとjavaコマンドを含むバッチコマンドボックス

ステップ7) プロジェクトを保存する

すべてのデータを入力したら、

  1. 詳しくはこちら Apply
  2. Save プロジェクト。

ステップ 8) ソースコードをビルドする

次に、メイン画面の左側にある [今すぐビルド] ボタンをクリックして、ソース コードをビルドします。

フリースタイルプロジェクト画面の左側にある「今すぐ作成」ボタン

ステップ9) ステータスを確認する

[今すぐビルド] をクリックすると、実行したビルドのステータスが [ビルド履歴] で確認できます。

実行されたフリースタイルビルドのステータスを表示するビルド履歴パネル

ステップ 10) コンソール出力を確認する

ビルド番号をクリックし、次にコンソール出力をクリックすると、実行したビルドのステータスが表示されます。以下の手順に従って正しくセットアップしていれば、成功メッセージが表示されるはずです。 Jenkins 新しい求人例を作成します。

ビルド完了の成功メッセージを表示するコンソール出力画面

要約すると、GitHub上でホストされているHelloWorldプログラムを実行しました。 Jenkins リモートリポジトリからコードを取得し、指定した頻度で継続的にビルドします。

Jenkins フリースタイルプロジェクト構成セクションの説明

上記の手順では、HelloWorldの例に必要なフィールドのみを取り上げています。設定ページ自体は6つのフォームセクションに分かれており、それぞれのセクションが何を持っているかを把握しておけば、残りのオプションをはるかに簡単に見つけることができます。

セクション 制御するもの 典型的な設定
全般 ジョブの説明、古いビルドの破棄、パラメータ、およびジョブが特定のエージェントで実行されるかどうか Descriptイオンとビルド保持制限
ソース Code マネジメント どのリポジトリをどの認証情報とブランチでチェックアウトするか Git、HTTPS URL、 ブランチ */master or */main
ビルドトリガー 自動的にビルドを開始するものは何ですか? SCMを定期的にポーリングするか、GitHubのWebhookを使用する
ビルド環境 ビルド全体にラッパーを適用 ビルド開始前にワークスペースを削除し、コンソールログにタイムスタンプを追加する
ビルド手順 作業を実行するコマンドは上から下へ実行されます 実行する Windows バッチコマンド、またはシェルの実行
ビルド後のアクション 手順が完了した後に何が起こるか、結果がどうであれ Archi成果物を確認し、テストレポートを公開し、メールを送信する

2つの習慣は、後々のデバッグを大幅に節約します。ビルド手順は実行する必要のある順序で追加します。 Jenkins それらを上から順に処理し、最初のエラーが発生した時点で停止します。その後、ビルド後の処理として、ビルドによって生成されたものをアーカイブします。これは、ワークスペースが次のビルドで再利用される一方で、アーカイブされた成果物はビルド番号ごとに保持されるためです。

フリースタイルプロジェクト vs パイプライン:どちらを使うべきか?

新規アイテム画面にはフリースタイル以外のプロジェクトタイプもあり、常にそれが最適なタイプとは限りません。以下の表は、それを パイプラインジョブ ほとんどの現実的な選択を左右する点について。

比較のポイント フリースタイルプロジェクト パイプライン
どのように定義されるか ジョブに保存されているWebフォーム config.xml コントローラーで A Jenkinsアプリケーションコードとともにコミットされたファイル
変更履歴 に保持されています Jenkinsリポジトリ外 Rev他のソースファイルと同様に閲覧およびバージョン管理されます
段階と並行作業 ビルド手順の単一のフラットリスト 名前の付いたステージ、並行する分岐、およびステージビュー
学習曲線 スクリプトは不要です 宣言型パイプライン構文が必要です
最適 1回のコンパイル、1回のスクリプト、1回のスケジュールされたタスク、または学習 Jenkins 環境をまたいだ複数段階の構築、テスト、デプロイフロー

実用的なルール:作業が単一のタスクで、まだツールの使い方を学んでいる間はフリースタイルで作業し、作業を CI / CDパイプライン 第二段階に成長したり、コードと併せてレビューする必要が生じたりしたらすぐに、ペアを組むチーム。 Jenkins ビルドツールでは、その段階にすぐに到達することが多い。 Mavenと Selenium はスイッチの一般的なトリガーであり、同じ理屈はあらゆる 自動化テスト 複数のフェーズで実行されるスイート。

よくあるご質問

コンソール出力に原因が表示されます。よくある原因は、エージェントのPATHにjavacがない、プライベートリポジトリに認証情報が保存されていない、ブランチ名が間違っている、の3つです。報告された行を修正してから、再度「今すぐビルド」を実行してください。

ビルドトリガーを開いてチェックを入れる 定期的に構築する次に、次のような cron 構文を入力します。 H 2 * * * 毎晩のランニングのために。 H 負荷を1時間全体に分散させる。 SCM の投票 同じ構文を使用しますが、リポジトリが変更された場合にのみビルドを実行します。

選択する シェルを実行する 「ビルド ステップの追加」メニューから「実行」ではなく「ビルド ステップの追加」メニューから Windows バッチコマンド。表示されるオプションは、ジョブが関連付けられているコントローラーまたはエージェントのオペレーティングシステムによって決まり、ユーザー自身のマシンには依存しません。

トークンまたはSSHキーを一度保存​​します 管理 Jenkins 認証情報次に、ソースの「認証情報」ドロップダウンからそれを選択します。 Code 管理部門。 Jenkins チェックアウト前に検証を行うため、認証情報に誤りがあるとビルドが即座に失敗します。

機械学習ツールはコンソールログを読み取り、繰り返し発生するエラーをクラスタリングすることで、真のコンパイルエラーと不安定なエージェントやタイムアウトを区別します。このトリアージにより、長いログを手動でスクロールする代わりに、重要な1行だけを特定できます。

GitHubコパイロット ビルドステップ内でバッチファイルまたはシェルスクリプトを作成し、CLIで失敗したコンソールログを要約できます。設定フォームを直接操作することはできないため、保存する前に生成されたコマンドをすべて確認してください。

追加 Archi遺物 ビルド後のアクションとして、次のようなパターンを指定します。 **/*.class. Archivedファイルはビルド番号ごとに保存されるため、ワークスペースが再利用されたり、次の実行時にクリーンアップされたりしても保持されます。

各仕事は JENKINS_HOME/jobs/<job-name>フォーム設定で config.xml それぞれが builds/そのフォルダをバックアップするだけで、ジョブの移動や復元が可能になります。