Software List

Overview

Software List widget displays all software in the application and their details. It also provides the ability to add new software.

softwareList

Widget configuration

Software List widget has the following configuration:

config:
  header:
    title:                      # Widget title text.
    displayTitle: true          # Indicates whether to display widget title text.
    iconPath:                   # Path to icon.
  type: softwareList            # Config type. Must always equal "softwareList" for this widget type. REQUIRED.
  serviceIntegration:
    applicationVersionName:     # Application version name.
    service:                    # Name of OTAO service instance. REQUIRED.
    applicationName:            # Application name.
  filters:                      # Object with endpoint registry service configuration.
    service:                    # Name of EPR service instance. REQUIRED.
    applicationName:            # Application name.
  columns:                      # Columns to be displayed in the current table. REQUIRED.
    - display:                  # Display name in the table column. REQUIRED.
      text:                     # Array of common values or paths to the value (must be wrapped with "${}" symbols). REQUIRED.
        - 'Link:'               # Static string that will be displayed as is.
        - ${specification.link} # JSON data path to the link value. Will be mapped to according value from OTAO service instance.
  creationSchema:               # JSON schema object in YAML format that describes additional fields of software definition creation form.

Schema example

Sample valid JSON schema for software creation form:

schema:
  type: object                  # Root type of schema. Available value is 'object'.
  properties:                   # List of props.
    softwareVersion:            # Key of metadata field.
      type: string              # Type of field. Available values are 'number', 'string', 'boolean'.
      name: Software version    # Field label.
    upgradableFrom:
      type: string
      name: Upgradable from
  order:                        # Array that defines order of fields in the form
    - upgradableFrom
    - softwareVersion    

Schema example

Sample valid JSON schema for software creation form:

schema:
  type: object                  # Root type of schema. Available value is 'object'.
  properties:                   # List of props.
    softwareVersion:            # Key of metadata field.
      type: string              # Type of field. Available values are 'number', 'string', 'boolean'.
      name: Software version    # Field label.
    upgradableFrom:
      type: string
      name: Upgradable from
  order:                        # Array that defines order of fields in the form
    - upgradableFrom
    - softwareVersion    

See example configuration below.

config:
  type: softwareList
  serviceIntegration:
    applicationVersionName: environment-ver-1
    service: otao
    applicationName: environment
  header:
    displayTitle: true
    title: Software updates
  columns:
    - display: Version
      text: 
        -${version}
    - display: Metadata
      text: 
        -${metadata}
    - display: URL
      text: 
        - 'Link:'
        -${specification.link}
    - display: Upgradable from
      text: 
        -${upgradableFrom}

Interfaces

Software List supports a number of service interfaces to perform its functional role. The key supported interfaces are summarized in the following diagram.

Software List interfaces diagram

For service communication, WD widgets mainly use REST APIs.