CA Agile Central VCS Connector for TFS Installation Guide

The VCS TFS (Microsoft Team Foundation Server) to CA Agile Central connector helps you show traceability of code changes to artifacts in CA Agile Central.

The connector comprises code that skims a centralized, master TFS repository for recent commits. It extracts information from the commit messages, and posts changeset and change information to a CA Agile Central SCMRepository, according to specifications in a configuration file. While it is possible to have the connector installed on only one computer for your company, you can also choose to install the connector on multiple computers depending on how your organization is structured and the number of repositories that need to be reflected in CA Agile Central.

Developers can put FormattedIDs (such as US42) in their commit messages and the connector will process all commits for configured repositories and pushes information about those commits into changeset objects and change objects in CA Agile Central. If a valid FormattedID is found in a commit message, the changeset created by the connector will be associated with that defect , story, or task in CA Agile Central.

Example:

"Fixed DE1987 by changing preamble paragraph 3"

If CA Agile Central defect DE1987 had a state of Open prior to the commit and run of the connector, then subsequent to the operation of the connector processing this particular changeset, the state of CA Agile Central defect DE1987 would display as Fixed. Please note this message is case-sensitive, fixed is not the same as Fixed.

The commit message may contain references to more than one artifact. For example, this is known to work:

"Test commit msg with multiple artifacts Fixed DE9 Closed DE8" 

A typical workflow would be for one of your team members to be assigned DE42 in CA Agile Central. When they make a code change and commit it, they would include text in the commit message like "Found an issue with line breaks—fixed DE42". When the connector runs again, it will find that commit message and link the information about the commit to CA Agile Central defect DE42.

This install guide includes:

Supported Platforms

This software is written in Ruby and has been tested using Ruby 2.2.6 but should also work with any stable version of Ruby 2.0 and beyond.

You can only run the connector in Microsoft Windows as a packaged executable. The software has been tested and works with TFS 2015 and TFS 2017.

Connector Download

To download the connector, follow the steps here.

Install the Connector

Prerequisites:

  • Ruby 2.2.6  -  This is the supported version.

    The connector may not be compatible with Ruby 2.3.x and 2.4.x, we have not certified this connector with those versions, only 2.2.6 is certified. You may want to investigate how to use the Ruby version manager software (rvm) that makes installation and use of specific versions of Ruby simpler.

  • Ruby Development Kit for Ruby 2.0 to 2.3 (** Windows only **)
    1. Download the DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe from here.
    2. Add path to the devkit’s bin directory to environment Path variable.
    3. cd to the Ruby DevKit root directory.
    4. Run command: ruby dk.rb init
    5. Run command: ruby dk.rb install
  • The primary use case is for this connector to be run on the platform that the TFS software and repository reside on. While it is possible to run this connector on a platform that is not the TFS platform, that use case assumes the use of ssh and the proper setup of public / private key information. Setting up ssh and key files is beyond the scope of this document; please consult the internet for any one of many fine documents regarding ssh and PKI. If you intend to run the connector on a Windows platform, and the TFS repository will be located on a different platform, you'll need to make sure that the 'ssh.exe' command is installed on your Windows platform running the connector and it's location in the filesystem is an element in your %PATH%.
  • The connector runs on a Windows platform only
  • TFS Collection Name, Team Project , Project, Version
  • TFS Protocol, Server, Port, TFS Virtual Path
  • The CA Agile Central workspace into which the changeset and change information will be posted
  • Visual Studio Ultimate, Premium, Professional, Express or Team Explorer (the later requires a modification to the PATH to include the location of tf.exe)

Installer Versus Operator Filesystem Permissions

As this connector is intended to run on an ongoing basis initiated by Windows Task Scheduler (WTS), it is important to consider the identity of the user who installs the connector versus the identity of the user when run through WTS with regard to the permissioning and ACL of the directories and files in the connector installation. The runner of the connector must be able to read all files and must be able to write in the configs and logs subdirectories.

