2016-08-30 4 views
0

Jenkinsジョブ中にWindows VMを(vsphereで)リセットして起動しようとしています。 vSphere Cloud Pluginを正常にインストールしました。私はinstructionsに続いて、Windowsマシンをjenkins-mvn-slaveとしてセットアップし、サービスとして実行するようにセットアップしました。JenkinsのWindows VMをvsphere経由で使用する

Launch Slave AgentのJenkinsのボタンをクリックすると、VMがrevert snapshotを実行してから、power on virtual machineを実行することがわかりました(vsphereでは)。マシンに接続すると、Jenkinsサービスが自動的に開始されることがわかります。しかし、ジェンキンスに戻って、それはSlave did not come online in allowed timeと私に伝えます。

私の奴隷のためのいくつかのキー設定: Force VM launch: Checked Wait for VMTools: Not checked Delay between launch and boot complete: 120 Secondary launch method: Launch slave agents view Java Web Start

バージョン: Jenkins: 1.596.2 vSphere: 5.5.0 Windows: Server 2012 R2 Standard, Build 9600 vSphere plugin: 2.7

私は何をしないのですか?

答えて

1

私は投稿して以来、私は多くの面倒をしてきましたが、私は次のことが間違っていたと思います。まず、VMを通常のスレーブエージェントとして動作させました。一度それが働いたら、vsphere-cloud-slave-agentと同じ設定を試みました。私はスレーブエージェントとしてホストを設定することが "エージェント名特有"であることを認識していませんでした。

だから、私は、ジェンキンスサービスをアンインストールしたマシンにログインし、「vSphereのクラウドスレーブ・エージェント」を立ち上げ、および以前にinstructionsを述べたに指定されている(のjavawsを実行しました。

私が遭遇した他の落とし穴のカップル(最初のポストに関連するが、これを読み、誰かに多分関係ありません):。ジェンキンスジョブはインタラクティブではありませんので、

  1. 私はもともとパスワードマネージャとのgitをインストール残念ながら、それはgit cloneにぶら下がりました私はgitをアンインストールして再インストールしようとしましたが、それはdですjenkinsのスレーブがどのようなユーザーであっても、問題を解決してはいけません。私は以前のスレーブイメージに戻ってそこからgitをインストールする必要がありました。 (私はおそらく、どのユーザーがジェンキンスレーブを実行しているのかを把握しておき、そこに目的のパスワードを入力している可能性があります。)各ジョブに対してクリーンなVMを実行したかったのです。私は決してこれを考え出しませんでした。 AvailabilityTake this slave on-line when in demand and off-line when idleに設定すると、それは良いスタートでした。しかし、時間を0と0に設定すると、マシンは常に再起動していました。時間を1と1に設定すると、バックツーバックジョブがキューに入れられて実行されていない限り、マシンはほとんど私が望むものを実行します。

関連する問題