StackStorm v2.5.0 Release Notes

Release Date: 2017-10-25 // over 6 years ago
  • ➕ Added

    
    * ➕ Add new feature which allows runner action output (stdout and stderr) to be streamed
      and consumed in real-time by using one of the following approaches:
    
      - ``/v1/executions/<execution id>/output[?type=stdout/stderr]`` API endpoint.
      - ``/v1/stream/`` stream endpoint and listening for ``st2.execution.stdout__create`` and
        ``st2.execution.output__create`` ``/v1/stream`` stream API endpoint events.
      - ``st2 execution tail <execution id> [--type=stdout/stderr]`` CLI command (underneath it uses
        stream API endpoint).
    
      Right now this functionality is available for the following runners:
    
      - local command runner
      - local script runner
      - remote command runner
      - remote script runner
      - python runner
    
      Note: This feature is still experimental and it's disabled by default (opt-in). To enable it,
      set ``actionrunner.stream_output`` config option to ``True``.
    
      (new feature) #2175 #3657 #3729
    * ⚡️ Update ``st2 role-assignment list`` RBAC CLI command to include information about where a
      particular assignment comes from (from which local assignment or mapping file). (improvement)
      #3763
    * ➕ Add support for overlapping RBAC role assignments for assignments via remote LDAP group to
      StackStorm role mappings. This means that the same role can now be granted via multiple RBAC
      mapping files.
      #3763
    * Add new Jinja filters ``from_json_string``, ``from_yaml_string``, and ``jsonpath_query``.
      #3763
    * ➕ Add new "Inquiry" capability, which adds ability to "ask a question", usually in a workflow.
      Create a new runner type: "inquirer" to support this, as well as new API endpoints and
      client commands for interacting with Inquiries
    
      Contributed by mierdin. #3653
    * ➕ Added two new rule operators, ``inside`` and ``ninside`` which allow for the reverse intent of
      the ``contains`` and ``ncontains`` operators. #3781
    
      Contributed by @lampwins.
    * 👍 Allow user to use more expressive regular expressions inside action alias format string by
      allowing them to specify start (``^``) and end (``$``) anchors. Previously, those anchors were
      automatically added at the beginning and end of the alias format string. Now they are only added
      if a format string doesn't already contain them. #3789
    
      Contributed by @ahubl-mz.
    * Add new ``POST /v1/aliasexecution/match_and_execute`` API endpoint which allows user to
      schedule an execution based on a command string if a matching alias is found in the database.
    
      This API endpoint is meant to be used with chat bot plugins. It allows them to be simple thin
      wrappers around this API endpoint which send each chat line to this API endpoint and handle the
      response. #3773
    * ➕ Add several improvements to the installation scripts: They support using proxy servers.
      ``~stanley`` no longer has to be ``/home/stanley``. In addition to the on-screen display, the
      output from the installation script is now logged to a file beginning with ``st2-install`` under
      ``/var/log/st2/``. Furthermore, the script handles re-runs better, although it's
      not fully idempotent yet. More improvements are expected in the near future.
      st2-packages: #505, #506, #507, #508, #509, #510, #512, #517.
    
    🛠 Fixed
    
    • 🛠 Fix a bug where sensor watch queues were not deleted after sensor container process was shut down. This resulted in spurious queues left behind. This should not have caused performance impact but just messes with rabbitmqadmin output and maybe tedious for operators. (bug fix) #3628

    Reported by Igor.

    • 👉 Make sure all the temporary RabbitMQ queues used by the stream service are deleted once the connection to RabbitMQ is closed. Those queues are temporary and unique in nature and new ones are created on each service start-up so we need to make sure to correctly clean up old queues.

    #3746

    • 🛠 Fix cancellation of subworkflow and subchain. Cancel of Mistral workflow or Action Chain is cascaded down to subworkflows appropriately. Cancel from tasks in the workflow or chain is cascaded up to the parent. (bug fix)
    • 🛠 Fix delays in st2resultstracker on querying workflow status from Mistral. Make sleep time for empty queue and no workers configurable. Reduce the default sleep times to 5 seconds. StackStorm instances that handle more workflows should consider increasing the query interval for better CPU utilization.
    • 🛠 Fix missing type for the parameters with enum in the core st2 packs.(bug fix) #3737

    Reported by Nick Maludy.

    • ➕ Add missing -h / --help CLI flag to the following execution CLI commands: cancel, pause, resume. (bug fix) #3750
    • 🛠 Fix execution cancel and pause CLI commands and make id a required argument. (bug fix) #3750
    • 🛠 Fix st2 role-assignment list CLI command and allow --user, --remote and --role arguments to be used together. Previously they were mutually exclusive so it wasn't possible to use them together. (bug fix) #3763
    • ⚡️ Update default event name whitelist for /v1/stream API endpoint and make sure st2.announcement__errbot and other event names starting with st2.announcement__* prefix are not filtered out. #3769 (bug fix)

    Reported by Carlos.

    • 🛠 Fix action-alias execute response to show execution id and matching action-alias #3231 (bug fix) Reported by Carlos.
    • 🛠 Fix st2 apikey load command to update an existing entry if items in input file contain id attribute and item already exists on the server. This way the behavior is consistent with st2 key load command and the command is idempotent if each item contains id attribute. #3748 #3786

    Reported by Christopher Baklid.

    • 🌲 Don't log MongoDB database password if user specifies URI for database.db_host config parameter and that URI also includes a password. Default and a common scenario is specifying password as a separate database.password config parameter. #3797

    Reported by Igor Cherkaev.

    • 🛠 Fix POST /v1/actionalias/match API endpoint to correctly return a dictionary instead of an array. We had a correct OpenAPI definition for the response, but the code incorrectly returned an array instead of a dictionary.

    Note: This is a breaking change so if your code utilizes this API endpoint you need to update to treat response as a dictionary and not as an array with a single item. #377

    • 🐎 Partially fix performance overhead and regression for short and simple Python runner actions. Full / complete fix will be included in v2.6.0. #3809

    🔄 Changed

    
    * 💅 Minor language and style tidy up of help strings and error messages. #3782