Installation

  1. Unzip the git2ca_agile_central-(version)-master-(build_number).zip file into a suitable directory where you want the software installed.
  2. Set environment variable GEM_COMMAND to gem executable located in Ruby installation directory. The location examples on Linux and Windows respectively are:
    • /myhome/.rvm/rubies/ruby-2.2.6/bin/gem
    • C:\Ruby226\bin\gem
  3. Run the install_gems.rb Ruby script to get all associated gems installed. If you see output similar to You don't have write permissions ... then you will need to either consult with your system administrator to obtain the necessary permissions (typically done by using sudo or other similar software) or have the system administrator run the install_gems.rb command. To run the command, in a console/terminal window at the prompt, type the following:
    ruby install_gems.rb

Distribution Contents

1715 May 23 13:01 LICENSE
18419 May 23 13:01 README
4811 May 23 13:02 User-Mapping-Strategies
170 May 23 15:43 configs
136 May 23 13:02 extension
170 May 23 13:02 gems
1897 May 23 13:02 git2ca_agile_central.rb
2115 May 23 13:02 install_gems.rb
102 May 23 13:02 lib
136 May 23 15:36 logs
374 May 23 13:02 plugin
43520 May 23 13:02 vcseif-1.6.0.gem

TFS Setup

Consider how much TFS commit history you want to have reflected in CA Agile Central

It is possible to operate the connector to catch-up with the complete history of TFS commits. You should assemble a pro and con list of considerations, reasons, and benefits to help you arrive at a strategy that works for your organization with respect to whether you need a complete TFS commit history reflected in CA Agile Central or just reflected from some particular point in time.

Lookback Setting

The connector stores a timefile with the commit time of the last commit it successfully processed. As there is the possibility that due to potential time differences between servers and the fact that the timefile only records to second granularity, there is a Lookback paramenter that can be set to ensure that all commits are considered.

The Lookback default value is in terms of days, but you can set it to hours or minutes. The value you use should be the best guess and comfort level for the way your team uses TFS to ensure that every commit is processed by the connector without having to check an excessive amount of prior commits.

Repository Configuration

Each repository under VCS-TFS control must have a configuration file which resides in the configs subdirectory. This configuration file describes the repository and all its attributes. The file must be in YAML format.

There is an example configuration file shipped with the product named sample.yml. Make a copy of the sample.yml file in the configs subdirectory and use it for your repository. We suggestion naming your YAML configuration file similar to your repository name. For instance, if your repository name is My-Tfs-Repo, then name your YAML configuration file My-Tfs-Repo.yml. Edit your new repository configuration file and modify the values to fit your environment.

Warnings about YAML Syntax:

  • The tab character is not a valid YAML character.
  • Enclose special characters in quotes, such as if the password has exclamation marks ("!") or hashes ("#").
  • The comment character # must be separated from any previous element by at least one space (for example, ".../dir/dir2#this is a comment", is invalid).

Mapping SCMRepositories to VCS Repositories

The VCS Connector was designed to operate where this is a one-to-one relationship between a CA Agile Central SCMRepository and a VCS repository (Git, GitHub, Subversion, Mercurial, and so on). When run, the VCS Connector creates a CA Agile Central SCMRepository item for the value specific in the connector configuration file if it does not already exist. This removes a small amount of administrative burden in that you do not have to create the CA Agile Central SCMRepository item before you run a configuration mentioning a new repository. A one-to-many mapping can create performance issues.

For each repository, there is a configuration file and a timefile. The timefile records the timestamp of the second-to-last commit for the repository. For example, you have an Apricot repository that had some flurry of commits last fall but nothing since and you also have a Banana repository that has had activity with the last couple of months. When commits for these two repositories get poured into a single CA Agile Central SCMRepository, it has the following effect. When processing the configuration for the Apricot repository, it is searching for recent Changeset records in CA Agile Central where recent is defined as the value in the timefile for Apricot. Since the last commit to that repository was last fall, there is going to be an excessive amount of information read-out of the single SCMRepository (because it is looking at all Changesets since last fall, not just the ones for Apricot).

RepositoryName

Within the CA Agile Central section of your YAML configuration file, the value for RepositoryName is the name of the CA Agile Central SCMRepository to which changeset and change items will be associated. If this SCMRepository container does not exist, the connector will create it in the user's target workspace.

Lookback

There is an optional Lookback variable which can appear on either or both of the CA Agile Central and TFS sections. By default, the value for this parameter is assumed to be in minutes. You may use other units of time by specifying a suffix character of m (minutes) or h (hours) or d (days). Examples:

Lookback: 90
Lookback: 120 m
Lookback: 8 h
Lookback: 10 d

If you do not explicitly provide a Lookback value, the connector uses a default value of one hour. If you do specify a Lookback value in one section, we highly recommend specifying this value in the other section. If the Lookback values do not match in the two sections, there is the possibility that a changeset from TFS would not be reflected in CA Agile Central.

Example Repository Configuration File:

VCSConnector:

#
# The content of the file below should follow YAML specifications
# Non standard characters should be enclosed with double quotations
# Legend: (R)=required, (O)=optional


# Parameters for Rally Server
Rally:
    Server              : rally1.rallydev.com   # (R)
    Protocol            : https                 # (R) https (SaaS), https/http (On-Premises)
    Username            : "[email protected]"    # (R)
    Password            : "BigS3Krates"         # (R) encoded after first use
    Workspace           : "Target Workspace"    # (R)
    RepositoryName      : "CodeTank"            # (R)
#   Proxy               : "server:port"         # (O)
#   ProxyUser           : "Proxy User"          # (O) for an authenticating proxy
#   ProxyPassword       : "Proxy Password"      # (O) for an authenticating proxy
    Lookback            : 90                    # (O) 60 minutes (default)
    UpdateArtifactState : False                 # (O) False (default)
    StateExtractorClass : BasicActionsAndArtifactsExtractor(message)  # (O) only used if above is True
    Debug               : False                 # (O) False (default)


# Parameters for Microsoft Team Foundation Server
TFS:
    Server              : localhost             # (O)
    #Port                : 8080                 # (O) 8080 is the customary value for TFS 2015
    Protocol            : http                  # (O) http (default) or https
    TfsServerVersion    : 2017                  # (O) 2015 or 2017 (2017 is the default)
    #TfsVirtualPath      : tfs                  # (O) tfs is the customary value for TFS 2015, for TFS 2017 the value is customarily empty
    CollectionName      : "Collection Name"     # (R)
    TeamProject         : "Team Project"        # (R)
    Project             : "Project"             # (O)
    Lookback            : 90                    # (O) 90 minutes (default)
    MaxItems            : 100                   # (R) max items to process in a run, 1000 (default)


# Parameters for Microsoft Team Foundation Server
Services:
    Preview             : True                  # (O) True or False (default)
    LogLevel            : Debug                 # (O) Info (default)
#   PostBatchExtension  : MetricsPoster         # (O) future use


# Mapping TFS username to a Rally username - choose one from the 6 below
Transforms:
#   Author              : Passthru                                                    # (O) Passthru (default)
#   Author              : EmailAddressAsRallyUser                                     # (O)
#   Author              : FileBasedUserNameLookup(user_map.txt, ":")                  # (O)
#   Author              : RallyUserNameLookup(FirstName, LastName)                    # (O)
#   Author              : UserNameDomainAugmentLookup(DomainName)                     # (O)
#   Author              : UserLookupChainGang(FirstName, LastName, user_map.txt, ":") # (O)

Proxy: The three Proxy items are commented out by using a # in front of the item. Within a YAML file, any line beginning with a # character is ignore and any content following a # character sequence is ignored (including the # sequence).

