Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Which Work Items are Updated

Identical to the Validate Work Items Gate, the Update Work Items Step offers 3 options or selectors for choosing which Work Items should be updated. Please refer to the Gate documentation for an in-depth look at how each Selector works and when to use one vs another.

...

Info

Attachments in comments

If the step is both adding attachments and comments to the Work Items, then the attachments will be included in the comment itself. Note that not all Issue Tracking Systems support attachments in comments (see table at the bottom), in which case they will still be attached directly to the Work Item.

...

Since each Work Item may have multiple executions with multiple plugin steps and reports, you can optionally zip all attachments for the Work Item and only upload the single zip file.

Updating the Status

The status of each Work Item can be changed by specifying a status in the Status field. There are 3 options for specifying a status:

  1. Literal Text - The default, each Work Item will attempt to have its status changed to the text value provided here. This is the easiest and simplest approach if all of your Work Items allow the same statuses.

  2. Groovy Expression (String/Text) - A Groovy expression can be used for more dynamic behavior. When using a Groovy Expression you can return a simple string or text that will be used for each Work Item.

  3. Groovy Expression (Map) - The most advanced option but also the most dynamic. The Groovy script can should return a map of [workItemNumber: new_status]. This is most useful if you need to assign different statuses based on the Work Item. When using a Groovy script their There is an exposed variable WorkItems that contains all Work Items considered for update. The below script is an example that assigns different statuses depending upon the prefix of the Work Item Number.

...

Issue Tracking System

Supports Comments

Supports Markdown Comments

Supports Attachments

Support Attachments in Comments

Flex ITS

(tick)

(tick)

(tick)

(tick)

Jira

(tick)

(tick)

(tick)

(tick)

Azure Boards

(tick)

(blue star)

(tick)

(blue star)

GitLab

(tick)

(tick)

(tick)

(tick)

GitHub

(tick)

(blue star)

(blue star)

(blue star)

FAQ and Common Issues

class org.codehaus.groovy.runtime.GStringImpl cannot be cast to class java.lang.String

This can occur if you are using Groovy’s GString feature but not calling toString at the end of it. For example:

Code Block
languagegroovy
// using ${variable} inside a quoted "" string is what is known as GString in groovy
def message = "Work Item deployed to ${stgexec.getEnvironmentCode()}"
// the following line will produce a GStringImpl cannot be cast error
result.put(workItem.getKey(), message)

// alter it to the following
result.put(workItem.getKey(), message.toString())