2017-06-12 5 views
2

現在、シェフ管理ノードでサービスとして実行中のJenkinsのインスタンスを展開するのにJenkins supermarket cookbookを使用しています。これまで私は_master_war_レシピファイルを変更してJenkinsをインストールし、runitを使用してJenkinsをサービスとして開始し、必要なすべてのプラグインバージョンをインストールし、マトリックスベースのセキュリティを有効にして基本管理者アカウントを作成しました。また、ソース管理にBitBucketを使用していることにも注意してください。シェフ:Jenkinsスーパーマーケット調理帳の自動ジョブ配備

自動化されたJenkinsの展開の一部として自分のジョブを追加したいと考えています。私が理解するところでは、これを行う方法は、シェルフワークステーション上のディレクトリから管理対象ノード上のディレクトリ(シェフのキャッシュパス)にジョブ構成ファイルをコピーすることです。 Jenkins public supermarket cookbookのreadmeパー

:アクションを作成するには、ジェンキンスジョブconfig.xmlが必要です。このコンフィグレーションファイル は、ターゲットノードに存在し、有効なJenkinsジョブ コンフィグレーションファイルを保持している必要があります。 Jenkins CLIが実際に読み取って、 がこのファイルの独自のコピーを生成するため、この設定をJenkinsジョブの内側に書き込まないでください。 シェフのファイル キャッシュパスにそれらを入れることをお勧めします。

これらのジョブ構成は定期的に変更されるため、管理対象ノードに配置するためにシェフワークステーション上のジョブ構成ファイルの最新のコピーを維持するにはどうすればよいでしょうか?

シェルフのワークスペース上のジョブ構成ファイルのローカルコピーが管理対象ノードのシェフのキャッシュファイルパスにコピーされる必要があるという点で、クックブックのドキュメントを正しく理解していますか?

誰もが提供できる助けを前もってありがとうございます。

答えて

2

個人的には、私はチェンの代わりにジェンキンスの領域にジェンキンスの仕事をはるかに設定しています。ジェンキンスのコミュニティはいくつかの「コードとしてのジョブ」アプローチを開発しました。最も普及しているものはJob DSLJenkins Pipelinesであり、後者はおそらくより良い出発点です。

シェフの料理本まで残っているのは、シードジョブを定義することです。 「Bitbucket Organization Folder」プラグイン(およびBitBucketで組織を指し示す1つのジョブ)、またはジョブDSLのいわゆる「シードジョブ」用に、

パイプラインの自動セットアップに関しては、Torben Knerr's examplesをご覧ください。これは、実際の構築ジョブのために

  • パイプラインを(Jenkinsfile秒で定義されている)を使用しています
  • シェフの実際の実装についてのパイプラインジョブ(複数可)

を設定するためのジョブDSLシードの仕事例はa cookbook of mineです。 templateリソースは、料理書(templates/サブディレクトリ内)のファイルをjenkins_jobリソース(Jenkinsサーバー上)が取得する場所から、一時パスにコピーします。

だから私はわからないんだけど、あなたが得た場合、それが右について:

する(シェフのワークステーション上)

をジョブ設定ファイルのローカルコピーが必要になりますので、あなただけの必要それはあなたのワークステーションで一度それを料理本に追加するためのものです。

+0

私はあなたの助言に耳を傾け、可能な解決策としてJenkins Pipeline [Jenkinsfile](https://jenkins.io/doc/book/pipeline/getting-started/)を調査し始めました。助けてくれてありがとう@StephenKing。 – J0991

関連する問題