Skip to content

tapanagupta/mi-instrument

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

===========================================================
Ocean Observatories Initiative Cyber Infrastructure (OOI CI)
Integrated Observatory Network (ION) - OOINet

Marine Integration source code repository.

(C) The Regents of the University of California, 2010-2014
See LICENSE.txt for license.
===========================================================

This is the repository that contains the implemention for all marine integrations
including drivers and transforms.

Marine integration packages are intended to be developed and released
independently of other ION releases.

To develop drivers you must install ION and the Instrument Development Kit.  

INSTALL prerequisite software for COI-services
============================================
- homebrew
    /usr/bin/ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
    brew doctor
    brew tap homebrew/science

- python 2.7.x
    > brew install python --framework --universal

- git 1.7.7: Use brew or download the Mac or Linux installer and run it

- libevent libyaml zeromq rabbitmq hdf5 pkg-config netcdf freetype spatialindex udunits, if not already present:
    brew install libevent libyaml zeromq rabbitmq hdf5 pkg-config netcdf freetype spatialindex udunits

- Install Postgres with Homebrew (PostgreSQL is the default but CouchDB is possible)
    brew install postgres postgis

    If you have trouble with the installation, please see:
    https://confluence.oceanobservatories.org/display/CIDev/Postgres+Datastore
    https://confluence.oceanobservatories.org/display/CIDev/M112+Geospatial+Search

- Once Postgres is running, add an ion user
    createuser ion

- pip
    easy_install pip
- virtualenv
    easy_install --upgrade virtualenv
    easy_install --upgrade virtualenvwrapper
- modify ~/.bash_profile
    add this to the end:
       export WORKON_HOME=$HOME/OOICI/virtenvs
       . /usr/local/share/python/virtualenvwrapper.sh
- setup a virtual environment to work in.
    mkvirtualenv --no-site-packages --python=python2.7 ooi
    pip install -U setuptools==0.8
    pip install numpy==1.7.1


INSTALL
=======

# Download the lastest source from github.  Note: in order to run 
# start_driver or package driver it is mandatory that you are running
# on a fork of the ooici/marine-integrations repository.

# Read only checkout
$ git clone git://github.com/ooici/marine-integrations

# Read / write checkout
$ git clone git@github.com:<your_github_uname>/marine-integrations

# Update all submodules (ion-definitions, coi-services, pyon)
$ cd marine-integrations
$ git submodule update --init

# Buildout the environment
$ workon ooi
$ python bootstrap.py -v 2.2.0
$ bin/buildout
$ bin/generate_interfaces


** If matplot lib fails to build due to not finding the free type headers, try:
    if /usr/X11/lib/pkgconfig has a file named freetype2.pc, then add the following line to your .bash_profile
    export PKG_CONFIG_PATH=/usr/X11/lib/pkgconfig


####
##   Fresh Build
####

If you have unexplained issues or have done a large pull you may want to do a full rebuild.  

# Clean the last build
$ ant clean clean-buildout

# remove submodules
$ rm -r extern

# reload submodules, submodule sycn read the .gitmodules file and resets your
# local git modules index.
$ git submodule sync
$ git submodule init
$ git submodule update

# Buildout
$ python bootstrap.py
$ bin/buildout
$ bin/generate_interfaces


USAGE
=====

####
#    Configuration
####

The first time you run an IDK script it will create an IDK configuration
directory (~/.idk).  In this directory you will find IDK log files and 
and IDK configuration file.  The important configuration that you are 
looking for in this file is 'working_repo'.  That is the directory where
you checkouted the marine-integrations repository.

If you move the local repository directory that file needs to be updated.
You can do this from the command line by running idk_rebase from the root 
of the local marine-integrations repository.

####
#    New Driver Workflow
####

bin/start_driver:
   Run this process to start developing a new driver.  

bin/switch_driver:
   Switch to

bin/test_driver:
   Run this process to run driver tests.  If no options are given all tests 
   (unit, integration, and qualification) are run.  This program offers 
   different usage options.  Use -h for detailed usage.

bin/package_driver:
   Run this process to submit the driver for ingestion into the OOI network.  
   The submitted driver could be rejected if tests are not complete, there is
   a naming conflict, or any other issues.  Feedback will be sent to the 
   developer to the address on your gethub account.

bin/idk_rebase:
   If you move the IDK directory this command will update your local IDK 
   configuration with the new directory.

bin/da_server:
   Start the direct access server

Table of Contents
=================
Source code is organized in directories by instrument vendor. The following is
a listing of currently deployed instruments by make.

Instrument	  location
----------------------------------------------
ADCP          teledyne.workhorse.adcp
ADCPS         teledyne.workhorse.adcp
BOTPT         noaa.botpt.ooicore
CAMDS         kml.cam.camds
CAMHD         subc_control.onecam.ooicore
CTDBP-NO      seabird.sbe16plus_v2.ctdbp_no
CTDPF-Optode  seabird.sbe16plus_v2.ctdpf_jb
CTDPF-SBE43   seabird.sbe16plus_v2.ctdpf_sbe43
D1000         mclane.ras.d1000
FLOR          wetlabs.fluorometer.flort_d
HPIES         uw.hpies.ooicore
MASSP         harvard.massp.mcu
NUTNR         satlantic.suna_deep.ooicore
OPTAA         wetlabs.ac_s.ooicore
PARAD         satlantic.par_ser_600m
PCO2W-A       sunburst.sami2_pco2.pco2a
PCO2W-B       sunburst.sami2_pco2.pco2b
PHSEN         sunburst.sami2_ph.ooicore
PPSDN         mclane.ras.ppsdn
PREST         seabird.sbe54tps
RASFL         mclane.ras.rasfl
SPKIR         satlantic.ocr_507_icsw.ooicore
THSPH         um.thsph.ooicore
TMPSF         rbr.xr_420_thermistor_24.ooicore
TRHPH         uw.bars.ooicore
VADCP         teledyne.workhorse.vadcp
VEL3D-B       nobska.mavs4.ooicore
VEL3D_B       nobska.mavs4.ooicore
VEL3D-C       nortek.vector.ooicore
VEL3D_C       nortek.vector.ooicore
VELPT         nortek.aquadopp.ooicore
ZPLSC         kut.ek60.ooicore

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%