実質的に同じ Jenkinsfile を使用するプロジェクトがいくつかあります。唯一の違いは、チェックアウトする必要がある git プロジェクトです。これにより、プロジェクトごとに 1 つの Jenkinsfile が必要になりますが、同じものを共有できます。
node{
def mvnHome = tool 'M3'
def artifactId
def pomVersion
stage('Commit Stage'){
echo 'Downloading from Git...'
git branch: 'develop', credentialsId: 'xxx', url: 'https://bitbucket.org/xxx/yyy.git'
echo 'Building project and generating Docker image...'
sh "${mvnHome}/bin/mvn clean install docker:build -DskipTests"
...
同じJenkinsfileを再利用できるように、ジョブの作成中にgitの場所を変数として事前設定する方法はありますか?
...
stage('Commit Stage'){
echo 'Downloading from Git...'
git branch: 'develop', credentialsId: 'xxx', url: env.GIT_REPO_LOCATION
...
私はこのように設定できることを知っています:
このプロジェクトはパラメーター化されています -> 文字列パラメーター -> GIT_REPO_LOCATION、デフォルト = http://xxxxであり、env.GIT_REPO_LOCATION でアクセスします。
欠点は、ユーザーがデフォルト値でビルドを開始するか、それを変更するように求められることです。ユーザーに対して透過的である必要があります。それを行う方法はありますか?