Development

How we keep OODT alive and kicking

Like many open source projects, Apache OODT is continually being developed and improved upon by its devoted team members.

Issue tracker

To submit bugs, feature requests and other issues to the Apache OODT project you can use the Apache Jira. Sign up and fill out an issue form, from there you can follow the progress from inception to build.

Build Details

The majority of the components of OODT are written in Java, while the Agility component is written in Python. Knowledge of both is nice, though.

Each component of the Java build is controlled by Apache Maven. There is however also a top-level project object model that orchestrates building all of the OODT components. Maven is not used for the Agility component; being Python, it takes advantage of the traditional Python Distutils enhanced by Distribute.

Testing

While we may not fully subscribe to the idea that "untested code is broken code", we do strive to include a lot of automated unit and functional testing. Apache OODT has its own Jenkins continuous integration server that runs nightly, and automatically after each commit.

Those with access to the Apache Jenkins instance can view our Clover Test Coverage Reports. You can generate the Clover reports yourself if you execute:

mvn clean com.atlassian.maven.plugins:maven-clover2-plugin:instrument com.atlassian.maven.plugins:maven-clover2-plugin:setup com.atlassian.maven.plugins:maven-clover2-plugin:aggregate com.atlassian.maven.plugins:maven-clover2-plugin:clover test install -Dmaven.clover.skipGroverJar=true

To find out more about Clover Tests please visit the Clover wiki page.

OODT Roadmap

Using the issue tracker we try our best to plan our releases setting issues for releases based upon community requests and requirements. You can check out the Release Roadmap for future releases.

Source Code Management

OODT uses one of Apache Infrastructure's Writable Git Repositories for source code management with the OODT repsoitory being located at https://git-wip-us.apache.org/repos/asf?p=oodt.git

As a User, you will most likely want to work with the Github mirror as it is typically easier to submit patches whilst keeping up with development. It should be noted that the Github mirror is NOT the canonical source code for Apache OODT. The canonical code resides at the Writable Git Repository as mentioned above. If you are working with the Github Mirror you will most likely want to follow the Workflow as described within the README.

On the other hand, if you are an OODT Developer actively developing the codebase then you will be most frequently interacting with the Writable Git Repository. The following explains how you can migrate from the old SVN repository to the Git repository.

Say for example you are currently in $OODT_HOME, you can migrate as follows:

  1. git init
  2. git remote add origin https://git-wip-us.apache.org/repos/asf/oodt.git
  3. git fetch
  4. git checkout -b merge-branch
  5. git fetch --all
  6. git reset --hard origin/master
  7. git checkout master

The above will prepare your repository and enable you to sync with the live development code maintained within the Writable Git Repository. If you have any questions and/or queries then please reach out to us on the mailing lists