Jenkinsをセットアップしたばかりで、Stashにいくつかのリポジトリがあります。 jenkinsに「Gitプラグイン」をインストールしました。これでリポジトリのURLを入力できますが、資格情報を入力するものがありません。
それを使用することが可能です
http://username:password@mydomain/xx/yy.git
しかし、それは私がやりたくないことです。
認証するために他に何ができますか?
私はあなたを助けるかもしれないこのstashプラグインの作者です: https://github.com/palantir/stashbot
Readmeから選択的に取得:
Jenkinsを使用するには、最初に次のjenkinsプラグインをインストールする必要があります。
次に、プラグインSDKを使用してプラグインをビルドしてインストールします(詳細はreadmeを参照してください)。
次に、stash管理者はStashbot管理ページに移動し、jenkinsサーバー構成を作成します。ここで、jenkinsサーバーのURL、ユーザー名/パスワードなどの詳細を指定します。
次に、リポジトリごとに、リポジトリ管理者用の「StashbotCIAdmin」リンクが表示されます。そこから、[有効]チェックボックスをオンにして、ビルドするブランチ(正規表現を介して)と、ビルドを実行するために実行するコマンド(オプションで検証および公開)を指定できます。
この時点以降、残りは完全にセルフサービスになります。すべてのリポジトリ管理者は、そのフォームに入力することでプロジェクトに「CIを持つ」ように要求でき、ジョブはjenkinsサーバーに自動的に作成されます。
お役に立てば幸いです。
Jenkinsビルドを実行するユーザーのSSHキーを設定し、StashのリポジトリのSSHキーに追加します。手順については、 Stash docs を参照してください。
ガレスの答えに追加する2つのこと。
SSHキーの使用は、ユーザー名/パスワードをハードコーディングするよりも間違いなく優れていることに同意しますが、CIに関しては、Stash(現在) より適切にスケーリング HTTPを使用することを言及する価値があります。ビルドがかなりある場合は、通常、HTTPを使用することをお勧めします。現在、SSHをサポートするようにGitキャッシュのサポートを拡張しているため、これは問題ではなくなりました。
やや関連して、次の feature を監視して投票することに興味があるかもしれません。これにより、CI固有のキーの作成が容易になります。
最後に、ビルドアイコンをStashに表示することは驚くほど便利です。まだ読んでいない場合は、次のプラグインを確認する必要があります。
Jenkins用の「Gitプラグイン」のバージョン2.0以降、sshとユーザー名/パスワードの両方に必要な資格情報を直接追加できるようになります(資格情報プラグインに基づく)。
詳細については、Gitプラグインの変更ログを参照してください: https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin#GitPlugin-Changelog 。
プルリクエストに関するgitとstashをさらに統合するには、stashに「StashWebhook for jenkins」アドオンを追加し、jenkinsが相互に接続するための「StashNotifier」プラグインが必要です。