Casual Developers Note

エンジニアやデザイナー向けの技術情報・英語学習情報・海外留学情報・海外旅行情報を提供中。世界を旅して人生を楽しもう。

  • ホーム
  • 技術 Tips & Tutorials
  • 技術塾
  • ライフハック
  • 海外留学
  • 英語学習
  • コラム
  • お問い合わせ
現在の場所:ホーム / 技術 Tips & Tutorials / 爆速でJenkinsをマスターしよう(GitHubアカウント統合編) ~ JenkinsのGitHub Organizationの設定方法 ~

2019年1月14日 By KD コメントを書く

爆速でJenkinsをマスターしよう(GitHubアカウント統合編) ~ JenkinsのGitHub Organizationの設定方法 ~

爆速でJenkinsをマスターしよう(GitHubアカウント統合編) ~ JenkinsのGitHub Organizationの設定方法 ~

GitHubのリポジトリを手動で一つ一つ追加していくより、GitHubのアカウントをJenkinsと統合して、Jenkinsから自動でリポジトリを追加してくれると便利です。今回はそれを実現するJenkinsのGitHub
Organizationの設定方法を紹介します。

見出し

  • 1 はじめに
  • 2 前提
  • 3 GitHubのAPIトークンの発行
  • 4 JenkinsのGitHub Organizationの設定
    • 4.1 GitHub統合用のプラグインを入れる
    • 4.2 GitHub用の認証情報の追加
    • 4.3 JenkinsとGitHubの統合
  • 5 最後に
  • 6 環境
    • 6.1 関連記事

はじめに

個人や小さい組織で個別にJenkinsを使う場合は新しいプロジェクトが立ち上がるたびに新しいリポジトリをJenkinsに登録しても大した手間ではないかもしれません。しかし、ある程度大きな組織や個人や小さい組織であっても新しいプロジェクトを量産するような場合、Jenkinsへの手動のリポジトリ追加は負担になります。この問題を解決するには、GitHubのアカウントをJenkinsと統合し、新しいリポジトリができたタイミングで自動的にJenkinsがそのリポジトリを追加する仕組みを作ることが必要です。そして、その方法はJenkinsではGitHub Organizatoinとしてすでにあります。

今回は、新しいプロジェクトをどんどん立ち上げる活発な人や組織向けに、GitHubアカウントとJenkinsの統合機能「GitHub Organization」の設定方法を紹介します。

前提

以下の準備が完了している必要があります。

  • Jenkinsが構築済みであること
  • Jenkins内でDockerが実行可能であること
  • GitHubのアカウントがあること

GitHubのAPIトークンの発行

まずは、GitHubと連携するためにGitHubのAPIトークンをJenkins用に作成しましょう。

自分のGitHubページに行き、「Settings」をクリックします。

NewImage

「Developer settings」をクリックします。

NewImage

「Personal access tokens」をクリックし、「Token description」に任意の名前(今回は「jenkins」)を入力し、「Select scopes」の「repo」を選択します。

NewImage

「Generate token」をクリックします。

NewImage

これでAPIトークンが発行されました。

NewImage

このGitHubのAPIトークンをJenkinsに設定するので、メモしておきましょう。

JenkinsのGitHub Organizationの設定

それでは、Jenkinsの設定をしましょう。

GitHub統合用のプラグインを入れる

Jenkinsに「GitHub Branch Source Plugin」というプラグインをインストールする必要があります。

「Jenkinsの管理」から「プラグインの管理」をクリックします。

NewImage

「インストール済み」に対象のプラグインが入っていればOKです。(Jenkinsセットアップ時に推奨インストールをすると自動的に入ります)

NewImage

GitHub用の認証情報の追加

ホーム画面から「認証情報」をクリックし、「Jenkins」をクリックします。

NewImage

「Add credentials」をクリックします。

NewImage

「種類」に「ユーザー名とパスワード」を選択し、以下の情報を入力し、「保存」をクリックします。

  • ユーザー名: GitHubのアカウント名
  • パスワード: GitHubのAPIトークン
  • ID: 任意(今回は「github-credentials」)

NewImage

新しい認証情報が追加されていればOKです。

NewImage

JenkinsとGitHubの統合

ホーム画面から「新規ジョブ作成」をクリックします。

