Moving your STASH_HOME directory out of your Stash installation directory
Prior to Stash 3.5.0, it was possible to set the STASH_HOME
directory, which is used to store application data (e.g. repositories, logs, caches and plugins) as the same directory as or a subdirectory of the installation directory, where binaries, jars and scripts are stored for running Stash. Doing so causes a number of problems including:
- Increased pain during upgrades as the Stash installation directory will be changed or replaced but will point to the existing home directory
- Classpath corruption due to conflicts between the
STASH_HOME/lib
and theSTASH_INST/lib
For more information, see - STASH-5259Getting issue details... STATUS
In order to prevent these sort of problems occurring, as of Stash 3.5 the STASH_HOME
directory must be outside the installation directory.
Moving a STASH_HOME directory which is a subdirectory of the installation
This is a relatively straight forward process:
- Create a directory outside of the Stash installation directory
- Copy the contents of your current home directory into your new home directory
- Update setenv.sh/setenv.bat or your environment configurations so that the
STASH_HOME
environment variable points to the new directory
Extracting the STASH_HOME directory which was set as the same directory as the installation
This process for this is a little more involved:
- Create a directory outside of the Stash installation directory
- Copy over the
shared/
(if it exists),caches/
,plugins/
anddata/
(if it exists) directories from your old home directory to your new home directory - Copy your
stash-config.properties
(if it exists) from your old home directory to your new home directory - Create a
lib/
directory in your new home directory and copy any JDBC drivers which you placed in your oldlib/
directory - Update setenv.sh/setenv.bat or your environment configurations so that the
STASH_HOME
environment variable points to the new directory