[ ESO ]

DFS Group Home Page
DFS delivery procedure


Instrument Pipeline Installation Procedure (DRAFT)

ipip is a Perl5 script which installs a DFS Instrument Pipeline.

It has two modules, the first compiles the sources and installs the recipes.
The second one unpacks the content of the CalibDB tarfile and carries out an updateCalibDB command.


Interface Specification

  1. An instrument pipeline delivery consists of two mandatory tarfiles and a third optional one:

  2. As <quality> account, ipip will be called as:

    where the optional keyword offline will be used to flag a pipeline delivery to be used by
    the Quality Group at ESO Garching HQ.

  3. Even when a source-only release is delivered, the calibdb tarfile will have to be delivered as well.
    The vice-versa applies when only calibdb files have to be changed.

  4. The sources tarfile <instrument>-<rel>.tar.gz will contain a directory called <instrument>-<rel>,
    which will contain an executable called setup or setup.sh.

    setup will be the wrapper script hiding from ipip the internal details of the pipeline building process:

  5. In addition to that, the standard output and error of the script setup will be logged in the file /tmp/ipip-tmp<pid>-setup.log.
  6. The sources tarfile will also contain, under <instrument>-<rel>, a file called
    CONTACT which will contain the e-mail address of the person who is responsible for this delivery.

  7. The source tarfile may also contain a file called INSTALL.PARANAL, located under <instrument>-<rel>, which will contain detailed instructions on additional steps to be taken for the pipeline to run (like environment variables configuration etc. etc.).

  8. The calibdb tarfile will start at the instrument level, for instance:

    fors1/rul
    fors1/rul/fors1.akd
    fors1/rul/fors1.bdd
    fors1/rul/fors1.dpr
    fors1/rul/fors1.ehr
    fors1/rul/fors1.pdd
    offline/fors1.ehr
    dic/ESO-DFS-DIC.FORS1_QC

  9. As in the above example, it may also contain a directory called dic,
    meant to contain dictionary for QC1LogWriter

  10. The calibdb tarfile may also contain a directory called offline (also as in the example), which will contain some files to replace those located somewhere under the <instrument> tree, in case the offline qualifier has been activated. If no matching file is found, or if the offline option is not specified, the directory will be ignored

    Preliminary Checks

  11. the session must be running as <quality> account
  12. zcat, tar or gtar must exist
  13. $MIDASHOME and $MIDVERS defined and existing for esomidas
  14. $VLTROOT must be defined
  15. /tcal and /cal must exist and point to directories
  16. $MIDASHOME/$MIDVERS/pipeline must exist and be writable
  17. <quality> account existing
  18. <quality> account environment
  19. Operating system is either of SunOS, Linux or HP-UX.
  20. calibDb does not contain illegal files (via external script check-calib.pl, which is callable separately)

    M1

  21. What ipip's module one will do is:

    M2

  22. What ipip's module two will do is:
  23. ipip will have to have a table, read at runtime, containing the location (UT) of each instrument.
    This will be needed to cd to the correct path under /tcal, as quality, before untarring the tarfile
    and running updateCalibDb -a.
Notice that following this interface will not prevent the pipeline to be compiled and installed by hand.
 [Project and Developments]  [Overview page for this document]  [ESO]  [Index]  [Search]  [Help]  [News]