ジョブ名に統合するGitHubアカウントのアカウント名を入力し、「GitHub Organization」を選択し、「OK」をクリックします。

NewImage

「Projects」に以下の情報を入力し、「保存」をクリックします。

  • Credentials: 先程作成した認証情報(github-credentials)
  • Owner: 統合するGitHubアカウントのアカウント名(手順通りにやっていれば自動的に入っている)
  • Script Path: Jenkisfileのパス(今回はプロジェクトフォルダ直下に配置するので、「Jenkinsfile」のまま)

NewImage

すると、統合したGitHubアカウントのリポジトリのスキャンを自動的に開始します。(「Script Path」に設定したパスに「Jenkinsfile」があるリポジトリをスキャンします)

NewImage

しばらくするとスキャンが完了します。

NewImage

今回は2つのリポジトリが自動的にJenkinsに追加されました。試しに「devops_sample_nodejs」をクリックしてみます。

NewImage

「ビルド実行」をクリックしてビルドを実行してみます。

NewImage

「master」ブランチをクリックします。

NewImage

ビルドの状況が確認できます。

NewImage

GitHubアカウントのページに戻ります。GitHubアカウント内でスキャンされたリポジトリ全てのビルド状況が確認できます。

NewImage

これで完了です。

最後に

いかがでしたか?これでGitHubアカウントに新しいリポジトリを追加した時に自動的にJenkinsでビルドできうようになりましたね。継続的インテグレーションをGitHubのリポジトリにどんどん適用していきましょう。それでは。

環境

  • Jenkins: 2.151
The following two tabs change content below.
  • この記事を書いた人
  • 最新の記事
KD
Twitter のプロフィール

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。
KD
Twitter のプロフィール

最新記事 by KD (全て見る)

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介 - 2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~ - 2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~ - 2019年10月30日

関連記事

  • 爆速でJenkinsをマスターしよう(Slack通知編) ~ パイプラインのビルド失敗時にSlackで通知する方法 ~

    継続的インテグレーションの自動ビルド失敗時に開発者に通知する手段はメールだけではありません。今回は、Jenkinsのビル…

  • 爆速でJenkinsをマスターしよう(Docker編) ~ JenkinsコンテナへのDockerインストール方法からJob DSL、Jenkins Pipelineまで ~

    Docker上でアプリケーション開発から運用まで完結させる開発スタイルは今まさに求められています。今回はDocker前提…

  • 爆速でJenkinsをマスターしよう(メール通知編) ~ パイプラインのビルド失敗時にメールで通知する方法 ~

    継続的インテグレーションのプロセスにおいて、自動ビルド失敗時に開発者に通知する仕組みは不可欠です。今回は、Jenkins…

  • 爆速でJenkinsをマスターしよう(NodeJS編) ~ JenkinsセットアップからNodeJS自動テスト、Job DSLまで ~

    DevOpsを実現するための最も有名なCI/CDツールはJenkinsです。今回はDocker環境を前提として、Jenk…

  • 爆速でJenkinsをマスターしよう(Slack通知編) ~ パイプラインのビルド失敗時にSlackで通知する方法 ~

    継続的インテグレーションの自動ビルド失敗時に開発者に通知する手段はメールだけではありません。今回は、Jenkinsのビル…

カテゴリ : 技術 Tips & Tutorials タグ : github, jenkins, jenkins-github-organization

ブログ更新情報や海外の関連情報などを配信する無料メルマガ

Sponsored Links

About Author

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。

https://casualdevelopers.com/

最近の投稿

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介

    2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介

    2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~

    今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~

    2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~

    ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~

    2019年10月30日
  • BashからZshに移行する方法(Mac編)

    BashからZshに移行する方法(Mac編)

    2019年10月21日
  • Create React Appを使わないでゼロからReactの開発環境を構築する方法(Webpack/Docker編)

    Create React Appを使わないでゼロからReactの開発環境を構築する方法(Webpack/Docker編)

    2019年9月30日

カテゴリ

  • 技術 Tips & Tutorials (100)
  • 技術塾 (6)
  • ライフハック (26)
  • 海外留学 (12)
  • 英語学習 (3)
  • コラム (6)

アーカイブ

最高の学習のために

