[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#561963: hudson Debian packages



Tim Retout wrote:
> On Tue, Jan 05, 2010 at 09:35:04AM -0800, Kohsuke Kawaguchi wrote:
>> Tim Retout wrote:
>> > I've been using your hudson Debian packages, and it's a really useful
>> > piece of software.  I'd like to see it in the main Debian archive -
>> > are you interested in working together on this?
>> 
>> Yes, I'd be very happy to.
> 
> Fantastic!
> 
>> It is built from the binary war file of the official Hudson releases.
> 
> Okay, I found the src.zip, and that's great.  I'll need to replace the
> debian/ directory, but that's not a problem.
> 
>> I'm aware of the "build from source" policy in Debian, but how far does
>> it go? For example, Hudson is a Java web application, which contains a
>> whole bunch of other library files in it, which are built and released
>> by 3rd parties. Do those libraries need to be packaged separately, or do
>> Hudson need to rebuild them from sources?
> 
> The libraries should be packaged separately - these will of course be
> built from source in the other packages, but the hudson package won't
> worry about them.

Just so you know, Hudson currently have 82 external library
dependencies. Some of the jar files are so-called "uberjar", which is a
rebundle of multiple libraries, so the complete list of dependencies
that need packaging are likely longer.

Those libraries often have their additional build-time dependencies in
turn, and every so often Hudson picks up a new version of those
dependencies. It's way too much work for us to package them all, and
keep doing it every time Hudson uses new dependencies.

I've attached the list of dependencies.

>> Hudson also uses Maven as the build tool, and as you may already know,
>> it comes with a built-in mechanism to download all kinds of stuff (that
>> it uses during the build) from the internet. Do those also have to be
>> packaged separately or be built from the source?
> 
> The build dependencies will be packaged separately as well.

Is there any precedence of packaging Maven-built applications/libraries?
  For build dependencies to be picked up locally, Maven needs some
additional plugins. Maybe those work have already been done.

>> Alternatively, does Debian have anything like Ubuntu's multiverse, where
>> the packaging requirements are lower? Could Hudson be considered a
>> binary non-free package, for the sake of reducing the work for us?
> 
> I'd consider this very much a second-best solution - let's see how
> much work it really is, first.
> 
> Thanks,
> 


-- 
Kohsuke Kawaguchi
http://weblogs.java.net/blog/kohsuke/
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building Hudson war
[INFO]    task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
[INFO] org.jvnet.hudson.main:hudson-war:war:1.340-SNAPSHOT
[INFO] +- org.jvnet.hudson.main:hudson-core:jar:1.340-SNAPSHOT:compile
[INFO] |  +- org.jvnet.hudson.main:remoting:jar:1.340-SNAPSHOT:compile
[INFO] |  +- org.jvnet.hudson.main:cli:jar:1.340-SNAPSHOT:compile
[INFO] |  +- org.jvnet.hudson:crypto-util:jar:1.0:compile
[INFO] |  +- org.jvnet.hudson:jtidy:jar:4aug2000r7-dev-hudson-1:compile
[INFO] |  +- org.jruby.ext.posix:jna-posix:jar:1.0.3:compile
[INFO] |  +- org.kohsuke:trilead-putty-extension:jar:1.0:compile
[INFO] |  +- org.jvnet.hudson:trilead-ssh2:jar:build212-hudson-5:compile
[INFO] |  +- org.kohsuke.stapler:stapler-jelly:jar:1.129:compile
[INFO] |  |  \- org.kohsuke.stapler:stapler:jar:1.129:compile
[INFO] |  |     +- commons-discovery:commons-discovery:jar:0.4:compile
[INFO] |  |     +- org.jvnet:tiger-types:jar:1.3:compile
[INFO] |  |     +- com.google.collections:google-collections:jar:1.0-rc3:compile
[INFO] |  |     \- commons-fileupload:commons-fileupload:jar:1.2.1:compile
[INFO] |  +- org.kohsuke.stapler:stapler-adjunct-timeline:jar:1.0:compile
[INFO] |  +- org.kohsuke.stapler:json-lib:jar:2.1-rev6:compile
[INFO] |  |  \- net.sf.ezmorph:ezmorph:jar:1.0.3:compile
[INFO] |  +- args4j:args4j:jar:2.0.16:compile
[INFO] |  +- org.jvnet.hudson:annotation-indexer:jar:1.2:compile
[INFO] |  +- org.jvnet.hudson:task-reactor:jar:1.1:compile
[INFO] |  +- org.jvnet.localizer:localizer:jar:1.10:compile
[INFO] |  +- org.kohsuke:graph-layouter:jar:1.0:compile
[INFO] |  +- antlr:antlr:jar:2.7.6:compile
[INFO] |  +- org.jvnet.hudson:xstream:jar:1.3.1-hudson-5:compile
[INFO] |  |  \- xpp3:xpp3_min:jar:1.1.4c:compile
[INFO] |  +- jfree:jfreechart:jar:1.0.9:compile
[INFO] |  |  \- jfree:jcommon:jar:1.0.12:compile
[INFO] |  +- org.apache.ant:ant-junit:jar:1.7.0:compile
[INFO] |  +- org.apache.ant:ant:jar:1.7.0:compile
[INFO] |  |  \- org.apache.ant:ant-launcher:jar:1.7.0:compile
[INFO] |  +- commons-io:commons-io:jar:1.4:compile
[INFO] |  +- commons-lang:commons-lang:jar:2.4:compile
[INFO] |  +- commons-digester:commons-digester:jar:1.7:compile
[INFO] |  +- commons-beanutils:commons-beanutils:jar:1.8.0:compile
[INFO] |  +- javax.mail:mail:jar:1.4:compile
[INFO] |  +- org.jvnet.hudson:activation:jar:1.1.1-hudson-1:compile
[INFO] |  +- org.jvnet.hudson.dom4j:dom4j:jar:1.6.1-hudson-1:compile
[INFO] |  +- jaxen:jaxen:jar:1.1-beta-11:compile
[INFO] |  +- commons-jelly:commons-jelly-tags-fmt:jar:1.0:compile
[INFO] |  +- commons-jelly:commons-jelly-tags-xml:jar:1.1:compile
[INFO] |  +- org.jvnet.hudson:commons-jelly-tags-define:jar:1.0.1-hudson-20071021:compile
[INFO] |  +- org.jvnet.hudson:commons-jexl:jar:1.1-hudson-20090508:compile
[INFO] |  +- org.jvnet.hudson:commons-jelly:jar:1.1-hudson-20091221:compile
[INFO] |  +- org.acegisecurity:acegi-security:jar:1.0.5:compile
[INFO] |  |  +- org.springframework:spring-jdbc:jar:1.2.9:compile
[INFO] |  |  |  \- org.springframework:spring-dao:jar:1.2.9:compile
[INFO] |  |  +- commons-codec:commons-codec:jar:1.3:compile
[INFO] |  |  \- oro:oro:jar:2.0.8:compile
[INFO] |  +- org.codehaus.groovy:groovy-all:jar:1.6.0:compile
[INFO] |  |  \- jline:jline:jar:0.9.94:compile
[INFO] |  +- org.springframework:spring-web:jar:2.5:compile
[INFO] |  |  +- org.springframework:spring-beans:jar:2.5:compile
[INFO] |  |  \- org.springframework:spring-context:jar:2.5:compile
[INFO] |  +- org.springframework:spring-core:jar:2.5:compile
[INFO] |  +- org.springframework:spring-aop:jar:2.5:compile
[INFO] |  |  \- aopalliance:aopalliance:jar:1.0:compile
[INFO] |  +- xpp3:xpp3:jar:1.1.3.3:compile
[INFO] |  +- javax.servlet:jstl:jar:1.1.0:compile
[INFO] |  +- commons-logging:commons-logging:jar:1.1:compile
[INFO] |  |  +- log4j:log4j:jar:1.2.9:compile
[INFO] |  |  +- logkit:logkit:jar:1.0.1:compile
[INFO] |  |  \- avalon-framework:avalon-framework:jar:4.1.3:compile
[INFO] |  +- com.sun.xml.txw2:txw2:jar:20070624:compile
[INFO] |  +- commons-collections:commons-collections:jar:3.2:compile
[INFO] |  +- org.jvnet.winp:winp:jar:1.14:compile
[INFO] |  +- org.jvnet.hudson:memory-monitor:jar:1.2:compile
[INFO] |  +- com.octo.captcha:jcaptcha-all:jar:1.0-RC6:compile
[INFO] |  |  \- commons-pool:commons-pool:jar:1.3:compile
[INFO] |  +- org.codehaus.woodstox:wstx-asl:jar:3.2.7:compile
[INFO] |  |  \- stax:stax-api:jar:1.0.1:compile
[INFO] |  +- net.java.dev.jna:jna:jar:3.2.3:compile
[INFO] |  +- com.sun.akuma:akuma:jar:1.2:compile
[INFO] |  +- org.jvnet.libpam4j:libpam4j:jar:1.2:compile
[INFO] |  +- org.jvnet.libzfs:libzfs:jar:0.5:compile
[INFO] |  +- com.sun.solaris:embedded_su4j:jar:1.1:compile
[INFO] |  +- net.java.sezpoz:sezpoz:jar:1.5:compile
[INFO] |  +- org.jvnet.hudson:jinterop-wmi:jar:1.0:compile
[INFO] |  |  \- org.kohsuke.jinterop:jinterop-proxy:jar:1.1:compile
[INFO] |  |     +- org.kohsuke.jinterop:j-interop:jar:2.0.5:compile
[INFO] |  |     |  \- org.kohsuke.jinterop:j-interopdeps:jar:2.0.5:compile
[INFO] |  |     \- org.samba.jcifs:jcifs:jar:1.3.3:compile
[INFO] |  \- org.jvnet.robust-http-client:robust-http-client:jar:1.0:compile
[INFO] +- org.jvnet:animal-sniffer-annotation:jar:1.0:compile
[INFO] \- junit:junit:jar:3.8:test (scope not updated to compile)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5 seconds
[INFO] Finished at: Tue Jan 05 15:22:34 PST 2010
[INFO] Final Memory: 48M/600M
[INFO] ------------------------------------------------------------------------

Reply to: