Mercurial リポジトリをクローンするための認証 Hudson /Jenkins の設定方法 質問する

Mercurial リポジトリをクローンするための認証 Hudson /Jenkins の設定方法 質問する

mercurial をインストールして試した後、プロジェクトをビルドできるように Hudson でリポジトリをクローンしようとしています。

現時点では次のタスクが機能します。

  • 外部ホストに同期すると、そのホストにコードが表示されます。

現在、ホスト上のコードにアクセスできるように hudson / jenkins を設定しようとしています。

しかし、残念ながらエラーが発生しています。

Started by user anonymous
$ hg clone --rev default https://bitbucket.org/*/testproject "F:\Hudson\jobs\testproject\workspace"
abort: http authorization required
ERROR: Failed to clone https://bitbucket.org/*/testproject
[workspace] $ hg log --rev . --template {node}
java.io.IOException: Cannot run program "hg" (in directory "F:\Hudson\jobs\testproject\workspace"): CreateProcess error=267, The directory name is invalid
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
    at hudson.Proc$LocalProc.<init>(Proc.java:244)
    at hudson.Proc$LocalProc.<init>(Proc.java:216)
    at hudson.Launcher$LocalLauncher.launch(Launcher.java:698)
    at hudson.Launcher$ProcStarter.start(Launcher.java:329)
    at hudson.Launcher$ProcStarter.join(Launcher.java:336)
    at hudson.plugins.mercurial.MercurialSCM.joinWithPossibleTimeout(MercurialSCM.java:298)
    at hudson.plugins.mercurial.HgExe.popen(HgExe.java:191)
    at hudson.plugins.mercurial.HgExe.tip(HgExe.java:171)
    at hudson.plugins.mercurial.MercurialSCM.calcRevisionsFromBuild(MercurialSCM.java:254)
    at hudson.scm.SCM._calcRevisionsFromBuild(SCM.java:304)
    at hudson.model.AbstractProject.calcPollingBaseline(AbstractProject.java:1186)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1175)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:523)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:418)
    at hudson.model.Run.run(Run.java:1362)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:145)
Caused by: java.io.IOException: CreateProcess error=267, The directory name is invalid
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
    ... 18 more
Finished: FAILURE

ユーザー名 x とパスワード y を使用してデータにアクセスするように Hudson に指示するには、どのような操作を行う必要がありますか?

編集済み=> ssh を統合する方法を見つけました。

ベストアンサー1

httpsの代わりにSSHを使用

PuTTYのウェブサイトからputty.exe、puttygen.exe、pageant.exe、plink.exeをダウンロードします。puttygenを起動してキーを生成します。OPENSSHフォーマット(ハドソン形式) (=>Svn + SSHの使い方

「秘密鍵を保存」ボタンをクリックして、.PPK ファイルをどこかに保存します。「公開鍵を保存」ボタンをクリックして保存します。

ウェブサイトにアクセスし、公開SSHキーを入力します。

pageant.exe を実行します。ステータス トレイにページェント アイコン (帽子をかぶったコンピューター) が表示されます。

ページェントアイコンを右クリックして、「キーの追加」を選択します。先ほど保存した .PPK ファイルを選択し、そのパスフレーズを入力します。

以下 (最後の部分はコピー) は、Ted Naleid (ありがとうございます!) のブログから引用したもので、こちらでご覧いただけます。ハドソンをあなたの...に接続します

HudsonにMercurialプラグインをインストールする

後はMercurialプラグインをHudsonにインストールするだけです。ブラウザでhttp://IPアドレスを入力してください:8080ハドソンが出てくるはずだ。

「Hudson の管理」をクリックし、「プラグインの管理」に進みます。「利用可能」タブに移動し、「Hudson Mercurial プラグイン」をチェックして、「インストール」ボタンをクリックします。Hudson は再起動を促し、その後インストールされます。

その後、新しいジョブを作成すると、「ソース コントロール管理」セクションに新しい「mercurial」オプションが表示されます。それを選択し、「リポジトリ URL」フィールドに ssh URL を入力します。次に、「ブランチ」フィールドに「default」を入力し、ジョブの残りの部分をセットアップして、コードをビルド/テストします (読者の皆さんに演習を残しておきます)。

そして、これが最初の成功したビルドです!最初の成功したビルド

結論: これは、インターネット上に散らばっている小さなブログ投稿の要約です。この投稿が、Hudson と Mercurial の起動に役立つことを願っています。

おすすめ記事