I seem to have developed a love/hate relationship with Jenkins 2.x 
pipelines and some of the concepts that it imposes. Hence, I'd like to hear 
how best operate in the new world. The one thing I'd like to make clear 
before I get into the details is that I am suggesting that this the only 
right way to do things; all I am looking to hear is Jenkins 2.x would be 
able to support this as one of the many models.

Firstly, let me describe the development model that I'd like to work with. 
The setup I have is very similar to how a lot of github bases open source 
projects operate i.e. the main repo very rarely has any branches. All 
development is done by forking the code, making any number of branches 
within forks and finally submitting a pull request to the *main/parent* git 
repository. There is a fairly elaborate acceptance criteria for a pull 
request to be accepted into the mainline and this is the workflow that I'd 
like to trigger and run as a pipeline. The way I have been doing this until 
now is by having a github pull request builder 
<https://wiki.jenkins-ci.org/display/JENKINS/GitHub+pull+request+builder+plugin>
 
triggered job that sets of a series of steps within a freestyle job and 
then having downstream jobs associated with it. It is not clear as to how 
one would setup something using the pipeline construct.

Secondly, I do not wish to provide the flexibility of defining the pipeline 
(at least in it's current form) to individual developers. The design choice 
of needing a Jenkinsfile in the each git repo (and branch) seems equivalent 
to allowing developers to define their own freestyle jobs in Jenkins 1.x. 
The model that I have been following is to have a predefined set of 
templates (setup using the Job DSL 
<https://wiki.jenkins-ci.org/display/JENKINS/Job+DSL+Plugin>) from which 
the developer can choose along with a minimal set of parameters such as the 
path of the git repo, the email addresses for notification, choice of JRE, 
etc. etc. to instantiate specific jobs for their code bases. I'd like to 
retain this degree of control/standardization as we move into Jenkins 2.x.

In short, I am looking for a way by which I can confine myself to the fork 
model of git development, pull request based triggers, and job definitions 
as pipelines, with the pipeline definition residing on jenkins (and not the 
developer's source tree).

-- 
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-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/5a534ac7-dedb-476f-8748-a25268419fe5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to