Skip to content

v3.8.0

Compare
Choose a tag to compare
@nzlosh nzlosh released this 27 Nov 21:51
· 1162 commits to master since this release

3.8.0 - November 18, 2022

https://stackstorm.com/2022/12/v3-8-0-released/

Fixed

  • Fix redis SSL problems with sentinel #5660

  • Fix a bug in the pack config loader so that objects covered by an patternProperties schema
    or arrays using additionalItems schema(s) can use encrypted datastore keys and have their
    default values applied correctly. #5321

    Contributed by @cognifloyd

  • Fixed st2client/st2client/base.py file to check for http_proxy and https_proxy environment variables for both lower and upper cases.

    Contributed by @S-T-A-R-L-O-R-D

  • Fixed a bug where calling 'get_by_name' on client for getting key details was not returning any results despite key being stored. #5677

    Contributed by @bharath-orchestral

  • Fixed st2client/st2client/base.py file to use https_proxy(not http_proxy) to check HTTPS_PROXY environment variables.

    Contributed by @wfgydbu

  • Fixed schema utils to more reliably handle schemas that define nested arrays (object-array-object-array-string) as discovered in some
    of the ansible installer RBAC tests (see #5684). This includes a test that reproduced the error so we don't hit this again. #5685

  • Fixed eventlet monkey patching so more of the unit tests work under pytest. #5689

  • Fix and reenable prance-based openapi spec validation, but make our custom x-api-model validation optional as the spec is out-of-date. #5709
    Contributed by @cognifloyd

  • Fixed generation of st2.conf.sample to show correct syntax for [sensorcontainer].partition_provider (space separated key:value pairs). #5710
    Contributed by @cognifloyd

  • Fix access to key-value pairs in workflow and action execution where RBAC rules did not get applied #5764

    Contributed by @m4dcoder

  • Add backward compatibility to secret masking introduced in #5319 to prevent security-relative issues.
    Migration to the new schema is required to take advantage of the full output schema validation. #5783

    Contributed by @m4dcoder

Added

Changed

  • BREAKING CHANGE for anyone that uses output_schema, which is disabled by default.
    If you have [system].validate_output_schema = True in st2.conf AND you have added
    output_schema to any of your packs, then you must update your action metadata.

    output_schema must be a full jsonschema now. If a schema is not well-formed, we ignore it.
    Now, output can be types other than object such as list, bool, int, etc.
    This also means that all of an action's output can be masked as a secret.

    To get the same behavior, you'll need to update your output schema.
    For example, this schema:


    output_schema:
      property1:
        type: bool
      property2:
        type: str

should be updated like this:


    output_schema:
      type: object
      properties:
        property1:
          type: bool
        property2:
          type: str
      additionalProperties: false

#5319

Contributed by @cognifloyd

  • Changed the X-XSS-Protection HTTP header from 1; mode=block to 0 in the conf/nginx/st2.conf to align with the OWASP security standards. #5298

    Contributed by @LiamRiddell

  • Use PEP 440 direct reference requirements instead of legacy PIP VCS requirements. Now, our *.requirements.txt files use
    package-name@ git+https://url@version ; markers instead of git+https://url@version#egg=package-name ; markers. #5673
    Contributed by @cognifloyd

  • Move from udatetime to ciso8601 for date functionality ahead of supporting python3.9 #5692
    Contributed by Amanda McGuinness (@amanda11 intive)

  • Refactor tests to use python imports to identify test fixtures. #5699 #5702 #5703 #5704 #5705 #5706
    Contributed by @cognifloyd

  • Refactor st2-generate-schemas so that logic is in an importable module. #5708
    Contributed by @cognifloyd

Removed

  • Removed st2exporter service. It is unmaintained and does not get installed. It was
    originally meant to help with analytics by exporting executions as json files that
    could be imported into something like elasticsearch. Our code is now instrumented
    to make a wider variety of stats available to metrics drivers. #5676
    Contributed by @cognifloyd