wiki:Obsolete/Development/UsefulLinks

Useful Links for Developers

Links for developers wishing to develop or modify Quattor components or services:

Project Conventions

Build Framework

The Quattor community is moving from a make-based system to one driven by maven. This shift is being done in order to simplify the build tools and to take better advantage of existing software development tools (e.g. for continuous integration). The focus will initially be on migrating the Quattor configuration components. Instructions for using both the old build system and the newer one are below.

Software Development Tools

Source Repository

The Quattor source code is managed through a Subversion repository at SourceForge. This includes the core Quattor tools as well as the configuration components. Currently, the community's common configuration for grid services resides in another repository.

Generated Packages & Artifacts

The project is currently migrating to the use of maven for managing the Quattor build and release processes. For the parts of the Quattor toolkit that have migrated, there are maven repositories available: one for snapshots (development packages) and another for production releases. These can be viewed with a standard web browser or used through maven. The access and configuration information for the two repositories follows.

Note: Currently those needing access for uploading to the repositories can request it. Eventually, upload access will be restricted only to the official build system.

Snapshot (Development) Repository

Browse the development repository or configure maven as follows.

<repository>
    <id>quattor-snapshots<id>
    <name>quattor-snapshotsname>
    <url>http://stratuslab-srv01.lal.in2p3.fr:8081/content/repositories/quattor-snapshots/</url>
</repository>

Releases Repository

Browse the releases repository or configure maven as follows.

<repository>
    <id>quattor-releases</id>
    <name>quattor-releases</name>
    <url>http://lapp-repo01.in2p3.fr:8081/nexus/content/repositories/releases/</url>
</repository>

In most cases, this is already provided by the parent POM.

Release process

Bug tracking

See Contacts page.

Configuration Modules

Before developing a new configuration module, please search the existing code repository to ensure that there is not already something similar. Also send an email to the Quattor discussion list to see if anyone else has a private configuration module or is interested in collaborating with you. A list of components along with their man pages is available on the web.

To create a working skeleton Quattor configuration module, use maven to create one from the standard "archetype". Use the following command:

mvn archetype:generate \
   -DarchetypeArtifactId=cfg-module \
   -DarchetypeGroupId=org.quattor.maven \
   -DarchetypeVersion=1.31

Use the standard groupId for the component if this will become part of the Quattor repository. Once generated, you can ensure that the component compiles with mvn package. You should then modify the perl module and pan language files as appropriate for the component that you are building.

Pan language

Gory details of some procedures and modules

To discuss

Last modified 11 years ago Last modified on Aug 1, 2013, 12:51:54 AM