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

nginxの設定ファイルの書き方に関して

Contents1 設定ファイルの構成と基本用語1.1 ディレクティブ1.2 コンテキスト2 基本的なディレクティブの遷移2.1 serverディレクティブ2.2 locationディレクティブ2.3 …

no image

crontab 確認方法

crontabが動かないときに確認すること。 Contents1 cron自体が動いているか(下記コマンドでログを確認)2 実行権限が正しいか3 プログラム内部のファイルパスが絶対パスになっているか4 …

no image

ansible mysql,cronなど

Contents1 ansibleでのMySQlのインストール (CentOS6)2 ansibleのcronインストール3 任意のコマンド4 ansibleオプション ansibleでのMySQlの …

no image

locationディレクティブについて

nginxを実務で使うときに重要になってくるlocationディレクティブについて。 ここでは実際のlocationディレクトリとマッチするURLのパターンを見ていきたいと思います。 Contents …

no image

nginxのlocationディレクティブ内のリダイレクト処理について

nginxのlocationディレクリブ内のリダイレクト処理に関して。 結構長い間携わっていますが、適当に理解していた部分が多かったので再度復習です。 特にドメインのサブディレクトリでサービスを運用し …