Rich Pixley <rich.pix...@palm.com> kirjoitti 30.7.2012 kello 20.13: > On 7/29/12 09:03 , Sami Tikka wrote: >> Rich Pixley <rich.pix...@palm.com> kirjoitti 28.7.2012 kello 0.28: >>> You just have to understand that jenkins doesn't really do much in the way >>> of work space management so hosed builds mean you'll have to clear the >>> workspace and start all over from scratch. >> Jenkins does have the option of clearing the workspace at the beginning of >> the build. It is usually there in the SCM (= version control) settings and >> is usually off. > I haven't found that yet. Core jenkins apparently doesn't have that ability, > although it would seem to be core functionality.
Well, it depends. If you can clean up the workspace by only deleting files that are not controlled by version control system, you can save a lot of time in checkout of large repositories. But then you need help from the version control system => Jenkins implements workspace cleaning in the SCM plugins. If you prefer to simply nuke the whole workspace before the build starts, you can do that too, but unfortunately you need https://wiki.jenkins-ci.org/display/JENKINS/Workspace+Cleanup+Plugin for it. If you have a large repository, you probably do not want to start every build with a checkout from scratch. If you use Subversion, click on the "Subversion" radiobutton under "Source code management" (in a job configuration.) Then click on the Advanced button. (There are many Advanced buttons on the page. Click on the Advanced button in the Source Code Management section.) for "Checkout Strategy", choose "Emulate clean checkout by first deleting unversioned/ignored files, then 'svn update'". If you use Git, click on "Git" radiobutton under "Source code management". Then click on the 2nd Advanced button of the Source Code Management section (yes, Jenkins could use a helping hand from a professional UX designer...) Check the box "Clean after checkout". If you use something else, maybe someone else can tell you how to do it. > > And from my perspective, manual clearing is extremely minimal support. >>> It would appear that jenkins is primarily based around a bunch of much, >>> much, much smaller builds than something like oe so there are likely to be >>> some scaling issues. Eg, I'm finding that stuff like clearing the >>> workspace take long enough that jenkins thinks they've failed. >> Interesting. Could you elaborate? I wasn't aware of any time limits in >> Jenkins builds. I have a Jenkins which runs 24 hour performance tests and >> Jenkins has never failed it because it runs too long. > I'm not sure what else to say. I click "clear workspace', it runs for a > while, I can see the disk space being cleared, and then it fails with a time > out. Aaah! That's the way you do it. Yes, I have seen that time out on large workspaces. I use it so seldom I haven't bothered even making a bug report about it. > A typical oe build directory can run 30gig per device and you may well build > for 5 devices. That's a lot of disk space which takes time to deallocate. I hope the SCM plugin for your version control system has support for intelligent workspace cleaning. -- Sami