Skip to content

Configuration Properties for Summary Display Reports

Ioannis K. Moutsatsos edited this page Oct 13, 2020 · 1 revision

Reference to properties used for configuring build reports

KEY FUNCTION REQUIRED OPTIONS VALUE.EXAMPLE COMMENT
report.style report.display yes tab tab Defines the report style that will be generated. Currently only tab style reports are supported , but in the future we may add others
tab.header report.display yes comma delimited tab name (TAB_NAME) list DESCRIPTION,METADATA,MEASUREMENTS,PROPERTIES List of the tab names in the order that they will appear in the report
The name of each of the tab headers (TAB_NAME) is then used to create additional specification for the content of each tab.
summary.properties data yes file_path C:/Jenkins/userContent/data.properties Reference to a properties style file that can provide values to be displayed as field:value pairs. The properties file may be generated during the build so the field:data values can be dynamic. The same properties file may supply values for multiple tabs with field content.
URL http://localhost:8080/userContent/data.properties The properties file can be a file accessible via http or on a local path.
none none If the report will not include a tab with field:value pairs then this key should be set to 'none'
field.key.TAB_NAME data.selector yes key_prefix data A key selector. The key_prefix selects which keys from the summary.properties file will be reported in the named tab
field.key.color data.display no Valid HTML color name black The color used for the field key display
field.value.color data.display no Valid HTML color name blue The color used for the field value display
content.TAB_NAME data yes field,table field Defines the content to be displayed in the named report tab
table If content.TAB_NAME=table additional properties are required to define the table header, data, display rows and data selection criteria. See below.
table.data.TAB_NAME data yes Path or URL to data source file measure.csv A reference to a data file that will provide table data in a delimited format. A URL resource is also valid
table.select.TAB_NAME data.selector no Data row selection criteria formatted as a Groovy map See Additional Notes below The selection criteria expression must evaluate to a valid Groovy map.
Operator values and Text Values must be delimited by single quotation marks. See examples 1-5 and additional notes below.
separator.TAB_NAME data no value delimiter , (default) \t = (for key=value data format) The value delimiter used in the data file
table.header.TAB_NAME data.selector no comma delimited list of column names Image_Number,Object_Number,Metadata_Barcode,Metadata_Column Property defines the subset of the columns to be displayed. If a column name is not found in the data table, the column is skipped (not displayed). If the table header property key is not included then the table will include,all the columns of the original data.
table.length.TAB_NAME data.display no number 10 Number of rows of table data that will be displayed. If this property key is missing the entire table will be used
table.imgwidth.TAB_NAME data.display no number 150 When images are rendered this property adjusts the default image width. If this property is not defined a default width=200 is used

Additional notes

table.select.TAB_NAME: data.selector

  • The selection criteria expression must evaluate to a valid Groovy map.
  • All selection criteria are AND joined (OR queries are not supported)
  • Data table column names are used as the Map Keys
  • Map values can be in several formats depending on whether an exact match or a relational comparison is used.
  • Exact matches require a value that can be any of the following:
    • A groovy range of integers in the format x..y (Example 1)
    • A list of values that will be matched exactly. String lists are allowed but each string element must be enclosed in single (delimited) quotation marks (like 'String') (Example 2)
  • Relational matches must be formatted as a 2 element groovy map with operator and value as keys.
    • A 3rd optional negate key with values true/false can be included. This allows the selection of rows that do not match the selection criteria. (Example 4)
  • The operator and value keys support the following values (see examples).
    • Operator Key: Typical relational operators are supported as values: >,<,>=,<= The groovy 'in' operator is also accepted.
    • Value Key: Values similar to those used for exact matches
  • Partial matches are supported by the 'contains', 'startsWith', 'endsWith' and 'matches' operators. (Examples 4, 5)

table.select.TAB_NAME: Examples

  1. [SERIAL_ID:1..10,TYPE:['DynamicReferenceParameter']]
  2. [SERIAL_ID:[1,3,5],TYPE:['CascadeChoiceParameter']]
  3. [SERIAL_ID:[operator:'in', value:1..5], NUM2:[operator:'>=',value:7], TYPE:['DynamicReferenceParameter']]
  4. [NAME:[operator:'matches', negate:true, value:[/(?i).*uild/]]]
  5. [PROPERTY:[operator:'startsWith', value:['data','plate']]]

Example of a report configuration file

# Build Report Configuration
# 11/May/2016 16:30

summary.properties=JData_MD.properties
report.style=tab

tab.header=DESCRIPTION,METADATA,MEASUREMENTS,CALCULATED,PROPERTIES,WELL_TREATMENT

content.DESCRIPTION=field
field.key.DESCRIPTION=data
field.key.color=black
field.value.color=blue

content.METADATA=table
table.data.METADATA=meta.csv

content.MEASUREMENTS=table
table.data.MEASUREMENTS=measure.csv

content.CALCULATED=table
table.data.CALCULATED=calculated.csv

content.PROPERTIES=table
table.data.PROPERTIES=JData_MD.properties
separator.PROPERTIES==

content.WELL_TREATMENT=table
table.data.WELL_TREATMENT=aeos.txt
separator.WELL_TREATMENT=\t
table.length.WELL_TREATMENT=20