********************************* Install the ReDCaT Delivery Tools ********************************* The following are instructions for creating a delivery environment and installing the ReDCaT Delivery Tools package. In case of any issues or questions, contact the ReDCaT Team, redcat@stsci.edu. .. _redcatconda: Creating a Delivery Environment =============================== Before installing the Delivery Tools, we recommend creating a dedicated ``redcatconda`` environment that is used for creating and submitting reference files. This is because there are particular dependencies required for the tools to work successfully with CRDS and JWST software, and any issues associated with these packages will be somewhat self-contained and easier to diagnose. For a breakdown of how to create a new environment, check out `these instructions `_ and be sure to use ``python=3.5`` or ``python=3.6``. HST Users --------- For HST instrument team users, the steps in creating a new environment found above should be sufficient to successfully run the Delivery Tools. In summary, an HST user should create their environment with the following command:: conda create -n redcatconda python=3.6 stsci JWST and ReDCaT Team Users -------------------------- For JWST and ReDCAT Team users, the installation is a bit more complicated. The first step, in addition to the typical installation described in the training above, will be adding the ``conda-dev`` channel. The reason for this is because ``crds`` requires the ``jwst`` package to certify JWST pipeline references. The pipelines in ``jwst`` as well as CRDS support for those pipelines are still in development, which can require reference file deliveries or updates to ``crds`` to support those changes. .. warning:: Using the dev channel comes with the following caveats/waivers\: This conda channel, if installed incorrectly into your user environment, may render your existing Anaconda installation unusable. This is pretty rare, but it is something to be aware of. Support for use of the astroconda-dev channel from DATB/SCSB will be provided since it is used for the support and release of JWST software for now. However, the ReDCaT Team should be contacted *first* with any issues regarding creation of a ``redcatconda`` environment or installation of the Delivery Tools. If conda-dev "doesn't work", the contingency is to switch back to the public release and/or install the software that's required manually, i.e. by cloning the necessary repos and installing from the source until the underlying issue can be resolved. Here is a useful `resource `_ for installing ``jwst`` release versions. If this is the case, the ReDCaT Team will provide assistance. In summary, JWST users will need to perform the following steps to create a ``redcatconda`` environment:: conda create -n redcatconda -c http://ssb.stsci.edu/conda-dev python=3.6 stsci jwst Keeping the Delivery Environment Updated ---------------------------------------- In order for the ReDCaT Delivery Tools to run successfully, the conda environment used for reference file deliveries should be kept up to date. To ensure that the environment used for reference file deliveries is updated properly, executed the following:: conda update --all .. warning:: For those users who will need to use the dev channel and the ``jwst`` package and the versions of ``crds`` that come with it **be aware**\: The JWST pipelines (and therefore CRDS) are changing *rapidly* at this time. This means that in order to keep up to date with new requirements, standards, etc, you will need to update your environment **often**. In fact, for users who will be supporting a JWST instrument, we recommend updating your delivery environment *before beginning each delivery*. Installing the ReDCaT Delivery Tools ==================================== After creating a delivery environment with the requirements described in the `Creating a Delivery Environment`_ section, users can install the Delivery Tools via ``pip`` or from the source in their delivery environment. The following examples assume that an environment named ``redcatconda`` was created. .. note:: **Before** proceeding with the installation be sure to activate your delivery environment with:: source activate redcatconda Installing with Pip ------------------- The best option for installing the Delivery Tools is via ``pip``:: pip install /grp/redcat/SCRIPTS/REDCAT-Delivery-Tools The reason for this is that the tools are currently not managed via ``conda``, and there are certain considerations and restrictions that the Team needs to enforce. In the future, much of this package will be integrated into the ``crds`` package at which point installing from this particular directory will no longer be necessary. To upgrade your existing installation:: source activate redcatconda pip install /grp/redcat/SCRIPTS/REDCAT-Delivery-Tools --upgrade Installing from the Source -------------------------- To install from the source code, you need to first clone the repository from GitHub. Cloning via HTTPS:: git clone https://github.com/spacetelescope/REDCAT-Delivery-Tools.git source activate redcatconda pip install REDCAT-Delivery-Tools Notes and Warnings ================== .. warning:: While the tools are not managed with ``conda``, users will need to ensure that they are keeping these tools updated *in conjunction with* keeping their conda environments up to date. Running ``conda update --all`` **will not update the ReDCaT Delivery Tools at this time**. Discrepancies in Installed Subpackages -------------------------------------- Currently, the Delivery Tools are set up to install packages selectively depending on the user's needs. What this means is that ReDCaT Team members will have additional packages installed that an Instrument team user will not. However, if there is a special case where a non-ReDCaT user needs to have the additional packages installed, please contact the ReDCaT Team, redcat@stsci.edu Instrument team users should expect the following packages under their top-level ``reffile_delivery_tools`` package\: - ``instrument_team_tools`` - ``misc`` ReDCaT team members should expect the packages above as well as the following additional packages\: - ``redcat_tools`` - ``redcat_scripts``