From Fedora Project Wiki
(Tasks)
(Tasks)
Line 17: Line 17:
 
** low priority, only "run" mojo requires jetty
 
** low priority, only "run" mojo requires jetty
 
* ['''<span style="color:green">done</span>'''] port maven-hpi-plugin to maven-archiver 2.5 ([[User:Msrb|msrb]])
 
* ['''<span style="color:green">done</span>'''] port maven-hpi-plugin to maven-archiver 2.5 ([[User:Msrb|msrb]])
** currently uses 2.0 (+plexus-archiver 1.0-alpha4) it's 7 years old
+
** currently uses 2.0 (+plexus-archiver 1.0-alpha4)
 
** done, testing needed [https://github.com/msrb/maven-hpi-plugin/commits/update-dependencies]
 
** done, testing needed [https://github.com/msrb/maven-hpi-plugin/commits/update-dependencies]
 
* [['''<span style="color:green">done</span>''']] stapler requires forked/slightly modified version of dom4j library ([[User:Msrb|msrb]])
 
* [['''<span style="color:green">done</span>''']] stapler requires forked/slightly modified version of dom4j library ([[User:Msrb|msrb]])

Revision as of 07:29, 11 November 2013

Jenkins

Jenkins logo.png

This wiki page shows progress of packaging Jenkins in Fedora.

Tasks

  • create packaging guidelines for Java web applications
  • package all necessary dependencies
  • [done] port jenkins-core to jnr-posix 2.x (msrb)
    • upstream switched to jnr-posix, but jna-posix is still around, see: [pull request]
  • port maven-hpi-plugin to jetty 9
    • currently uses jetty 6
    • low priority, only "run" mojo requires jetty
  • [done] port maven-hpi-plugin to maven-archiver 2.5 (msrb)
    • currently uses 2.0 (+plexus-archiver 1.0-alpha4)
    • done, testing needed [1]
  • [[done]] stapler requires forked/slightly modified version of dom4j library (msrb)
  • [[done]] jenkins-remoting bundles Base64 implementation (msrb)
    • replace with JDK implementation
    • testing needed, possibly upstreamable
  • [[done]] jenkins-remoting bundles class (TeeOutputStream) from apache-commons-io (msrb)
    • replace with proper dependency on commons-io
  • [[done]] jenkins-commons-jelly, update dependencies (msrb)
    • uses very old libraries, it doesn't build in Fedora without hacking pom file
  • j-interop, probably needed to enslave Windows machines
    • bundles several other projects in j-interopdeps/
    • namely: jarapac, gnu crypto, jtds, iwombat
  • [done] jenkins uses acegisecurity, port it to spring-security
    • related: [2],[3]
      • subtask: spring-security is not in Fedora, but gil prepared package(s) long time ago -> do the reviews:
      • [done] 882477, 882475, 882476, 882474
  • [done] maven-stapler-plugin relies on com.sun.mirror.apt API which is no longer available in Java 7
    • looks like we can safely remove affected files
  • maven-stapler-plugin bundles several classes from maven, unknown reason - investigate more
  • [done] Jenkins uses forked xstream
  • jBCrypt in Fedora doesn't install pom.xml and depmap
  • [done] antlr-maven-plugin: NPE
  • [done] port to apache-commons-io 2.x
  • [done] port to apache-commons-fileupload 1.3
  • [done] Jenkins uses forked trilead-ssh2
  • [done] Jenkins uses forked jmdns
    • patch needs some testing
  • [done] update to current version of args4j
  • [done] update json-lib to current master branch in Fedora
    • update prepared, gooddata-cl package will need to be fixed in order to work with this latest version of json-lib
  • stapler-adjunct-timeline bundles some javascript
    • simile timeline [4]
      • simile-timeline needs jquery [5]
  • what else?

Packaging

# Package Version Review request Packager Comments URL
1 jenkins-ci-pom 1.30
Fail fail

skip

msrb unknown license, reported upstream by mizdebsk [6]

not really needed

parent POM

URL: [7]

2 localizer 1.15 [8]
Pass pass
msrb URL: [9]
3 stapler 1.207 [10]
Pass pass
msrb URL: [11]
4 maven-hpi-plugin 1.95 [12]
Pass pass
msrb requires jetty 6 from some reason Maven plugin for building Jenkins plugins

URL: [13]

5 tiger-types 1.4 [14]
Pass pass
msrb packaged by gil long time ago URL: [15]
6 annotation-indexer 1.4 [16]
Pass pass
msrb URL: [17]
7 metainf-services 1.4 [18]
Pass pass
msrb URL: [19]
8 jinterop-proxy 1.1 msrb URL: [20]
9 memory-monitor 1.7 [21]
Pass pass
msrb URL: [22]
10 commons-jelly:commons-jelly-tags-xml URL: ?
11 access-modifier-annotation 1.4 [23]
Pass pass
msrb URL: [24]
12 org.springframework:spring-dao 2.5 probably our springframework-tx package,

but Jenkins uses older version (2.5, we have 3.1)

URL: ?
13 libpam4j 1.7 [25]
Pass pass
msrb URL: [26]
14 woodstox 3.2.9
Pass pass
already in fedora, package woodstock-core

(we have newer version, req.:3.2.9, we have:4.1.2

URL: [27]
15 jbcrypt 0.3m
Pass pass
already in fedora

(bug: [28])

URL: [29]
16 org.jvnet.hudson:xstream 1.4.4-jenkins-2
Pass pass
we already have xstream in fedora

Jenkins uses forked version

URL: [30]
17 org.jvnet.libzfs:libzfs 0.5 solaris specific, we won't need this URL: [31]
18 org.jenkins-ci:trilead-ssh2 build214-jenkins-1
Pass pass
we already have trilead-ssh2,

Jenkins uses patched version

URL: [32]
19 windows-remote-command 1.3 looks windows specific, we won't probably need this URL: [33]
20 jfree:jcommon 1.0.12
Pass pass
already in fedora under different namespace

(org.jfree:jcommon:1.0.18)

URL: ?
21 org.kohsuke:trilead-putty-extension 1.2 [34]
Pass pass
msrb not 100% sure if needed, but debian guys have this

and it's really simple package

URL: [35]
22 akuma 1.9 [36]
Pass pass
msrb URL: [37]
23 commons-jelly:commons-jelly-tags-fmt URL: ?
24 net.java.sezpoz:sezpoz 1.9 [38]
Pass pass
msrb needed URL: [39]
25 org.jvnet.hudson:jtidy 1.0
Pass pass
jtidy package is already in fedora,

jenkins uses patched version

URL: [40]
26 org.kohsuke:asm3 3.3.1
Pass pass
this should be only renamed asm3, see [41] URL: ?
27 org.jruby.ext.posix:jna-posix 1.0.3
Fail fail

replace

msrb needed, but jna-posix upstream is dead

replacement is called jnr-posix, we already have this package in Fedora, but patching Jenkins will be needed (this might be upstreamable)

URL: [42]
28 org.jenkins-ci:crypto-util 1.1 [43]
Pass pass
msrb URL: [44]
29 xmlpull:xmlpull 1.1.3.8
Pass pass
xpp3 package in fedora URL: [45]
30 org.jenkins-ci:commons-jelly 1.1-jenkins-20120928 [46]
Pass pass
msrb URL: [47]
31 org.kohsuke.jinterop:j-interop msrb URL: [48]
32 com.sun.solaris:embedded_su4j 1.1 sounds solaris specific, probably not needed URL: [49]
33 org.jenkins-ci:jmdns 3.4.0 [50]
Pass pass
msrb needed, Jenkins uses patched version

(update: forked on github, but no changes have been made so far)

URL: [51] [52]
34 org.jvnet.winp:winp 1.6 sounds windows specific, not needed URL: ?
35 org.jenkins-ci:commons-jexl 2.1.1
Pass pass
looks like our version works just fine URL: ?
36 org.jvnet.robust-http-client:robust-http-client 1.2 [53]
Pass pass
msrb needed URL: [54]
37 jfree:jfreechart 1.0.9
Pass pass
already in fedora under different namespace

(org.jfree:jfreechart:1.0.14)

URL: ?
38 org.jvnet.hudson.dom4j:dom4j 1.6.1
Pass pass
patched dom4j used in Jenkins,

required by stapler-jelly, our dom4j doesn't work with it

URL: [55]
39 org.jvnet.hudson:commons-jelly-tags-define URL: ?
40 org.jenkins-ci.main:cli this is artifact from jenkins tarball URL: ?
41 org.kohsuke:windows-package-checker 1.1 probably not needed

it looks out for windows reserved words in package names

URL: [56]
42 org.kohsuke:owasp-html-sanitizer r88 [57]
Pass pass
msrb project uses Makefile...

review request: [58]

URL: [59] [60]
43 org.codehaus.groovy:groovy-all 1.8.8
Pass pass
needed, already in fedora URL: ?
44 org.kohsuke.jinterop:j-interopdeps msrb part of the j-interop package URL: ?
45 org.acegisecurity:acegi-security
Fail fail

replace

needed, now called spring-security [[61]] URL: ?
46 org.jenkins-ci.main:remoting 2.23 [62]
Pass pass
msrb packaged URL: [63]
47 org.jenkins-ci:jinterop-wmi windows related, not needed URL: [64]
48 org.jenkins-ci:version-number 1.1 [65]
Pass pass
msrb needed URL: [66]
49 org.kohsuke.stapler:json-lib URL: [67]
50 com.infradna.tool:bridge-method-annotation 1.4 [68]
Pass pass
msrb needed

it's an artifact from bridge-method-injector

URL: [69] [70]
51 org.jvnet.hudson:activation URL: ?
52 org.kohsuke.stapler:stapler-adjunct-zeroclipboard 1.0.7-2 javascript + .swf files (:/) URL: [71]
53 org.jvnet.hudson:task-reactor 1.2 [72]
Pass pass
msrb needed, we can safely use latest version 1.3 URL: [73]
54 findbugs:annotations 1.3.9
Pass pass
already in fedora URL: ?
55 org.jenkins-ci:core-annotation-processors msrb URL: [74]
56 com.sun.winsw:winsw 1.10 windows specific, not needed

(scope is 'provided' anyway)

URL: [75]
57 maven-jellydoc-plugin 1.5 msrb not needed URL: [76]
58 maven-stapler-plugin 1.16 msrb needed URL: [77]
59 stapler-adjunct-timeline 1.4 URL: [78]
60 stapler-adjunct-codemirror 1.2 URL: [79]
61 org.zeroturnaround:jr-sdk 2.1.1 msrb needed by stapler-jrebel

update: but it looks like stapler-jrebel is not actually needed

URL: ?
62 kohsuke-pom 5 [80]
Pass pass
msrb needed by many projects URL: [81]
63 maven-jellydoc-plugin 1.4 msrb URL: [82]
64 net.java.dev.textile-j:textile-j 2.2.864 msrb URL: [83]
65 org.jenkins-ci:constant-pool-scanner 1.2 [84]
Pass pass
msrb needed by jenkins-remoting 2.32 URL: [85]
66 org.jenkins-ci:bytecode-compatibility-transformer 1.3 [86]
Pass pass
msrb URL: [87]