Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

CI means knowing that your product is always in a releasable state. Green tests is only one small piece of that.

I have an iOS app or two that I work on independently, as side projects. Even though I am the sole developer on these projects, CI saves me dozens or hundreds of hours of time. My CI script[0] downloads provisioning profiles from Apple's Developer Center, installs them, runs my tests, builds my app, archives the resulting IPA and .dSYM.zip to Amazon S3, uploads the build to Testflight, notifies my testers, then sends my iOS devices a push notification with an ultimate success or failure message.

And it does all of this every day at 4am, while I'm sleeping, and I don't have to think about it.

How much longer would all of this take if I were doing it manually each time? Time is the only infinitely valuable scarce resource. I don't want to spend time mucking with codesigning and provisioning profiles; I want to spend more time coding.

[0] I've open-sourced my iOS build script! https://github.com/splinesoft/SSBuild



If this is all happening at a set time every day, couldn't it just be a cron job? You do have the script created already, CI is just running it for you.


Sure it could be a cron job, but using Jenkins adds some conveniences: a nice UI to browse projects, plus it archives the output of every historical build, locally-archived build artifacts, lots of extensibility with plugins, and so on.


Plus: Once you already got everything up and running you can take it a step further and deploy from the CI Server. In my previous job, the Ops Team loved it when I told them how to deploy from the CI instead of going to the "Release Developer" (Which was loathed by the Ops, because she was not the friendliest person :D)


It's worth adding that it does those things based on the output of previous jobs. Also, if you have many of these setups in parallel, it can create good dashboards and give you one nice (and free) GUI to take in the state of your build empire.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: