Electric Cloud / BuildForge: worth the expense?
I just saw a demo of electric cloud and it was very interesting, but it is expensive.
Pro: Excellent features - extract the secret sauce from my builds and make them more standardized with reusable steps - parallelize the build to speed it up and use my build farm more effectively
- restart the build from any step - integrate test automation and promotion (perhaps even deployment into production) with good logging, auditing and reportingCon: enterprise sized price tag
I feel like I could probably use STAF, maven and hudson with some plugin development to do most (but not all) of what these tools offer, but it would require a lot of customization and feels like beating my clothes against rocks instead of paying for a washing machine.
Does anyone have opinions to share about these开发者_如何学Go options and what aspects of the environment makes one choice fit better than another?
At my last company, we deployed both the commander and accelerator. At my current company, we are planning on doing the same thing.
My last company did about 70 builds per day. The build time was 12 hours. The total build time was reduced to about 3 hours using accelerator. We started the deployment building only the very latest release and its incoming streams. We used commander to follow a continuous integration (CI) model - the same "recipe" was used to do both the CI and nightly builds with the CI builds using some different options. The number of nightly build failures dropped down to near 0 and the velocity of development increased significantly. At that point, all we heard from development was "ME NEXT"!!! The ROI for this was incredible.
Yes you can develop some of this using hudson or cruisecontrol, but as you indicated you'll be missing a lot of functionality and end up spending spending time customizing and supporting this environment.
Feel free to contact me if you'd like to discuss this more.
I do not have experience with BuildForge.
We started our 20 team program with Jenkins and Incredibuild, however, this didn't scale as well as we had hoped. Many of our teams would check in the day or two before the end of a sprint (yes, a behavioral issue) and Jenkins would get overwhelmed. A build without IncrediBuild would take ~90mins and with ~12mins. This does not include the wait time teams would face since Jenkins builds in a serial manner (queue).
We moved to Electric Commander + Accelerator and saw our build times decrease to ~5mins. The biggest benefit, however, was running parallel builds. Teams don't have to wait any more for their build to start. We use EC's schedules for each team and our build is much more modular/maintainable (written in perl).
Be warned, their dashboard is not like Jenkins. This was a common complaint from our teams. There are ways to run EC from Jenkins (so you get the Jenkins dashboard with the EC speed) though.
tl;dr Electric Cloud is great if you need to scale.
精彩评论