Hi,
First post on the group so apologies if this is not the right place but had to start somewhere!
I want to use the Job DSL plugin for a multi Maven project application where each Maven project has its own GIT repository. Now, I know one answer that may be returned is why have multiple GIT repos and multiple projects. For now, restructuring the application is not an option but will be in the future. My focus is on quickly implementing a decent CI/CD process and using Jenkins to do this.
So, my question is how do you implement 1) a CI process using the Job DSL plugin for multiple projects and 2) how do you bring this all together to form a CD pipeline for the application?
My initial thoughts are that each Maven project should have a Seed job and its own DSL for the build and unit test part. This would monitor the non-master branches and would suit the CI part of the equation. Next we would have a single seed job and DSL that monitors the master branches for all 4 projects which would then build, unit test, integration test etc and also deploy into various environments for other testing and deployment activities. Is this the best approach?
If I use the above approach then the non-master branches may not be fully tested and deployed before merging back into master - is there a way of creating a sudo master pipeline that the non-master branches can use so we actually prove a lot of full CD pipeline on the non-master branch? If yes, what is the best way to create this and how does it get triggered i.e. for every commit or is there a way to trigger only on specific commits?
Not sure if all of the above can be answered in this group but any help would be greatly appreciated.
Many Thanks,
Steve