List of git branches using Jenkinsfile parameters

1,988 views
Skip to first unread message

derek....@cimenviro.com

unread,
Feb 18, 2018, 10:13:29 PM2/18/18
to Jenkins Users
What I want to be able to do -

Have a Jenkinsfile that will automatically build a git master branch if triggered automatically on commit but prompt the user to select from a branch if run manually

Selecting the master if triggered automatically is no problem using parameter default value, but I cannot for the life of me figure out a way to populate the branch parameter 

I've looked for a way to use the Git parameters plugin but while there is plenty of examples on how to use it though the gui with a pipeline script, I cant find any documentation or examples on how to use it with multibranch/Jenkinsfile using code

can anyone help with the above, or any other method?

thanks

niristotle okram

unread,
Feb 18, 2018, 10:39:07 PM2/18/18
to jenkins...@googlegroups.com
Not sure, if i am following this requirement. Am I understanding it right, if you want to list the remote branches of a repository on jenkins job as a parameters? 

--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/1995eb74-988c-4fb2-b972-f849771769c2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Sent from mobile device, excuse typos if any.

derek....@cimenviro.com

unread,
Feb 18, 2018, 11:02:58 PM2/18/18
to Jenkins Users
Correct. If I choose to "Build with parameters" I want a Branch parameter to list all the branches of that jobs repository, but defined in a Jenkinsfile as a multibranch pipeline

niristotle okram

unread,
Feb 18, 2018, 11:14:17 PM2/18/18
to jenkins...@googlegroups.com
I dont have much experience with multi branch job types. Nonetheless, The below requirement may not be possible unless there is some plugin to do so. 

The job / local workspace will not have any idea of remote branches before you trigger it. A workaround may be to start the job, create a stage that checks out the remote branches, and use the input dsl for a users input. 








For more options, visit https://groups.google.com/d/optout.

derek....@cimenviro.com

unread,
Feb 18, 2018, 11:43:23 PM2/18/18
to Jenkins Users
Hmm, I was wondering that myself, but the pipeline job can run and populate the parameter list at runtime, so I was wondering if/hoping the multibranch can do the same

niristotle okram

unread,
Feb 19, 2018, 5:11:45 PM2/19/18
to jenkins...@googlegroups.com
What kind of pipeline job is that? The one with jenkins groovy dsl or the declarative one? How r u listing remote git branches in the job parameters to be selected by a user before starting a build? 

I haven’t came accoss that feature. And for the multi branch job, wasnt it suppose to build any new branch? Why do u want to select specific branch with it?


For more options, visit https://groups.google.com/d/optout.

Björn Pedersen

unread,
Feb 20, 2018, 7:32:32 AM2/20/18
to Jenkins Users

derek....@cimenviro.com

unread,
Feb 20, 2018, 9:03:33 PM2/20/18
to Jenkins Users
I want to selectively build branches. So anything that is committed to master is built automatically, but in order to build a specific branch a user has to run "build with parameters" and choose the branch to build

As for the pipeline job, yes with jenkins groovy dsl. All the parameters are defined through the gui and then called by the jobdsl. I want to do it all in code as the Jenkinsfile is in scm and automatically added/built

And listing the remote git branches, that's what I am looking for, that's my original request. How do I list the branches in the job parameters before starting the build?

Stephen Connolly

unread,
Feb 21, 2018, 7:19:45 AM2/21/18
to jenkins...@googlegroups.com
On 21 February 2018 at 02:03, <derek....@cimenviro.com> wrote:
I want to selectively build branches. So anything that is committed to master is built automatically, but in order to build a specific branch a user has to run "build with parameters" and choose the branch to build


WHY would you want to use multibranch to work that way?

That is not the way multibranch is designed to work.

To get that kind of flow with multibranch you would do the following:

1. Install the Basic Branch Build Strategy plugin
2. Configure the multibranch to only build "master" branch automatically.
3. User wants to build a specific branch, they trigger a build of that branch by clicking "build" on that branch

No parameter mess, nice clean build history for each branch.
 
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/f46f906f-4c15-48d8-a052-52ce1fe50c72%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages