4

この質問は長く多面的なので、簡単な概要から始めてから、私が試したすべてのことと、なぜそれらが機能しないのか、何が間違っているのかについての質問を詳細に示します.

概要

BitBucket のプライベート リポジトリでソース コードのビルド ジョブを Hudson にセットアップしようとしています。スタック オーバーフローには同様の質問がたくさんありますが、さまざまな理由から、私のニーズに対応するものはありません。

ssh の代わりに https を使用してアクセスしたいのですが、ハドソンで https を使用してアクセスする方法はないようで、Web 上のすべての人が ssh で販売されているようです。それで、sshで動作させようとしましたが、無駄でした。

ですから、私の中心的な質問は次
のとおりです。ハドソンのプライベート BitBucket リポジトリにアクセスするにはどうすればよいですか?

ノート

  • Jenkinsの方が優れていることはわかっていますが、確立されたHudson Serverを使用しています。Jenkins への切り替えに関するアドバイスはありません。
    タイトルとタグに Jenkins を含めました。これは、両方に適用できる解決策がほとんどないためです。
  • いくつかの行き止まりに遭遇したため、上記の中心的な質問を詳しく説明する「サブ質問」もいくつか尋ねます。それらについて教えていただければ、さらに感謝します。

問題

Hudson 用の Git プラグインを使用し、次のように構成します。

Git 構成

これは非公開リポジトリなので、何らかの認証が必要です。もちろん、ビルドは失敗しました。スタック トレースの関連部分は次のとおりです。

ERROR: Error cloning remote repo 'origin' 
hudson.plugins.git.GitException:
Could not clone https://TJamesBoone@bitbucket.org/OtherUser/projectname.git
Caused by: hudson.plugins.git.GitException:
org.eclipse.jgit.api.errors.TransportException:
https://TJamesBoone@bitbucket.org/OtherUser/projectname.git: not authorized

質問: Hudson 用の Git プラグインがプロジェクト構成にプライベート リポジトリの認証用の場所がないのはなぜですか? 結局、SVN プラグインは認証を処理できます。正当な理由はありますか?

私が試したこと

https URL の代わりに ssh URL を使用するようにプロジェクトを再構成しました。

ssh url を使用した Git Config

次に、Atlassianのこのチュートリアルを使用して ssh キーを作成しました。次に、BitBucket のプロジェクトに ssh キーを追加しました。

再度ビルドを試みたところ、次のスタック トレース (関連部分) が得られました。

ERROR: Error cloning remote repo 'origin' 
hudson.plugins.git.GitException:
Could not clone git@bitbucket.org:OtherUser/projectname.git
Caused by: hudson.plugins.git.GitException:
org.eclipse.jgit.api.errors.TransportException:
git@bitbucket.org:OtherUser/projectname.git:
UnknownHostKey: bitbucket.org. RSA key fingerprint is
97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40

次に、利用可能な 2 つの ssh プラグイン、Publish Over SSH プラグインと SSH プラグイン (ここで学んだこと) を使用して Hudson を構成する必要があると考えました。

しかし、私はそれらを使用する方法を理解できません。まず、Publish Over SSH プラグインは必要ないと思います。公開しようとしているのではなく、プルしようとしているだけだからです。次に、SSH プラグインが機能しません。私はこれをやってみました:

SSH サイト構成

しかし、ここで問題なのは、接続できないことです。さらにポート番号が欲しいのですが、何も入力しないとデフォルトで22が使われます。私はそれをどうするかわかりません。

質問: このプライベート BitBucket リポジトリから正常にプットするために、SSH サイトを構成する必要さえありますか?

概要

Hudson のプライベート BitBucket リポジトリにアクセスするにはどうすればよいですか?

私の Hudson ビルドでは、このプライベート BitBucket リポジトリからプルできる必要があります。ssh で動作させることができないようです。また、パスワードを入力する場所がないため、https を使用できるかどうかさえわかりません。いずれかの方法で誰かが私を助けてくれれば、私は幸せです。

4

1 に答える 1

2

HTTPS 接続の場合、次のような HTTPS クエリ内でパスワードも定義する必要があります。

https://TJamesBoone:**PASSWORD**@bitbucket.org/OtherUser/projectname.git

SSH 接続については、前述のように、DOC が表示されるはずです : https://confluence.atlassian.com/display/BITBUCKET/Set+up+SSH+for+Gitそれ。まず jenkins ユーザーでssh git@bitbucket.orgを使用して git にログインすることを忘れないでください。

Windowsで実行していないため、SSHケースの詳細情報を提供できません。

それが機能しない場合は、次のいずれかをお知らせください: * jenkins がサービスとして実行されている * そうでない場合、jenkins を実行するために使用される Web サーバーは何ですか

于 2014-06-11T22:39:11.947 に答える