I'm in charge to implement CI in my company. But now I have a doubt. Which one is the best?
Should I create 3 distinguished job for every system/software as
- Build and quality test for the code
- Build, quality test and deployment on test enviromment
- Build, quality test and deployment on production
Or is better create downstream conditional jobs, like here: How to conditionally build other projects?
The trunk always will have the last version in production.
For every change, the developer has to make a copy from trunk to branch, work on the code then call jenkins to run in the branch to homologate the changes. Once the homologation has done and it's ok, the developer will call jenkins again to deploy that code from branch to production.
As @michaelbahr said [this post is edited] I can just get the last homologation version from a artifact repository, but how can I copy/merge the code from branch to trunk automatically with jenkins after it gets the package from homologation(test) environment and move it to production?