Github プライベートリポジトリの Jenkins CI を認証する 質問する

Github プライベートリポジトリの Jenkins CI を認証する 質問する

Jenkins が Github でホストされているプラ​​イベート リポジトリからデータを自動的に取得するようにしたいのですが、そのタスクをどうやって実現すればいいのかわかりません。ドキュメントを試し、Jenkins ユーザーの SSH キーを生成してみましたが、表示されるのは「リポジトリをクローンできません」だけです。URL を確認しましたが、有効です。

何か手がかりはありますか? おそらく、この種のことを説明しているドキュメントやブログなどをご存知でしょうか?

ベストアンサー1

おそらくGitHubのサポートはキーを展開するあなたが探しているものは何ですか?そのページを引用すると:

デプロイキーはいつ使用すればよいですか?

単一のプライベート リポジトリへのプル アクセスが必要なサーバーがある場合は簡単です。このキーは、個人のユーザー アカウントではなく、リポジトリに直接添付されます。

すでに試していて、うまくいかない場合は、使用されている URL、キー ファイルの名前と場所などの詳細を追加して質問を更新することをお勧めします。


さて、技術的な部分です。Jenkins で SSH キーを使用するにはどうすればよいでしょうか?

たとえば、jenkinsUnix ユーザーがいる場合は、デプロイ キーを に保存できます~/.ssh/id_rsa。Jenkins が ssh 経由でリポジトリのクローンを作成しようとすると、そのキーを使用しようとします。

設定によっては、Jenkins を自分のユーザー アカウントとして実行できず、デフォルトの ssh キーの場所 も使用できない場合があります~/.ssh/id_rsa。このような場合は、別の場所 (例: ) にキーを作成し、のエントリでそれを使用するように~/.ssh/deploy_key設定できます。ssh~/.ssh/config

Host github-deploy-myproject
    HostName       github.com
    User           git
    IdentityFile   ~/.ssh/deploy_key
    IdentitiesOnly yes

すべてのGithubリポジトリへの認証[email protected]に上記のキーを使用したくないため、ホストエイリアスを作成しました。github-deploy-myprojectクローンURLは

git clone github-deploy-myproject:myuser/myproject

そしてそれはまたあなたがリポジトリ URLJenkins に。

(注意:ない置くSSH:// の場合これが機能するためには、前になければなりません。

おすすめ記事