On Jul 31, 2007, at 1:11 PM, Erik Paulson wrote:
Maybe the externals build step would be better handled by either the NMIglue, some sort of DAG in NMI, or just a way tricked out version of new_workspace.
new_workspace is clearly the wrong choice here (only used by UW people, not in our nightlies, etc).
For a long time, I've wanted to split up the externals and not have it hard-wired to be part of the build. It should be a separate Metronome run, and the "real" build job should depend on the output of the externals build, just like the test jobs depend on the output from the build jobs. So, yeah, some kind of DAG in Metronome is what we need. This way, the nightlies can still rebuild the full externals (since Todd continues to think that's important), but 1-off builds and workspace builds can *just* build the source, and re-use last night's version of the externals build for the appropriate branch.
Apparently, support for these sorts of DAGs in Metronome is exactly what the "ETICS" project is doing, and once it's all working and slick, the Condor build/test cycle could gain a lot from it. I haven't looked at ETICS at all, so I don't know anything else, but it seems a little silly to spend a bunch of time manually tweaking this via the Condor glue if Metronome and/or ETICS are going to support it natively in the near future.
I'm adding nmi-staff to the list, since I doubt they're all on condor- devel, but they might have some insight on this part of the bigger thread we're on here.
Cheers, -Derek