How can Confluence be upgraded to provide a new installation directory, and retain the old one?
Asked by admin admin:

Hello there,

So I upgraded my Confluence server over the weekend using this guide;

<https://confluence.atlassian.com/doc/unattended-installation-838416261.html>

And the server installed successfully.

HOWEVER, I am far more familiar with installation via archive, so having the new installation inherit the old installation directory was disconcerting.

I am tentatively hopeful that there is some alteration to the response.varfile (provided below) which will allow my new installation to instantiate a new directory for itself, and be non-reliant on the previous installation;

app.confHome=/var/atlassian/application-data/confluence  
app.install.service$Boolean=false  
portChoice=custom  
httpPort$Long=26112  
rmiPort$Long=8001  
launch.application$Boolean=false  
sys.adminRights$Boolean=true  
sys.confirmedUpdateInstallationString=false  
sys.installationDir=/opt/atlassian/atlassian-confluence-7.2.1  
sys.languageId=en  

On review of this response.varfile however, it did not include the options necessary to upgrade a server; Notably an existing installation directory. On review, this option was present in my Jira server's response.varfile;  

existingInstallationDir=/opt/atlassian/atlassian-confluence-6.12.1  

The server did install, but the upgrade subsumed the installation directory of the previous server, v6.12.1, as provided above.  

I am seeking a way to alter my future upgrades so that the server will upgrade into a distinct installation directory.


Answers:
author: Nic Brough -Adaptavist-
body: You would need to take a copy of the existing installation over to where you want to upgrade, remembering to change the file that points to the home directory, pointing it to the copy.

You can then upgrade either of them (although if you want to run both at the same time, you'll also need to change the running port for one of them)

comments: author: Nic Brough -Adaptavist-
body: Oh, and you'll need another copy of the database


author: admin admin
body: The purpose isn't for operation, as the server if successfully upgraded, will not require the old installation directory;

My purpose is to have it there for the purposes of retention and review, as Atlassian support has requested such as this in the past so they could see deviations from the expected course that occurred during upgrades as well as to resolve newly recognized bugs.

This seems wise from my own perspective as well, so my objective is to utilize the bin file to automate delivery of an upgrade via a fully populated response.varfile.

The issue I am experiencing is that when I installed an upgrade from v6.12.1 to 7.2.1 the installation directory was manipulated from v6.12.1 to v7.2.1 in-place, which isn't my intention, as shared above.

What I believe I need in my response.varfile in addition to requisite lines is to have (A) a line which references the present/old installation directory and a line which references where the new installation directory will be.   

Ideally speaking I would prefer to have a list of all the options which can be set in this varfile, so I could deliver even more through automation, but I don't believe Atlassian keeps a list with all of the options available. If you do know a dev that has this though, I would appreciate touching base with them.


author: admin admin
body: In comparison to my response.varfile included in my initial response, after successful upgrade, this file on my Jira server does include these;

# install4j response file for JIRA Software 8.5.1  
app.install.service$Boolean=true  
app.jiraHome=/var/atlassian/application-data/jira  
existingInstallationDir=/opt/atlassian/atlassian-jira-7.12.3  
launch.application$Boolean=true  
portChoice=default  
sys.adminRights$Boolean=true  
sys.confirmedUpdateInstallationString=false  
sys.installationDir=/opt/atlassian/atlassian-jira-8.5.1  
sys.languageId=en


author: admin admin
body: At the least I now have a copy of v6.12.1's response.varfile, so I can use this as a template for future upgrades.


Tags: confluence-server

server