TFS 2017-specific considerations:

  • With TFS 2017, the default port is no longer 8080.  You may have to adjust your configuration file to account for this, potentially dropping out the Port tag in the TFS section.
  • With TFS 2017, there is no longer a value of 'tfs' for the virtual directory.  You may have to adjust your configuration file to account for this, potentially dropping out the TfsVirtualPath tag in the TFS section.

 

User Mapping File

The file configs/user_map.txt determines how user names are translated between your TFS system and your CA Agile Central subscription . If the user names are universally identical in both systems, then you can either comment out all Author subitems underneath the Transforms section or you can set the value for the Author field in the Transforms section to Passthru. If, however, there is a deterministic mapping that can transform a TFS user name to a CA Agile Central user name, you will need to adjust the transformation value for Author to the appropriate classname. Consult the User-Mapping-Strategies text document (part of the installation) to determine which technique fits your particular situation.

Once you have identified a suitable Author transformation technique, you will need to edit the configuration to identify the Ruby class name that will implement that transformation. The Ruby class name must exist in a file of Ruby source code that is in a file in the plugin subdirectory.

Example user_map.txt file:

# TFS repo username       CA Agile Central username
# --------------------  : -----------------------
jpkole                  : [email protected]
user1                   : [email protected]
user2                   : [email protected]

Repository Time File

Each time the connector finishes running, it will update a repository time file in the base installation directory, which has a name like My-Tfs-Repo_time.file. This file contains the date of the last TFS commit processed by the connector. Therefore, when the connector runs again, it knows where to begin processing commits made by the user.

On the first invocation of the connector, there is no time file, so the connector searches 72 hours into the past for commits.

You can edit this file and set the time. For instance, if you have 50,000 check-ins which were performed over the previous five years, you may not want all of that past history reflected in CA Agile Central. If so, edit this time file and enter a date of last week (or a different starting point).

The file contains only one line and it is a time stamp (in GMT/UTC time). The general format of the file is YYYY-mm-dd HH:MM:SS Z (where the Z is for Zulu or GMT/UTC time). Following are the contents of a typical time file:

2013-05-17 18:49:22 Z

Create a CA Agile Central API Key

A CA Agile Central API Key can be created to use to access your subscription data without using your username and password.

To use the API Key in a connector, edit the CA Agile Central section in the configuration .yml file and add an APIKey line. When the APIKey configuration entry is specified, omit the Username and Password from the CA Agile Central configuration section. If an APIKey entry is present, the username and password are not used and a warning will appear in the log file if they are included in the configuration file. This is true even if the APIKey entry value is invalid, blank, or nil. If your subscription administrator has configured your subscription to be SSO only, you no longer need to add the user associated with the given APIKey value to the whitelist of authorized users.

The connector now uses rally_api version 1.2.1. Please note that the APIKey specified must have full access, a read-only api key will not allow the connector to write to CA Agile Central.

For help creating a full-access API Key, please visit CA Agile Central Application Manager.

CA Agile Central Setup

 

Note: We strongly recommend creating the connector user with Workspace Administrator permissions. This will allow the connector user access to any new projects that may be added to the Workspace in the future (A user with Editor permissions only will not automatically be added to new projects). If the Connector User does not have access to projects, changesets will be created in the SCM Repository only and will be orphaned (not attached to any artifacts).
Verify that your target WorkspaceConfiguration object has BuildandChangsetEnabled set to True.

Your CA Agile Central workspace administrator needs to enable this for your target workspace. If it is not enabled, the connector will work, but you won't be able to see any of the changeset and change information that is associated with your CA Agile Central work items (story, defect, task).

The workspace administrator must edit the workspace and perform these steps:

  1. Click Setup.
  2. Click the Workspaces & Projects tab.
  3. Select your target workspace.
  4. Click Actions → Edit.
  5. Select the Enable Build and Changeset field.
  6. Click Save & Close.

 

