From Fedora Project Wiki

No edit summary
 
(198 intermediate revisions by 6 users not shown)
Line 1: Line 1:
This page is for tracking progress on the packaging of (primarily Java-based) dependencies for Eucalyptus 3.x.  This project will have some overlap with [[JBossAS7|JBossAS7]]Other required Java packages include:
This page is for tracking progress on the packaging Eucalyptus 3.x in FedoraWe've been tracking this for three releases now, and the dependency packaging is mostly complete, except for Google Web Toolkit, which we can omit for nowTherefore, it's more useful for the top of this page to summarize the _other_ changes needed to make Eucalyptus build and run on Fedora 18.


* ActiveMQ
== Remaining tasks ==
* Axiom
* Google Web Toolkit
* HA-JDBC
* Infinispan
* JasperReports
* Mule


The majority of other required packages are either already part of Fedora or are transitive dependencies of the above dependencies.  These packages require large parts of jboss, geronimo, and spring2, among other things.  Packaging spring2 in particular seems to be a task full of circular dependencies, so the bootstrapping may be difficult.
=== Polish systemd units for eucalyptus services ===


A [http://repos.fedorapeople.org/repos/arg/eucalyptus/ Fedora-hosted repository] was created last week as a workspace for this, but my quota was quickly exceeded, so I'll be moving this to a eucalyptus-hosted site soon.
There are three init scripts in eucalyptus:
* eucalyptus-cloud - starts a java service, which may be a Cloud Controller, Walrus, or Storage Controller
* eucalyptus-cc - starts a Cluster Controller (CC), which is a custom httpd instance with wso2-axis2 configured
* eucalyptus-nc - starts a Node Controller (NC), which is a custom httpd instance with wso2-axis2 configured


packages built so far:
In Fedora 18, we provide systemd units which simple execute the old init scripts, which have been moved to /usr/libexec/eucalyptus.  Ideally, the old init scripts should go away completely.


Direct Eucalyptus dependencies:
=== Create SELinux contexts/policies ===
* axis2c (and axis2c-devel)
* btm
* ha-jdbc
* proxool
* rampartc


ActiveMQ 5 dependencies:
Eucalyptus must run in permissive mode in Fedora 18.  We need to work on policy that will allow it to run in enforcing mode.
* easymock-classextension
 
=== Make Axis2/Java 1.6 work for code generation ===
 
The C code generated by Axis2/Java 1.6.0 does not work with Eucalyptus's currently defined handlers.  Currently, one must use an [http://arg.fedorapeople.org/axis2v14/noarch/ Axis2/Java 1.4 package] to build a tarball of generated code for inclusion in the eucalyptus package.
 
=== Fix the reporting module ===
 
There is a build issue in the reporting module due to the use of Guava 9 in the upstream Eucalyptus build.  For now, the module has been disabled.
 
=== Enable the admin console ===
 
The admin console is based on GWT, which is not yet in Fedora.  It may not be worth the time to build it, though, as Eucalyptus intends to phase out the GWT-based UI.


Axiom dependencies:
== Packaging Progress ==
* osgi-bundle-utility (ch.jm.osgi.util.bundle)
* ws-commons-axiom
* wstx


Google Web Toolkit dependencies:
These are the packages still in progress which are necessary for the Eucalyptus build:
* guava 09


Infinispan dependencies
{|
* rhq


JasperReports dependencies:
!#
* barcode4j
!Package
* eigenbase-properties (for mondrian)
!Version
* eigenbase-resgen (for mondrian)
!POM
* jexcelapi
!Review request
* olap4j (for mondrian)
!Packager
!Status
!Comments
|-
|27
|gwt
|2.4.0
|
|
|[[User:Arg|arg]]
|'''<span style="color:red">Clean-up Required</span>'''
|Required for admin console
|-
|36
|josql
|2.2
|
|<s>{{bz|822832}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|47
|mqtt-client
|1.3
|
|<s>{{bz|853055}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|48
|groovy-gram
|1.2
|
|{{bz|846561}}
|[[User:gil|gil]]
|'''<span style="color:orange">Awaiting Review</span>'''
|ActiveMQ deps
|-
|49
|pax-logging
|1.6.9
|
|<s>{{bz|849469}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|50
|sitemesh
|2.4.2
|
|<s>{{bz|853439}}</s>
|[[User:gil|gil]]
|'''<span style="color:darkviolet">Skipped</span>'''
|ActiveMQ deps. This package was removed from review request queue.
|-
|51
|apache-commons-primitives
|1.1
|
|<s>{{bz|832803}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|52
|felix-fileinstall
|3.2.0
|
|<s>{{bz|855192}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|Apache Karaf deps
|-
|53
|felix-webconsole
|4.0.0
|
|{{bz|855193}}
|[[User:gil|gil]]
|'''<span style="color:darkviolet">Skipped</span>'''
|Apache Karaf deps
|-
|54
|hawtbuf
|1.9
|
|<s>{{bz|853050}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|mqtt-client deps
|-
|55
|hawtdispatch
|1.11
|
|<s>{{bz|853052}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|mqtt-client deps
|-
|56
|oscache
|2.4.1
|
|<s>{{bz|849470}}</s>
|[[User:gil|gil]]
|'''<span style="color:darkviolet">Skipped</span>'''
|Hibernate 3.x deps (module of the same name). This package was removed from review request queue.
|-
|57
|swarmcache
|1.0
|
|<s>{{bz|849471}}</s>
|[[User:gil|gil]]
|'''<span style="color:darkviolet">Skipped</span>'''
|Hibernate 3.x deps (module of the same name). This package was removed from review request queue.
|-
|58
|activemq
|5.6.0
|
|<s>{{bz|857193}}</s>
|[[User:madsa|madsa]]
|'''<span style="color:green">In Rawhide</span>'''
|
|-
|59
|classmate
|0.5.4
|
|<s>{{bz|815060}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|An Hibernate 4.x dependency. module hibernate-core
|-
|60
|karaf
|2.2.5
|
|<s>{{bz|875692}}</s>
|[[User:gil|gil]]
|'''<span style="color:darkviolet">Skipped</span>'''
|ActiveMQ deps. This package was removed from review request queue.
|-
|61
|gemini-blueprint
|1.0.2
|
|<s>{{bz|866239}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|62
|springframework-ws
|2.0.5.RELEASE
|
|<s>{{bz|877152}}</s>
|[[User:gil|gil]]
|'''<span style="color:green">In Rawhide</span>'''
|ActiveMQ deps
|-
|63
|camel
|2.10.4
|
|{{bz|968136}}
|[[User:gil|gil]]
|'''<span style="color:orange">Awaiting Review</span>'''
|ActiveMQ deps
|}


Mule dependencies:
=== Optional dependencies and sub-dependencies ===
* aopalliance
* glassfish-jaf
* jsr107cache (for ehcache)
* jug
* ognl
* quartz


Spring2 dependencies:
Enough of ActiveMQ is built for Eucalyptus to function.  Packages mentioned here are only necessary to activate more of the activemq modules.
* tiles-master
* tiles
* struts-master
* apache-parent
* hessian
* apache-portlet-1.0-api
* maven-injection-plugin
* apt-maven-plugin
* glassfish-jstl
* xml-maven-plugin
* myfaces-core
* commons-chain
* struts


Fake packages to provide "jakarta" deps for spring2 bootstrapping (note: this was only because I might need to have a couple of spring2 packages installed from jpackage in order to build some spring2 dependencies. I will eventually take a different approach on this):
ActiveMQ 5.6.0 dependencies:
* commons-collections
* activesoap jaxp-api (replace with glassfish-jaxb-api)
* commons-parent
* annogen
* commons-lang
* apache-commons-primitives
* oro
* apacheds
* camel 2.9.2 or major, http://camel.apache.org/ (required modules: camel-core, camel-jetty, camel-jms, camel-spring)
* easymock-classextension
* gentlyweb-utils
* groovy-gram
* TODO jrms
* mqtt-client
* karaf, module org.apache.karaf.shell.console
* TODO fuse-extra (module fusemq-leveldb)
* TODO pax-exam 1.x
* pax-logging
* sitemesh 2.4.2
* gemini-blueprint see http://www.springsource.org/osgi (spring-osgi).
* springframework-ws
* xbean 3.9 or major: maven-xbean-plugin, TODO xbean-blueprint (see {{bz|849955}}) and xbean-spring modules
* etc. (I am unsure of the full dep chain at this time

Latest revision as of 11:54, 4 September 2016

This page is for tracking progress on the packaging Eucalyptus 3.x in Fedora. We've been tracking this for three releases now, and the dependency packaging is mostly complete, except for Google Web Toolkit, which we can omit for now. Therefore, it's more useful for the top of this page to summarize the _other_ changes needed to make Eucalyptus build and run on Fedora 18.

Remaining tasks

Polish systemd units for eucalyptus services

There are three init scripts in eucalyptus:

  • eucalyptus-cloud - starts a java service, which may be a Cloud Controller, Walrus, or Storage Controller
  • eucalyptus-cc - starts a Cluster Controller (CC), which is a custom httpd instance with wso2-axis2 configured
  • eucalyptus-nc - starts a Node Controller (NC), which is a custom httpd instance with wso2-axis2 configured

In Fedora 18, we provide systemd units which simple execute the old init scripts, which have been moved to /usr/libexec/eucalyptus. Ideally, the old init scripts should go away completely.

Create SELinux contexts/policies

Eucalyptus must run in permissive mode in Fedora 18. We need to work on policy that will allow it to run in enforcing mode.

Make Axis2/Java 1.6 work for code generation

The C code generated by Axis2/Java 1.6.0 does not work with Eucalyptus's currently defined handlers. Currently, one must use an Axis2/Java 1.4 package to build a tarball of generated code for inclusion in the eucalyptus package.

Fix the reporting module

There is a build issue in the reporting module due to the use of Guava 9 in the upstream Eucalyptus build. For now, the module has been disabled.

Enable the admin console

The admin console is based on GWT, which is not yet in Fedora. It may not be worth the time to build it, though, as Eucalyptus intends to phase out the GWT-based UI.

Packaging Progress

These are the packages still in progress which are necessary for the Eucalyptus build:

# Package Version POM Review request Packager Status Comments
27 gwt 2.4.0 arg Clean-up Required Required for admin console
36 josql 2.2 RHBZ #822832 gil In Rawhide ActiveMQ deps
47 mqtt-client 1.3 RHBZ #853055 gil In Rawhide ActiveMQ deps
48 groovy-gram 1.2 RHBZ #846561 gil Awaiting Review ActiveMQ deps
49 pax-logging 1.6.9 RHBZ #849469 gil In Rawhide ActiveMQ deps
50 sitemesh 2.4.2 RHBZ #853439 gil Skipped ActiveMQ deps. This package was removed from review request queue.
51 apache-commons-primitives 1.1 RHBZ #832803 gil In Rawhide ActiveMQ deps
52 felix-fileinstall 3.2.0 RHBZ #855192 gil In Rawhide Apache Karaf deps
53 felix-webconsole 4.0.0 RHBZ #855193 gil Skipped Apache Karaf deps
54 hawtbuf 1.9 RHBZ #853050 gil In Rawhide mqtt-client deps
55 hawtdispatch 1.11 RHBZ #853052 gil In Rawhide mqtt-client deps
56 oscache 2.4.1 RHBZ #849470 gil Skipped Hibernate 3.x deps (module of the same name). This package was removed from review request queue.
57 swarmcache 1.0 RHBZ #849471 gil Skipped Hibernate 3.x deps (module of the same name). This package was removed from review request queue.
58 activemq 5.6.0 RHBZ #857193 madsa In Rawhide
59 classmate 0.5.4 RHBZ #815060 gil In Rawhide An Hibernate 4.x dependency. module hibernate-core
60 karaf 2.2.5 RHBZ #875692 gil Skipped ActiveMQ deps. This package was removed from review request queue.
61 gemini-blueprint 1.0.2 RHBZ #866239 gil In Rawhide ActiveMQ deps
62 springframework-ws 2.0.5.RELEASE RHBZ #877152 gil In Rawhide ActiveMQ deps
63 camel 2.10.4 RHBZ #968136 gil Awaiting Review ActiveMQ deps

Optional dependencies and sub-dependencies

Enough of ActiveMQ is built for Eucalyptus to function. Packages mentioned here are only necessary to activate more of the activemq modules.

ActiveMQ 5.6.0 dependencies:

  • activesoap jaxp-api (replace with glassfish-jaxb-api)
  • annogen
  • apache-commons-primitives
  • apacheds
  • camel 2.9.2 or major, http://camel.apache.org/ (required modules: camel-core, camel-jetty, camel-jms, camel-spring)
  • easymock-classextension
  • gentlyweb-utils
  • groovy-gram
  • TODO jrms
  • mqtt-client
  • karaf, module org.apache.karaf.shell.console
  • TODO fuse-extra (module fusemq-leveldb)
  • TODO pax-exam 1.x
  • pax-logging
  • sitemesh 2.4.2
  • gemini-blueprint see http://www.springsource.org/osgi (spring-osgi).
  • springframework-ws
  • xbean 3.9 or major: maven-xbean-plugin, TODO xbean-blueprint (see RHBZ #849955) and xbean-spring modules
  • etc. (I am unsure of the full dep chain at this time