easysoa / EasySOA

A light, collaborative platform to make Service Oriented Architecture simple.
http://www.easysoa.org
35 stars 8 forks source link

Improve build : FraSCAti #92

Open mdutoo opened 12 years ago

mdutoo commented 12 years ago

For a newcomer (and us), building FraSCAti is currently the most cumbersome step of building EasySOA, see tdelprat's experience at #80 & #87 "Improve build system".

See current problems and workarounds at https://github.com/easysoa/EasySOA/wiki/Building-easysoa and https://github.com/easysoa/EasySOA/wiki/Releasing-EasySOA .

EasySOA currently relies on FraSCAti's latest development version to benefit quickly from new INRIA patches and improvements. Main problems are :

Cleaning up FraSCAti build by putting as much as possible dependencies in a "good" maven repository, Sonatype's Central if possible (or OW2 but that would go against Maven good practice), especially old / unmaintaned ones like OpenArchitectureWare's

2. providing nightly builds.

(note that it doesn't solve transitive dependencies though, see above)

That could be done using FraSCAti CI (http://bamboo.ow2.org/browse/SCA) and a snapshot repository. Possible snapshots repository are :

going further towards having a smaller EasySOA-targeted FraSCAti build with only things (repositories, artifacts) we require :

This can be done by a separate build, a maven profile, or further rethinking the top of the FraSCAti build.

Note that having our own bootstrap - WebExplorer's actually - already goes this way, as does the long term goals of making FraSCAti more modular.

mdutoo commented 12 years ago

As of 2012/02/14, FraSCAti has nightly builds & is configured as follows, TODO update EasySOA poms & dev doc and see to what further extent FraSCAti maven setup has been cleaned up (own repository, OAW...).

FraSCAti is continuously built on following two integration servers:

If you need to know the status of the current development of FraSCAti (the SVN directory /trunk), check these two dashboards.

Maven artefacts for FraSCAti are automatically deployed at https://frascati-repo.inria.fr/nexus/ Use following in your pom.xml files to have access to all FraSCAti artefacts:

<repositories>
<repository>
<id>frascati-repo</id>
<name>FraSCAti Nexus repository</name>
<url>https://frascati-repo.inria.fr/nexus/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>

<pluginRepositories>
<pluginRepository>
<id>frascati-repo</id>
<name>FraSCAti Nexus repository</name>
<url>https://frascati-repo.inria.fr/nexus/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories> 

Moreover, as of 2012/02/23, Sonar metrics for FraSCAti are available at http://sonar.ow2.org . Other metrics computed by Ohloh are available at http://www.ohloh.net/p/frascati .

JGuillemotte commented 12 years ago

Update of EasySOA pom's to add references on new FraSCAti continuous build repositories.

The Main work was to add the repositories specified in the previous comment in the parent projects : easysoa-proxy-parent and easysoa-registry-parent.

In addition, old FraSCAti repositories where removed in the parent POM's to avoid dependencies version conflicts.