Run the Connector

Preview mode

In the Services section of your configuration file (configs/repo_one.yml for example), is an entry for Preview that is set to False. You may want to set this value to True in the initial setup phase to ensure the connector can successfully connect to CA Agile Central with the credentials and information you provided, as well as proving out the use of the tf.exe command. Once you have determined that a connector run in Preview mode operates as expected, you can set the Preview value in your configuration to False.

Access to the tf.exe command

Your PATH environment variable must contain a filesystem path where the tf.exe command can be found. The path may be something like C: Program Files (x86)Microsoft Visual Studio 14.0Common7IDE for a TFS 2015 installation. For the default Visual Studio 2017 installation on a 64-bit system it may be something like  C:Program Files (x86)Microsoft Visual Studio2017ProfessionalCommon7IDECommonExtensionsMicrosoftTeamFoundationTeam Explorer. You must locate the tf.exe and set the environment Path to include the directory in which it is located.

Run as a scheduled task

You can use the Windows Task Scheduler (or any other job-task scheduling software) to run the connector periodically. Initially, CA Agile Central recommends the connector to be run every 15 minutes during normal business hours and less frequently during non-business hours.

Command line invocation

You can have numerous configuration files in the configs subdirectory and specify any number of them for invocation. For example:

ruby tfs2ca_agile_central.rb apricot banana cherry dogwood

In the above example, the files apricot.yml, banana.yml, cherry.yml and dogwood.yml must exist in the configs subdirectory of your current working directory. The connector only looks for configuration files in the configs subdirectory (which is under the installation base directory).

Log files

Whenever the connector is run, two different log files under the current working directory are updated for each configuration file named:

  • log/tfs2ca_agile_central.log

    An entry is made in this log file to note the connector was invoked. For each configuration named at invocation, there will be an entry in this log file noting the return code from running the configuration. When the connector run has finished with all configurations, an entry is written to note the completion of the connector run.

  • logs/<ConfigFileName>.log

    For each configuration file named on the command line, this log file will be updated with much more detail about the activity that occurred during the run.

You can adjust the verbosity written to these log files by modifying the LogLevel value in the YAML configuration file. Normally, the LogLevel would be set to Info. Should you encounter situations where the connector does not complete normally, you can adjust the LogLevel to Debug and run the connector to begin the troubleshooting process. These log files can be sent to CA Agile Central Support to expedite the investigation of a case.

Time files

The connector writes a file in the base installation directory corresponding to the configuration name with the date of the last commit processed. The file is named <configuration-name>_time.file and has a time entry in the form YYYY-mm-dd HH:MM:SS Z, for UTC (or Zulu) time. When first run, there will not be a time file for the configuration and the connector defaults to looking for commits that occurred 72 hours prior to the run of the connector. You can override that behavior by creating and editing a time file for the configuration file you are about to process. By providing an entry in the format mentioned above, you can control that point from which commits are processed.

Note: The connector will skip processing commits for a repository until there are three or more commits to process. Once there are three or more commits, the skipped commits will be processed. This is a design decision due to performance issues in CA Agile Central when processing the commits.

Extend the Connector

Within the extension subdirectory of the installation, there is an example Ruby class in the file named statex.rb. The class definition contained in that file is named BasicActionsAndArtifactsExtractor. This example class demonstrates the basic technique of examining a commit message and extracting CA Agile Central artifact identifiers and state transition target values. Using this class when the configuration file item UpdateArtifactState value is set to True results in the transition of the state (or ScheduleState in the case of UserStory) of the identified artifact to the state value mentioned in the commit message.

For example, if there is a CA Agile Central defect (identified as DE1987) mentioned in the commit message with a new valid state value either immediately preceding or following the artifact identifier, then the connector will change the state of the identified artifact in CA Agile Central to that state.

