Skip to content

isisStartup scripts fail outside of USGS systems #5478

@rvwagner

Description

@rvwagner

ISIS version(s) affected: Every version since $ISISROOT/../data became ISISROOT/../isis_data (4.4.0, looks like)

Description

All of the $ISISROOT/isis/scripts/isis*Startup.* scripts check for the existence of the old data directory within $ISISROOT, correctly find that the old path does not exist, and fall back on a path that only exists on USGS internal systems. All subsequent attempts to do anything with the isis_data directory (e.g. spiceinit) will then fail if you don't work at the USGS.

The bad code (from the bash version, others are all similar):

if [ -d $ISISROOT/../data ]; then
    ISISDATA=$ISISROOT/../isis_data

These may be deprecated, I'm not sure, but they're convenient for initializing ISIS in a script. Which I do all the time, but it's only recently that public ISIS has gotten all of the LROC-specific stuff needed for me to try to move away from our custom build of 3.10.2, and thus find this bug.

How to reproduce

Start a terminal session with no ISIS variables set.

export ISISROOT=/some/path/to/an/ISIS/install/that/is/not/usgs/cpkgs/isis3/isis
source "$ISISROOT/scripts/isisStartup.sh"
echo "Should be '$ISISROOT/../isis_data'"
echo "Is actually '$ISISDATA'"

Solution

In all the isis*Startup.* scripts, change the path in the conditional to look for /isis_data instead of /data.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinginactiveIssue that has been inactive for at least 6 months

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions