Skip to content

Configure Plugins to Connect to third-Party Tools

Squash TM can connect to third-party tools thanks to its plugins.
In most cases, you simply have to install the plugin and then configure it in the Squash TM Administration workspace to use it.

Learn More

To learn more about how to configure plugins, please visit the page Manage servers in the Squash TM Administrator Guide.

However, some plugins require additional configuration when it comes to the server:

  • Xsquash4Jira;
  • Jira Workflow Automation;
  • Jira Bugtracker;
  • Xsquash4GitLab;
  • Redmine Bugtracker;
  • Redmine Requirements;
  • Tuleap.

Xsquash4Jira and Jira Automation Workflow

Xsquash4Jira and Jira Automation Workflow are synchronization plugins that work with Jira Server, Jira Data Center, and Jira Cloud.

The synchronization interval of these two plugins is managed in Squash TM configuration file squash.tm.cfg.properties via the following property:

squash.external.synchronisation.delay = 300

By default, the delay between two synchronizations is set at 300 seconds (five minutes). To change it, enter the value in seconds, save, and restart Squash TM.

Info

This is the same property as the one used for Xsquash4GitLab plugin. This means that the synchronization delay is the same for Jira and GitLab synchronizations.

In Squash TM's file squash.tm.cfg.properties, a second property allows you to define the batch size for synchronizations (number of issues handled by package):

plugin.synchronisation.jira.batchSize = 50

By default, the batch size is set at 50, which corresponds to the default value in Jira. In Jira Server, this value is managed by the property jira.search.views.default.max. It is better that values are identical in both Jira and Squash TM.

The Jira Automation Workflow plugin only works if the Jira Bugtracker Server plugin or Jira Bugtracker Cloud is already installed in Squash TM.

Xsquash4GitLab

Xsquash4GitLab is a synchronization plugin that works with GitLab. It only works if GitLab Bugtracker is also installed in Squash TM.

Synchronization delay

The synchronization interval of this plugin is managed in Squash TM configuration file squash.tm.cfg.properties via the following property:

squash.external.synchronisation.delay = 300

By default, the delay between two synchronizations is set at 300 seconds (five minutes). To change it, enter the value in seconds, save, and restart Squash TM.

Info

This is the same property as the one used for Xsquash4Jira and Jira Automation Workflow plugins. This means that the synchronization delay is the same for Jira and GitLab synchronizations.

GitLab integration token

To set up Squash TM integration in GitLab, it is possible but not mandatory to define a token in Squash TM configuration file squash.tm.cfg.properties via the following property:

plugin.synchronisation.gitlab.webhook.secret-token

The characters allowed for the token are ASCII printable characters, namely lowercase letters, uppercase letters, numbers and the following special characters:

! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~

A second property allows you to show/hide the token in Squash TM:

plugin.synchronisation.gitlab.webhook.show-secret-token

When set to true, Squash TM project managers can see this token in Squash TM UI in order to copy/paste it in GitLab.
When set to false, the token is hidden is Squash TM UI.

Redmine Bugtracker and Redmine Requirements

Squash TM's Redmine Bugtracker and Redmine Requirements plugins require an additional plugin in Redmine.

Focus

The plugin installation in Redmine is not optional. This Redmine plugin is needed for the Squash TM plugins to work.

To install the plugin in Redmine, you must:

  1. Download the plugin redmine-rest-ext-api-plugin-1.0.0.zip for Redmine 3 or redmine4-rest-ext-api-plugin-1.0.0.zip for Redmine 4;

  2. Stop Redmine;

  3. Extract then put the plugin's content in Redmine's plugins folder;

  4. Restart the Redmine app;

Then, in the Redmine interface, as an administrator:

  1. Activate the API by checking the box Activate the REST API in Administration > Configuration > API Tab;
  2. Verify that the Squash TM plugin is installed in Redmine by going to Administration > Plugins.

Plugin Squash Tm sur Redmine

Apart from this plugin, the Redmine Requirements plugin can only work if the Redmine Bugtracker plugin is already installed in Squash TM.

Tuleap

Configuring Mapping Properties

The Tuleap Bugtracker plugin can be configured with properties. These properties have to be set in Squash TM's configuration file. A file delivered with this plugin presents a model configuration. You can copy and paste this file's content in the Squash TM configuration file squash.tm.cfg.properties.

The expected properties are the following:

Property Comment
plugin.bugtracker.tuleap.field.summary Name of the field Summary in Tuleap
plugin.bugtracker.tuleap.field.details Name of the field Details in Tuleap
plugin.bugtracker.tuleap.field.assignee Name of the field Assigned to in Tuleap
plugin.bugtracker.tuleap.field.severity Name of the field Severity in Tuleap
plugin.bugtracker.tuleap.field.status Name of the field Status in Tuleap
plugin.bugtracker.tuleap.field.attachment Name of the field Attachment in Tuleap

All the properties of the group plugin.bugtracker.tuleap.field are mappings that indicate to squash the technical name of certain Tuleap fields. These properties are only used for displaying issues in Known Issues tables of executions and executions steps as well as other workspaces.

Import the Certificate to the JVM

By default, the Tuleap API is only accessible through the https protocol. To communicate using this protocol, the JVM hosting Squash TM must know the Tuleap certificate. The procedure depends on your system, but generally, you must use keytool to import the certificate to the JVM. The procedure is described down below.

Connect to a Third-Party Tool using HTTPS

To use a third-party tool configured in https, you must install the matching plugin's jar in Squash TM, then import the tool's certificate in Squash TM's JVM.

Here are the steps to follow to retrieve and import the tool's certificate to Squash TM's JVM:

  1. Stop Squash TM;
  2. Download the tool certificate:
    • Enter the tool's URL using HTTPS in your browser;
    • Click on the lock in the address bar;
    • For example in Firefox, click on the arrow next to Connection Secure > More Information > View Certificate. Then, download the PEM (cert) file in the Miscellaneous section;
  3. Identify Squash TM's JVM;
  4. In Linux: Run this command (compatible with a unix system) by changing the values of the variables depending on the environment:

        export hostname=toolServer
        export cacerts=/usr/lib/jvm/java-openjdk/jre/lib/security/cacerts
        export cert=/etc/ssl/certs/ssl-cert-outil.pem
        keytool -importcert -alias $hostname -file $cert -keystore $cacerts -storepass changeit -noprompt
    
  5. In Windows:

    • Open Command Prompt;
    • To go to the JVM's bin, enter the following command:

      cd C:\ProgramFiles\Java\jre\bin
      
    • Run this command to import the certificate:

      keytool -importcert -alias Outil -file "C:/Downloads/outil-org.pem" -keystore "C:/ProgramFiles/Java/jre/lib/security/cacerts" -storepass changeit -noprompt
      

      Tool: server alias
      "C:/Downloads/outil-org.pem": Tool certificate location;
      "C:/ProgramFiles/Java/jre/lib/security/cacerts": JVM cacert location.

  6. Restart Squash TM for the certificate to be taken into account.