Help us understand the problem. What is going on with this article?

GitHub-Jenkins 連携とりあえずメモ

More than 5 years have passed since last update.

やりたいこと

とりあえず今回やりたいのは、何かブランチをプッシュしたら、そのブランチのテストが実行されるところまで。

プラグイン

使うプラグインは GitHub Plugin

前提

JenkinsのURL: jenkins.example.com
GitHubのURL: github.example.com

Github設定

  1. 使いたいリポジトリの[Settings]->[Webhook & services] にアクセス
  2. [Add services] から [Jenkins (Git plugin)] を選択
  3. [Jenkins hook url]を http://jenkins.example.com/github-webhook/

Jenkins設定

自動設定とやらもあるらしいのだが、わからないことがあったので今回はとりあえず手動。

Jenkinsプロジェクトの設定で以下の項目を設定する

  • [GitHub project]: https://github.example.com/org/repo-name/
  • [ソースコード管理]
    • [Git]
      • [Repository URL]: https://github.example.com/org/repo-name/
      • [Branches to build]: **
      • [リポジトリブラウザ]: githubweb
        • [URL]: https://github.example.com/org/repo-name/
  • [ビルド・トリガ]: [Build when a change is pushed to GitHub] をチェック

とりあえずこれだけで、プッシュされる毎にJenkinsワークスペースに対象のブランチがチェックアウトされてくれるので、 [ビルド] に好きな処理を書けば終わり。

以上の手順でできてないこと

  • プラグイン設定で [Let Jenkins auto-manage hook URLs] というのを選ぶと色々出来そうなのだが、ここに指定するユーザを誰にしよう問題が未解決。チームで使ってるのに個人のアカウント指定するのが微妙。OrganizationのApplicationのOAuth2が利用できるといいのだが、対応していない気がする。
  • [ビルド] および [ビルド後の処理] にある [Set build status to 〜〜] が使いたいのだが、↑の auto-manage の設定しないと使えないっぽい
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away