Versions Compared

Key

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

...

  • Most attributes support property expansion
    • specified as ${property}
    • evaluated using values of environment variables or Java properties
  • Pass-through properties for downstream steps
    • @key=value included in output one property per line
    • only supported for exec attribute
  • Steps and groups can specify env attribute
    • value can be a path to a file to be sourced-in
    • value can be “~“ to indicate command exit status should be ignored
  • Steps and groups can specify cwd attribute
    • value is the directory to be set before execution of the step command

...

  • Dynamically clones process flow subgraph region
  • Used for repeating steps for independent portions of test environment
    • e.g. install, uninstall, collect logs on all ONOS instances concurrently
  • Has an iteration variable specified as ${var#} property
  • Clones subgraphs for each of var1, var2, … varN
  • Stops cloning when varX becomes undefined or empty
  • Value N can be abstracted using ${#} special property
  • The <parallel> tag itself does not support the name or requires attributes. However, you can wrap the parallel chain in a group tag to get the same effect.

Sequential Chains

  • Dynamically clones process flow subgraph region
  • Used for sequencing steps for portions of test environment
    • e.g. process a task for all ONOS instances sequentially
  • Has an iteration variable specified as ${var#} property
  • Clones subgraphs for each of var1, var2, … varN
  • Stops cloning when varX becomes undefined or empty
  • Value N can be abstracted using ${#} special property
  • Value N-1 can be abstracted using ${#-1} property

...

Dependencies

  • Inherent dependencies specified as requires attribute of each step and group element
    • specified as a comma-separated list of step or group names
  • Injected dependencies specified as requires attribute of a dependency element
    • used for chaining steps or groups imported from other scenarios
  • Hard dependencies
    • forces wait and the failure of the predecessor results in the step being skipped
  • Soft dependencies - designated by “-” “~” prefix
    • forces wait but the failure in of the  predecessor has no impact

...

  • The "^" requirement is used to indicate the previous step. Note that this only works between a step and a step. If one of the linked steps is within a different group, parallel, or sequential chain then you must specify the requirement by name.