OOI logo

Where am I?

This is ooici.net, also known as amoeba.ucsd.edu, the development server for Ocean Observatories. This is a page of links for OOI developers, please see the CI wiki for more information.

New developers please start here.

Use the source, Luke

Our current source code is here on github. Please email the helpdesk if you need commit access. Previously, we used a locally hosted Git repo fronted by gitosis and gitweb. All current activity is moved to github, but you can browse the old repositories if you want to.

Testing, code reviews and issue tracking

  • FishEye and Crucible are tools for code metrics, report and peer code reviews.
  • Jira issue tracker and project management app. (See this page for Jira usage.)

    Automated build and test

    Our buildbot is here.

    Please see this Confluence page if you want to know more about our local configuration/installation of buildbot.

    Code coverage analysis

    The buildbot runs a coverage analysis, results are here.

    Protocol definitions

    This web app looks up protocol definitions by ID or string, give it a try. Source code is here. Also used in the Doxygen docs to link service definitions to their protocol buffer definitions.

    Python packages

  • Generated from source on GitHub
  • This directory contains officially released versions.
  • Patch level oracle (source code is here) shows current patch levels for the google protocol buffers repository.

    Collaboration tools

    We have an Etherpad here, and also run an ejabberd server - see the tutorial for details.

    Etherpads:

  • Dev team meetings pad, moved to wiki post-meeting.

    Architecture and source code documentation

    A lot of our top-level design documention is done using a commerical product call Enterprise Architect. As that's non-free, we have HTML export from EA online here.

    Our (evolving) coding standards include the use of Doxygen, which generates documentation from source code and annotations therein. This section is for that documentation, which is mainly aimed at programmers who need to use, maintain, extend or explore our code.

    We're using local buildbot setup to automate cross-platform testing, packaging, code analysis and the generation of documentation. Right now, these are regenerated every time code is committed to git via a buildbot hook.

    Docmentation directory for projects of interest:

    1. skeleton -- Skeleton example project
    2. Ion core, python version

    Numeric data

  • pydap data server (test data sets for unit tests, OpenDAP/WMS/KML formats)

    External links

  • Twisted API
  • Twisted core docs (finger)
  • Twisted examples
  • txAMQP
  • RabbitMQ