The extension subdirectory allows you to provide your own message processing to extract CA Agile Central artifact identifiers and state changes if the example provided does not fit your conventions. Your extension must be a class written in Ruby and must provide an instance method called service which takes the commit message as an argument and must return a Ruby Hash instance with entries keyed by a State name (Fixed, Completed, and so on) or nil with a Ruby Array as the associated value populated by CA Agile Centralartifact identifiers (FormattedID).

Troubleshoot the Connector

See Log files for Messages

When the connector runs, it generates two log files:

  • log/tfs2ca_agile_central.log—A global log file indicating the status of the connector.
  • logs/<config-file-name>.log—For each configuration file given on the command line, this will be the log file containing information about any issues with that configuration file.

Issues and Errors

Environment variable setup issues/errors

One or more of the following errors may be seen:

Unable to interrogate TFS for version information
No witadmin.exe command available
tfs2ca_agile_central detected a FATAL configuration error, No tf.exe command available.

Solution: Verify that you have added the path to your TFS Command Line Tools to your PATH environment variable by entering in the following into your Command Prompt window (replacing the path if yours is different):
set path=%path%;C:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE

It may also be necessary to set environment variable VS100COMNTOOLS to point to the correct path for visual studio. More information is available in this StackOverflow link. The environment variable will change depending on the version of Visual Studio:
%VS140COMNTOOLS% - Visual Studio 2015

The RepositoryName is Case Sensitive

The configuration file contains a line like RepositoryName: Chien1, which is the name of the SCMRepository object in CA Agile Central. This name is case-sensitive. Assuming the name was mistakenly specified as chien1, you may see a log file error like:

 INFO : RallyVCSConnection.validate - SCMRepository: chien1
DEBUG : RallyVCSConnection.getSCMRepository - No SCMRepository named |chien1| in Workspace: |WS1|
 INFO : RallyVCSConnection.createSCMRepository -
        Creating SCMRepository 'chien1' (Subversion) in the 'WS1' workspace...
