skillup

技術ブログ

サーバー・ネットワーク

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

投稿日:

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です。

参考リンク

http://qiita.com/yasuhiroki/items/61a2be613fc7dcfc8682
http://changesworlds.com/2015/03/git-by-jenkins/
http://toriaezu-engineer.hatenablog.com/entry/2016/11/19/104432

heroku

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

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

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

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

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

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

参考リンク

herokuインストール
http://qiita.com/yuizho/items/eeed79f400cee6089c7e

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

執筆者:


comment

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

関連記事

no image

ログ抽出コマンド特集 その1 cat+grep+sort

先日、メモリ使用率の調査に関して記事をかいたのですが、今度はそのログの収集や抽出をおこなってみようかと思います。 やりたいこと yyyy/MM/dd-HH:mm:ss  メモリ使用率(少数2桁まで)  …

no image

heroku scheduler(cron的なもの)

herokuでアプリをデプロイしたあと定期的に走らせたいバッチなどがあるとき、cronを使うことを考えると思いますが、herokuではheroku Schedulerというアプリを使います。 hero …

no image

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

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

no image

パス名パラメータの未チェック・ディレクトリトラバーサル

本日もセキュリティ関係のネタを少々。ディレクトリ・トラバーサルという攻撃です。 Contents1 ディレクトリ・トラバーサルとは?2 被害3 対策4 参考リンク ディレクトリ・トラバーサルとは? g …

no image

CSRF(クロスサイト・リクエスト・フォージェリ)

Contents1 CSRF(クロスサイト・リクエスト・フォージェリ)とは?2 被害3 対策4 参考(トークンチェック) CSRF(クロスサイト・リクエスト・フォージェリ)とは? ウェブサイトの中には …