skillup

技術ブログ

サーバー・ネットワーク

jenkinsでのSSH鍵認証&herokuからのソース取得

投稿日:2017年6月19日 更新日:

jenkinsでGitからソースを取得するときに鍵認証をかけている場合はそれ用の設定が必要になります。

基本的な考え方ですが、userがjenkinsだったときに、ssh鍵認証やherokuでどのようにソースを取得するかを考えればOK

SSH鍵認証

前提条件

/var/lib/jenkins/.sshにGitのサーバーにアクセスできる秘密鍵を置いておく or SSHのconfigファイルをおいておき、GitのサーバーにSSHコマンドでアクセスできるようになっていればOK

※SSHのconfigの書き方はこちらから。
Git+SSH鍵認証

jenkinsでの設定

  • 各プロジェクトのソースコード管理画面に行き、Gitにチェックを入れ、ソースのURLを入力します。
  • RepositoryのCredentialsのaddを入力します。(スコープにはグローバルを選択し、ここでソースのあるサーバーに入るときのユーザー名とパスワードを入力しておきましょう。)
  • Credentialsの設定画面(Jenkins一覧画面→認証情報→グローバルドメイン→addしたユーザー)で秘密鍵にはJenkinsマスター上の~/.sshからを選択しましょう。
  • RepositoryURLの下の赤色のエラーメッセージがでていなければOKです。
  • 実験として試しにビルドをしてみてビルドが実行されればOKです。

参考リンク

開発者(個人)のためのJenkins – Git Plugin編
JenkinsとGitサーバーを連携してビルド環境を構築する

heroku

1 jenkinsでプロジェクト作成(Gitは登録しなくてOK)

2 この段階でビルドをするとこけるはず。

3 ソースをプロジェクト直下(workplace)に自力で配置する。(herokuコマンドを使うことになります。)

前提としてjenkinsサーバーにheroku(当然rubyも)が入っており、suでjenkinsになれることが条件。なっていない場合は下記のように書き換え

4 jenkinsでプロジェクト画面に戻り、GitのRepositoryの部分に、先ほど控えたリポジトリのURLを入力し、赤いエラーメッセージがでなければOK。

5 後は試しに、変更した後、ビルドしてソースが反映されていればOK。

参考リンク

herokuインストール
JenkinsからHerokuへデプロイする

-サーバー・ネットワーク
-, , ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

pidファイルに関して

サーバー上であるサービスを動いている(と思っている)時にstopしようとしたらpidファイルがありませんと怒られました。 pidファイルってよく聞くけどわかっていなかったのでこれを機にメモ。 Linu …

no image

OSコマンドインジェクション

Contents1 OSコマンドインジェクションとは?2 被害3 対策4 参考リンク OSコマンドインジェクションとは? OSに対する命令文を不正に紛れ込ませて攻撃させる手法。 被害 サーバー内のファ …

no image

cakePHPでのサブディレクトリ(apache)

apache使用時、cakePHP2系をサブディレクトリで使いたいときの運用法に関して。通所通りですとファイルにアクセスできないので、URLのリライトをうまくしないといけません。下記に設定例をかきます …

no image

ファイル一括検索 xargsを利用した置換

実務でよくあるファイル一括置換。 sedに関しては以前も触れましたが使用範囲は多いですね。

ちなみにオプションがすごく大事でxargs …

no image

herokuでMySQL

昨日に続き、heroku+MySQLのメモです。 herokuはディフォルトではPostgreSQLですが、アドオンを使うとMySQLも使えるようになります。 使い方ですが、herokuの管理画面でク …