For our setup, we compile a single product on different machines (linux 32/64, windows 32/64, etc) for different releases. Nothing for our setup is shared between stages of our plan, and each stage is a different system we compile under. So if we compile 4 version, we have 4 stages, each stage has 2-3 jobs in it.
Is there anyway to configure the plan to execute all the stages at the same time? I've seen concurrent plan options in the admin area, but didn't know if I could say "i want to execute stages x, y, z at the same time" Since each stage deals with a different agent.
Edit: It seems after further research that instead of building on each system as separate stages, I should have a single "build" stage that has multiple jobs, then those jobs could be executed simultaneously. Is this correct?
Thanks!
Stages are always run sequentially. Jobs are always run in parallel (provided that you have enough agents). The concurrency options you have seen relate to plans.
If you want the OS-builds to run concurrently either clone the plan 4 times (once for each system) and delete the extra stages in each of them or put all jobs in a single stage.
I have it now where they are building concurrently, but I seem to have errors when they try to get the repo from Perforce. It seems that when the 4 jobs all want to pull from perfoce at the same time, it gives me the error "(com.atlassian.bamboo.repository.RepositoryException : Unable to extract client root from Perforce, therefore could not evaluate where the source will be checked out to.)"
Is there a way I can pull the repo from perfoce just once, and have all the jobs use that instead of each job pulling from perforce at the same time?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Let me extend onto my last statement. This doesn't always happen for each job.. sometimes it works fine for a job, other times it breaks. It's breaks about 70% of the time though.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I don't think you'll be able to achieve that setup on Perforce...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
could i potentially setup a stage prior to my build stage that pulls the repository from perforce, maybe stores it as an artifact (tar it up or something), then have that artifact for use in the jobs of the 2nd stage?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yeah, you can do that. Just define it as a shared artifact, tar it with a Script Task and make jobs in 2nd stage depend on it (each should have an untarring Script Task).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.