Not exactly a Catalyst-specific query, however...
Right, certainly loading all the deps onto your CI at the system/global
level doesn't work when you've multiple projects, branches building that
have conflicting dependency requirements.
I've seen this problem solved by the "toolchain" method of committing
deps along with each project so that the deps move along with the
software they support. You could include both the source tarballs and
the install dir(s) in your commits. Some purists condemn this, pointing
to, e.g. DRY, but it can get the job done, which I think is what counts
at the end of the day.
I've also seen CI systems address this by creating their own entire
build environments *at build time* -- see the Fedora Project's Koji.
Again, this allows for multiple projects to build without trampling on
one another's deps/envs. One downside is that your builds can take long
while to complete.
For faster build times, you may find the toolchain approach or even
having multiple build systems works better for you.
--Trevor
Nicholas Wehr wrote:
Hello everyone,
First off, beware, I'm a bit nutty when it comes to configuration
management. I've recently deployed a Hudson instance and wanted to move
some Catalyst projects into it. What I'd like to solicit feedback on
here is: /how are you managing your Perl dependencies in these build
systems? /Here's some goals I have:
* do not assume any non-core modules are installed on the build platform
* use specific version of modules in the built product - product is
a Catalyst website for example (@inc or use lib)
* need to archive specific version of CPAN dependencies offline;
this means we can recreate a product without an internet connection
* allow for the rebuild of dependencies when the build platform has
changed; this is meant to address a platform change from 32bit to
64bit
What I'm looking at is either using local::lib or PREFIX & LIB w/ cpan.
What do you think?
Thanks in advance,
-nicholas
------------------------------------------------------------------------
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/