ERROR : UnrecoverableException (/Users/...../exceptions.rb:42 line in `initialize') -
        Unable to create SCMRepository: 
        Error on request - https://rally1.rallydev.com/slm/webservice/2.0/scmrepository/create.js -
                {:errors=> ["Validation error: SCMRepository.Name:
                There is already a SCMRepository with the name 'chien1' in this Workspace"], ... ]}

No Valid Artifacts Mentioned

Seen when connector tries to add a changeset to a Project where the Connector User does not have permissions:

DEBUG : RallyVCSConnection.extract_artifact_references - No valid artifacts were mentioned in message
DEBUG : RallyVCSConnection._createInternal - Created Changeset: OID: 4935999999  Revision: 14d0f533084c700f Timestamp:|2016-01-06T14:58:01.000Z| (not associated with any Artifacts)

Get Help

If you have any questions, issues, or suggestions, click the Contact Support link at the bottom of any CA Agile Central page .

Support and Feedback

Log in to the CA Agile Central Success Community for support of this and all our connectors. The CA Agile Central Success Community is your portal for self-service and support.

Revision History

  • 1.6.0-master --- 25-May-2018
    • Enhancements:
      • Unified distribution, requires use of Ruby 2.2.6 for TLS V1.2 support.
  • 1.5.3-Master --- 12-Dec-2017
    • Enhancements:
      • Support for TFS 2017.
      • Sync all vcs-eif connectors.
  • 1.5.1-master --- 12-Sept-2017
    • Enhancements:
      • Added Message to fields eligible for Transform.
      • Certified for use with Ruby 2.2.6.
  • 1.4.3-master --- 24-Oct-2016
    • Enhancements:
      • Updated the logic to allow for processing after 1 commit.
  • 1.4.1 - master-1044 (Mar-2016)
    • Enhancements:
      • Support for TFS 2015
  • 1.4.0 - master-1042 (Nov-2015)
    • Enhancements:
      • Brand redesign.
  • 1.3.2 - master-1038 (Aug-2015)
    • Enhancements:
      • Added support for use of APIKey entry and revised documentation to encourage use of this
        in preference to use of still supported ApiKey.
  • 1.3.1 - master-1036 (Jul-2015)
    • Enhancements:
      • Added support for downcasing any Rally username value, inverted sequence of retrieval from
        Rally and target VCS system, and upped dependency on rally_api to 1.2.1.
  • 1.3.0-master-1034 (April 2015)
    • Fixes:
      • Handle commit messages with multi-byte characters whose length exceeds the Rally Changeset Message field length limit of 4000 bytes.
    • Enhancements:
      • Updated dependency on rally_api to 1.2.0
  • 1.2.9 - master-1033 (March-2015)
    • Fixes:
      • Refined handling of commit messages in excess of 4000 characters to account for JSON encoding expansion.
  • 1.2.8 - master-1038 (March-2015)
    • Enhancements:
      • Improved the ability to identify artifact identifiers in commit messages surrounded by bracketing characters.
  • 1.2.7 - master- cib1031(February-2015)
    • Enhancements/fixes:
      • Fixed issue where empty commit message resulted in raising an exception.
  • 1.2.6 - master-1030 (January-2015)
    • Enhancements:
      • Updated rally_vcs_connection.rb configureExtensionEnvironment and statex.rb to accommodate custom artifact prefixes (such as 'BUG' for Defect, and so on).
      • Updated dependency for rally_api to version 1.1.2.
  • 1.2.5 - master-1034 (October-2014)
    • Enhancements:
      • Updated to use Rally Web Services API v2.0 and the updated rally_api gem.
    • Known Issues:
      • Exception thrown when comment for changeset is left blank. Example output for exception below:
        C:\Program Files (x86)\Rally Software\TFSConnectorforRally\tfs2rally-1.2.5>tfs2r 
        ally.exe prod_mae_tfs_rally.yml 
        ERROR: tfs2rally detected an Exception condition 
            C:/Users/<USER_REPLACED>/AppData/Local/Temp/ocr19F.tmp/src/tfs2rally.rb:55:in `<main> 
        ' 
            C:/Users/<USER_REPLACED>/AppData/Local/Temp/ocr19F.tmp/src/tfs2rally.rb:51:in `main' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_driver.rb:50:in `execute' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_driver.rb:50:in `each' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_driver.rb:53:in `block in execute' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_driver.rb:179:in `delegateToConnectorRunner' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_runner.rb:111:in `run' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector_runner.rb:157:in `operateService' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector.rb:233:in `run' 
            ... gems/vcseif-1.2.5/lib/vcseif/vcs_connector.rb:289:in `reflectChangesetsInRally' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:163:in `getRecentChangesets' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:163:in `collect' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:163:in `block in getRecentChangesets' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:163:in `new' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:397:in `initialize' 
            C:/Program Files (x86)/Rally Software/TFSConnectorforRally/tfs2rally-1.2.5/lib/tfs_connection.rb:425:in `_extractFields' 
        C:\Program Files (x86)\Rally

         

  • 1.2.4 - master-1032 (16-Sep-2014)
    • Enhancements/Fixes:
      • Added support for using API Key in lieu of username and password in the Rally portion of the configuration file.
      • Updated to rally_api toolkit version 1.0.1.
  • 1.2.3 - master-1030 (19-Aug-2014)
    • Enhancements/Fixes:
      • Fixed DE21993 - to meet Rally's commit message field limitation of 4000 characters, if a commit message exceeds the character limit, characters over the limit are truncated. Upon truncation, the commit message is appended with an annotation of the truncation and a warning message displays in the log file.

Feedback

Need more help? The CA Agile Central Community is your one-stop shop for self-service and support. To submit feedback or cases to CA Agile Central Support, find answers, and collaborate with others, please join us in the CA Agile Central Community.