Status: Dev backlog
Affects Version/s: 6.5.0, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 7.0.0, 7.0.1, 7.1.0
Fix Version/s: None
Environment:Linux with the RPM Package.
Upgrades of RPM-based installs will always fail if setup with an --instancePath or the RPM is installed to the system using a --prefix other than /opt/opendj, which is hardcoded.
While the documentation states the rpm package "Installs server files in the /opt/opendj directory", the following is true.
- The DS supports set up using an --instancePath to separate the binaries from the data.
- The RPM facility allows a package to be installed in any location.
- The DS upgrade tool always looks for the instance to be located in /opt/opendj
Reproduction steps: using --instancePath
- Install the RPM per the install guide; rpm --install DS-7.0.1-1.noarch.rpm
- Setup the DS; ./setup --instancePath /opt/ds1
- Upgrade: rpm --upgrade opendj-7.1.0-1.noarch.rpm
While the binary files are in /opt/opendj, the instance including the config file path are installed into /opt/ds1.
Reproduction steps: using rpm --prefix=<path>
- Install the RM with a prefix; rpm --prefix /opt/ds1 --install DS-7.0.1-1.noarch.rpm
- Setup the DS; ./setup
- Upgrade: rpm --prefix /opt/ds1 --upgrade opendj-7.1.0-1.noarch.rpm
A workaround would be to stop the DS and relocate all the --instancePath files into /opt/opendj, but this is not reasonable.