Execution Server - Generic Update¶
Overview¶
This page will help you upgrade your Squash TF Execution Server and your job collection to the latest version available.
Its instructions are generic and need to be followed for each update; however the process can have additionnal steps for some versions.
These specific instructions are documented in their own sections of this guide.
Note
The following procedure is identical whether your Execution Server runs on a Windows or a Linux computer.
Warning
We recommend updating step-by-step from your current version of Squash TF execution server to the next until you reach the latest.
If you wish to jump ahead to the latest release please read carefully the instructions dedicated to each version of the Execution Server you pass by.
The guide is divided in 3 major parts :
- First the process to update a physical install of Squash TF Execution Server on a local system.
- Second the process to update a Docker install.
- Third the various configurations to update in Jenkins. This part is necessary for both install.
Physical Server update¶
Setup¶
- Download the version of Squash TF you wish to install here.
- Stop your current server.
- Install the new TF Execution Server in a separate location as a classic new installation.
Server & jobs migration¶
- Check the page dedicated to updating to the chosen version of the server and follow the specific instructions in the Before migrating jobs section.
- Copy your custom jobs from {current_server_path}/execution_home/jobs/ to {new_server_path}/execution_home/jobs/
Warning
Do not copy Squash TF templates (beginning by 00) and SquashTAConditionSweepJobs, so avoid copying the whole jobs directory.

- Copy and replace all .xml files from {current_server_path}/execution_home/ to {new_server_path}/execution_home/

- Copy and replace the file server.xml located in {current_server_path}/apache-tomcat-8.5.16/conf/ to {new_server_path}/apache-tomcat-8.5.16/conf/

Optional steps¶
- If you wish you can copy and replace the users directory from {current_server_path}/execution_home/ to {new_server_path}/execution_home/
Tip
If this step isn’t done the only user will be the administrator. By default -> login : admin // password : admin
- If you wish you can copy Jenkins plugins you personally installed from {current_server_path}/execution_home/plugins/ to {new_server_path}/execution_home/plugins/
Caution
Be sure to not overwrite one of the plugins we provide with a newer or older version to ensure compatibility. You could also re-install your plugins using the Jenkins interface later.
TF - TM connection update¶
- Copy and replace the file ta.linkConf.properties from the root of your old execution server to the root of your new one

Docker update¶
If your Squash TF Execution Server is deployed in a Docker container the updating procedure is slightly different.
In order to keep your Jenkins jobs parameterized and your custom Jenkins configuration, you will need to extract data from you old container (default name : squash-ta-server) and provide it to your new one.
Warning
We recommend creating a backup of your current Execution Server container before beginning the update process to prevent the loss of data.
Tip
The files to keep during the update are the same as those transferred during a physical install.
If you are an experimented Docker user you can choose your preferred method to access and move the data between your containers.
Simply follow the physical server update process to know what files and directories to keep and transfer over.
Note
In this guide we will assume the name of the container running Squash TF Execution Server and the path to the server’s files are the default (i.e. respectively squash-execution-server and /opt/squash-ta-server).
In this guide we will use the docker cp command exclusively to keep things simple but you could also use Docker Volumes or other means to access data from your containers.
The cp command can be used on a running container but we recommend stopping the Squash TF Execution Server container during the update process.
Copy the content of /opt/squash-ta-server from the container to the host system :
docker cp squash-execution-server:/opt/squash-ta-server {path_of_choice}/squash-server-copy
- Check the page dedicated to updating to the chosen version of the server and follow the specific instructions in the Before migrating jobs section.
Filter the execution_home directory located in squash-server-copy :
Keep the jobs and users directories and all .xml files before deleting all the other files and directories in execution_home. If you use Jenkins Agents, you can also keep the nodes directory. To do so, use the following command :
rm -r {path/to/squash-server-copy}/execution_home/!(\*.xml|"jobs"|"users"|"nodes")Delete the templates provided (beginning by 00 and SquashTAConditionSweepJobs) in the jobs directory.
- Stop (if it was not already done) and rename your old Squash TF container to avoid naming conflict with the new one you will be creating shortly.
- Follow these instructions to launch the new Squash TF Execution Server.
Stop the new container for now :
docker stop squash-tf-execution-server
Copy the content of {path/to/squash-server-copy}/execution_home to the execution_home directory in the new container :
docker cp {/path/of/your/choice/squash-server-copy}/execution_home/. squash-execution-server:/opt/squash-ta-server/execution_home
Copy the server.xml file from {path/to/squash-server-copy}/apache-tomcat-8.5.16/conf/ in the /opt/squash-ta-server/apache-tomcat-8.5.16/conf/ in the new container :
docker cp {/path/of/your/choice/squash-server-copy}/apache-tomcat-8.5.16/conf/server.xml squash-execution-server:/opt/squash-ta-server/apache-tomcat-8.5.16/conf/
- Copy any other data you wish to transfer over to the updated execution server.
- If you wish you can follow step 9 or 10 of the physical update process to keep any Jenkins plugins you may have installed and/or update your connection with Squash TM .
- Use the docker start command to restart your server properly :
docker start squash-tf-execution-server
Jenkins configuration update¶
- Start the new Execution Server and access the corresponding Jenkins page (login with an administrator account).

Go to
Manage Jenkins
followed byConfigure system
:- Find the section
Global Pipeline Libraries
and the subsectionSource Code Management
. - In the field
Repository URL
replace the path of your old version with the new one (everything before /execution_home/pipeline-libs/.. ). - Check that the Jenkins url is the right one for your new execution server (TM-TF link).
- Click on
Save
.
- Find the section


Go to
Global Tool Configuration
:- Find the
Maven
section and click on Maven installations… if the section is empty. - In the field
MAVEN_HOME
replace the path of your old version with the new one (everything before /apache-maven-3.5.0). - Click on
Save
.
- Find the
- If you have some of your own Jenkins plugins that you didn’t copy to the new plugin directory in the new execution server you can download them again at this time in the process.
- In case of a TM-TF link remember to also check Jenkins url in Squash TM (
Administration
thenAutomation Servers
) :
- Check the page dedicated to updating to the chosen version of the server and follow the specific instructions in the After migrating jobs section.
- Finally test your migrated jobs to confirm the update was successfull and your previously working jobs still behave as you want them to.