The FlexFields page allows configuring user-defined attributes for Deploy or Build Requests. When a Build or Deploy/Utility Request is submitted by a user, they will be prompted to enter values for the configured (active and visible) FlexFields. There are 10 FlexFields, for each type of request. An example usage for a FlexField would be allowing the user to specify the change request number associated with the Deploy Request. These FlexFields can be viewed in the reports and tasks screen and could provide additional information about a specific Build or Deploy Request.
The Scope of a FlexField value is a Workflow Execution which may be build or deploy/utility. Note that build request FlexFields are associated with the Project Version created by build so those values are also available during deploy execution as well for that project version.
Build Request FlexField
Build Request FlexFields are available through the lifecycle of your release. The value is set during the Build Request, and then is available to be read during deployments of that project version.
Deploy Request FlexField
Deploy Request FlexFields are limited to only being used with the specific deployment being executed.
Enter values for the FlexFields as described in the table below.
Field | Required | Description |
---|---|---|
Active | Yes | Whether this FlexField is active or not. Defaults to No. |
Visible | Yes | Invisible FlexFields that are active can be used to perform some validations prior to submit of build/deploy request. |
Column Name | Yes | The name of the FlexField column. Read-only field. |
Code | Yes | User-defined code that identifies this FlexField. |
Display Name | Yes | Display name, which is used in Build or Deployment Request Form, reports etc. |
Description | No | Description for the FlexField which will be displayed on the Build or Deployment Request Form. |
Datatype | Yes | The FlexField's data type. Default is String. |
Rows | No | Display attribute that defines the number of rows in the input field on the Build or Deployment Request Form. |
List Data CSV | No | Allows the user to define a comma-separated list of values that will be displayed in the Workflow Request page. If given, a Dropdown component will be displayed on the Build or Deployment Request Form. |
Required | Yes | Whether the FlexField is required or not. Defaults to No. |
Length | No | For String data type, this controls length of value being entered. |
Min Value | No | User can control the minimum value for data types such as Integer, Double and Long. |
Max Value | No | User can control the maximum value for data types such as Integer, Double and Long. |
Default Value Groovy Script | No | Enter Groovy script to define default values for the FlexField. This script should return the value that the FlexField will be defaulted to. Groovy script can use these variables:
|
Validation Groovy Script | No | Enter Groovy script to define validation for the FlexField. The script should return true or false to indicate validation success or failure. See an example. Groovy script can use these variables:
|
Updated By | N/A | The user who last updated the FlexField (read-only). |
Updated On | N/A | The date/time in which the FlexField was last updated (read-only). |
Click the Save button to save the changes.
You can use custom Java API as well from Groovy script. You can put Jar file containing your API in WebLogic domain's lib folder. This example shows such the use of custom a Java API. This can be useful to interface with an external system using SOAP, REST or other proprietary API.
The active FlexFields will be available for users when submitting the Build or Deployment Request (see below). If the FlexField is configured as required, then the user must enter value. Other validations like Data Type, String length, Range check for numbers etc. are also performed as defined for a specific FlexField. Custom Groovy validations that are defined by the user in the administration page will be executed as well against the user input. FlexField values will be available in the Reports and Tasks to provide additional information regarding the Build or Deployment Request.