機械学習エンジニアの備忘録

ソフトウェアエンジニアになるために勉強したことを書いていきます

jenkinsとgithubを連携して自動テストをする

web上にいろいろ情報が錯綜していていろいろハマったので成功したやりかたをメモしておく

やりたいこと

  • githubに新しいcommitがpushされるごとにそのソースコードをビルドしてテストする
  • テスト結果をgithub上から確認できるようにする

    github側の設定

  • ビルドしたいレポジトリにwebhookを設定する
    • settings -> webook
      • pyload url
      • content type
      • Which events would you like to trigger this webhook?
        • "Just the push event." or "Send me everything."
  • access tokenの設定
    • 個人アカウントのsettings -> developer settings -> personal access token
      • generate new token
      • repoとadmin:repo_hookをチェック

jenkins側の設定

  • jenkinsの管理 -> システムの設定 -> github
    • github server
      • name
      • API URL
      • credential
        • secret textで追加
          • 先程作成したpersonal access tokenを登録
      • manage hooks
        • よくわからん、とりあえずチェックなしにした
      • test connectionでちゃんとつながればおk
  • ジョブの設定
    • フリースタイルプロジェクトのビルド
      • github projcet
        • project url
          • ビルドしたレポジトリのURL
        • ビルドのパラメータ化
          • 名前
            • payload
          • デフォルト値
            • none
      • ソースコード管理
      • ビルド・トリガ
        • GitHub hook trigger for GITScm polling
      • ビルド
      • ビルド後の処理
      • うまく設定できていればレポジトリにpushされたときに自動でbuildが走ってcommit statusがgithub上から確認できる