人気記事ランキング

  • MySQLで「ERROR 2003 (HY000): Can't connect to MySQL server」と怒られた時の対処法
    MySQLで「ERROR 2003 (HY000): Can't connect to MySQL server」と怒られた時の対処法
  • SAKURAのメールボックスで独自ドメインのメールを設定し、Gmail経由で送受信する方法
    SAKURAのメールボックスで独自ドメインのメールを設定し、Gmail経由で送受信する方法
  • Jupyter Notebookで「The kernel appears to have died. It will restart automatically.」というエラーが出た場合の原因と対処法
    Jupyter Notebookで「The kernel appears to have died. It will restart automatically.」というエラーが出た場合の原因と対処法
  • Expressで「Cannot set headers after they are sent to the client」と怒られた時の対処法
    Expressで「Cannot set headers after they are sent to the client」と怒られた時の対処法
  • SLF4JとLogbackによるJavaのロギング入門(SLF4J + Logback + Lombok)
    SLF4JとLogbackによるJavaのロギング入門(SLF4J + Logback + Lombok)
  • Amazon EC2インスタンスにSSHできなくなった時の対処法
    Amazon EC2インスタンスにSSHできなくなった時の対処法
  • SpringBootのProfile毎にプロパティを使い分ける3つの方法
    SpringBootのProfile毎にプロパティを使い分ける3つの方法
  • [tips][perl] Perlで文字コードをいい感じに処理する方法
    [tips][perl] Perlで文字コードをいい感じに処理する方法
  • 爆速でJenkinsをマスターしよう(GitHubアカウント統合編) ~ JenkinsのGitHub Organizationの設定方法 ~
    爆速でJenkinsをマスターしよう(GitHubアカウント統合編) ~ JenkinsのGitHub Organizationの設定方法 ~
  • Go言語のためのVisual Studio Codeの設定方法
    Go言語のためのVisual Studio Codeの設定方法

Bitcoin寄付 / BTC Donation

Bitcoinを寄付しよう

BTC
Select Payment Method
Personal Info

Donation Total: BTC 0.0010

このブログの運営のためにBitcoinでの寄付を募集しています。お気持ち程度の寄付を頂けると管理者の励みになります。

Bitcoin寄付について知りたい方はこちらの記事へ

The following two tabs change content below.
  • この記事を書いた人
  • 最新の記事
KD
Twitter のプロフィール

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。
KD
Twitter のプロフィール

最新記事 by KD (全て見る)

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介 - 2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~ - 2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~ - 2019年10月30日

関連記事

  • 爆速でJenkinsをマスターしよう(Slack通知編) ~ パイプラインのビルド失敗時にSlackで通知する方法 ~

    継続的インテグレーションの自動ビルド失敗時に開発者に通知する手段はメールだけではありません。今回は、Jenkinsのビル…

  • 爆速でJenkinsをマスターしよう(Docker編) ~ JenkinsコンテナへのDockerインストール方法からJob DSL、Jenkins Pipelineまで ~

    Docker上でアプリケーション開発から運用まで完結させる開発スタイルは今まさに求められています。今回はDocker前提…

  • 爆速でJenkinsをマスターしよう(メール通知編) ~ パイプラインのビルド失敗時にメールで通知する方法 ~

    継続的インテグレーションのプロセスにおいて、自動ビルド失敗時に開発者に通知する仕組みは不可欠です。今回は、Jenkins…

  • 爆速でJenkinsをマスターしよう(NodeJS編) ~ JenkinsセットアップからNodeJS自動テスト、Job DSLまで ~

    DevOpsを実現するための最も有名なCI/CDツールはJenkinsです。今回はDocker環境を前提として、Jenk…

  • 爆速でJenkinsをマスターしよう(Slack通知編) ~ パイプラインのビルド失敗時にSlackで通知する方法 ~

    継続的インテグレーションの自動ビルド失敗時に開発者に通知する手段はメールだけではありません。今回は、Jenkinsのビル…

ビットコイン取引ならここ

  • ホーム
  • 技術 Tips & Tutorials
  • 技術塾
  • ライフハック
  • 海外留学
  • 英語学習
  • コラム
  • サイトマップ
  • タグ一覧
  • プライバシーポリシー
  • お問い合わせ

Copyright © 2023 KD - Casual Developers Notes