Page tree

On this page:

App Configuration

TeamCity Integration for Jira app allows you to configure parameters of build indexation. You can quickly set the appropriate parameters depending on your connectivity, size of TeamCIty instance and number of builds and configurations.

  1. Open the Jira's Administration console.
  2. Navigate to Applications > TeamCity Configuration > Global Configuration.
  3. Select the Global Configuration section.

For app versions older than 2.1.0 the configuration section is available at Jira administration console > Apps > TeamCity Configuration.


Modifying Configuration of Indexation

  1. On the Global Configuration page, click Edit.
  2. Configure the appropriate parameters.
  3. Click Update

Network Options

The network options allow you to configure timeouts for establishing connection to TeamCity server and fetching build data from hosts. You can also define the type of connection direct or via proxy server. The same network settings are applied to all TeamCity servers integrated with your Jira. You cannot set specific configuration for each TeamCity instance.

You can specify the next options:

  • Connection Timeout
  • Socket Timeout
  • Response Timeout
  • Proxy Support

Connection Timeout

Connection Timeout is timeout (in seconds) before connection to TeamCity server is established after conneciton failure.

Connection timeout is used for establishing connection between Jira and TeamCity. If the connectivity between two instances is intermittent, you can set the higher connection timeout for the app being able to successfully establish connection to TeamCity.

If you set the lower value, the app will terminate the current connection attempt and start a new one. If the connection is slow or ping is high, the app will require more time for establishing connection to the server. So if you set the lower value, the app may not to be able to successfully connect to TeamCIty and start data indexation.

Socket Timeout

Timeout used for waiting data retireval from TeamCity server.

Once the app has established the connection, it starts waiting for data fetching from TeamCity. Socket timeout is amount time the app waits for completion of packet data retrieval from TeamCity instance before it terminates the session. The higher value you set, the longer the app will wait during transfer of sequential data packets.

Response Timeout

Timeout before new connection to TeamCity server is established if no response has been received or completed.

Response timeout is amount of time the app allocates to completion of the request and data transfer. If your builds are large, you can set the higher value to be sure that all data will be downloaded within this period.

Proxy Support

The app uses the proxy properties loaded by Java Virtual Machine (JVM) on startup of Jira.

If Jira is configured to use a proxy, it tries to connect to TeamCity via a proxy even if the TeamCity server is in the same network. The proxy server could block this connection as shown below.

You can connect JIRА to TeamCity directly by using one of the following parameters:

PropertyValueDescription
disableProxyForTeamcity
true / false

If true, the app will try to directly connect to all Teamcity servers without using the proxy server.

If all your TeamCity servers operate within the same network, this parameter will allow Jira to establish direct connection to all TeamCity servers.

http.nonProxyHosts
host name

If specified, the app will try to directly connect to the specified TeamCity servers, the proxy server will be used for the rest of hosts.

This parameter allows you to indicate which TeamCity servers Jira can establish direct connection to and which instances operate via a proxy server.

For the details on Jira startup options, refer to the How to Configure an Outbound HTTP and HTTPS Proxy for Jira page.

Indexing Options

Indexing options indicate how deep the app indexes TeamCity build data and whether it can skip builds upon error occurrence or should it attempt to fetch them. 

You can define the following options:

  • Index Depth
  • Skip Builds

Index Depth

Depth of indexing builds depending on the recency of bulds (in days).

By default, the app is configured to fetch builds over the last 365 days from TeamCity server, but you can change this parameter and set the appropriate age of builds in days. For example, if you needn't data for the past two years, and you only need build data for the last 3 months - set '90'.

Response Size

Size of the maximal response from TeamCity while retrieving information about builds.

By default, the app is allowed to receive responses that do not exceed 32 Mb (32768 kb). If you activate the Skip Builds option, the app will skip all responses that exceed the pre-defined limit. You can disable any response limits by setting '0' as the value for the Response Size option.

Skip Builds

Enables skipping builds that cannot be retrieved due to network or connectivity problems.

This option allows the app to skip builds that cannot be retrieved due to some connectivity issues. Instead of performing continuous attempts to index the build, the app will skip it and proceed to the next build in the queue. It can speed up the indexing procedure, but skipped builds will not be available in Jira.

Issue Resolutions

I want to decrease the indexation time, what should I do?

You can use the Index Depth option, which allows you to define age of your builds that should be indexed. This option is useful when you need the indexed build data over the last 3 months, but not all the set of data.

Indexation freezes at a definite moment with no progress for a long period of time.

Open the Troubleshooting page and enable logging of the com.stiltsoft.lib.teamcity.connector.rest package (for the details, refer to the this page).

On the Troubleshooting page, find the error that persists during the indexation.

  1. If you encounter the Read timed out error, increase value of the Socket Timeout option. By default, 180 seconds are set.
  2. If you encounter the com.stiltsoft.lib.teamcity.connector.rest.exception.ResponseTimeoutException: Response time is more than error, increase the value of the Response Timeout option.
  3. If the issue still persists, after increasing values of the above mentioned options, enable the Skip Build option. If timeouts will be exceeded upon the next request, such a request will be skipped and will not be re-tried. Indexation will skip the current build and will proceed to the next build in the queue.

Jira has run out of memory.

If you encounter this issue, follow these steps:

  1. Increase the heap size of JVM (for the details, refer to this page).
  2. Submit a ticket to our HelpDesk system.

What should I do if I use a proxy server?

If the TeamCity and Jira servers do not operate in two different networks separated by the proxy server, you should set either the http.nonProxyHosts or the disableProxyForTeamcity parameter (for the details, refer to the this page).

  • No labels