ターゲット
- ビルド時にブランチを指定して実行させたい人
設定手順
Jenkins
Plugin Install
- プラグインの管理画面(Jenkinsの管理 > プラグインの管理)で「Git Parameter」を検索・チェックし、Install without restart
refs https://plugins.jenkins.io/git-parameter/
Create Credentials
- Credentials画面(Jenkinsの管理 > Manage Credentiaals)で、Gitの認証情報を設定します。
- 種類: ユーザー名とパスワード
- スコープ: (任意)
- ユーザー名: Githubユーザ
- パスワード: Githubユーザのパスワード
- ID: (任意:ビルド時に設定するID)
- 説明: (任意)
ジョブ作成
- 新規ジョブ作成 > パイプライン から新しいジョブを作成します。
General
- ビルドのパラメータ化で「Git Parameter」を選択する。
- Name: BRANCH(ビルドするブランチの環境変数)
- Description: (任意)
- Parameter Type: 今回はブランチを指定するので「Branch」を指定
- Default Value: origin/master(任意のデフォルトブランチを指定)
パイプライン
- 定義で「Pipeline script from SCM」を選択
- SCM: Git
- リポジトリ
- リポジトリURL: ビルドしたいリポジトリURL(下記に指定するScript Pathが含まれている必要があります。イメージで指定された https://github.com/ot-nemoto/jenkins-git-parameter-example.git は検証用Jenkinsfileが含まれるだけのリポジトリです。)
- 認証情報: Create Credentialsで作成した認証情報
- ビルドするブランチ
- ブランチ指定子: ${BRANCH}(ビルドのパラメータ化で指定したName)
- リポジトリ・ブラウザ
- 自動(default)
- リポジトリ
- Script Path: Jenkinsfile(default)
- Lightweight checkout: チェックを外す
- SCM: Git
Jenkinsfileを準備
- サンプルで指定しているリポジトリのJenkinsファイルは以下のようにechoするだけの簡単なものです。
pipeline {
agent any
stages {
stage("source") {
steps {
sh'''
echo 'This branch is master.'
'''
}
}
}
}
ジョブを実行
- ジョブを「パラメータ付きビルド」でBRABCHを指定して実行します。
- 実行したジョブの「Console Output」で指定したブランチを取得しているログが確認できれば成功です。