Changelog History
Page 3
-
v2.8.1 Changes
July 18, 2018➕ Added
* ⚡️ Update ``st2`` CLI to inspect ``COLUMNS`` environment variable first when determining the terminal size. Previously this environment variable was checked second last (after trying to retrieve terminal size using various OS specific methods and before falling back to the default value). This approach is more performant and allows user to easily overwrite the default value or value returned by the operating system checks - e.g. by running ``COLUMNS=200 st2 action list``. (improvement) #4242 🔄 Changed
- ⚡️ Update
st2client/setup.py
file to dynamically load requirements fromst2client/requirements.txt
file. The code works with pip >= 6.0.0, although using pip 9.0.0 or higher is strongly recommended. (improvement) #4209 - 🏗 Migrated runners to using the
in-requirements.txt
pattern for "components" in the build system, so theMakefile
correctly generates and installs runner dependencies during testing and packaging. (improvement) (bugfix) #4169
Contributed by Nick Maludy (Encore Technologies).
- ⚡️ Update
st2
CLI to use a more sensible default terminal size for table formatting purposes if we are unable to retrieve terminal size using various system-specific approaches.
Previously we would fall back to a very unfriendly default of 20 columns for a total terminal width. This would cause every table column to wrap and make output impossible / hard to read. (improvement) #4242
🛠 Fixed
* 🛠 Fixed a bug where ``secret: true`` was not applying to full object and array trees. (bugfix) #4234 Reported by @jjm Contributed by Nick Maludy (Encore Technologies). * Mark ``password`` ``http-request`` parameter as a secret. (bug fix) #4245 Reported by @daniel-mckenna
- ⚡️ Update
-
v2.8.0 Changes
July 10, 2018➕ Added
* Orquesta - new StackStorm-native workflow engine. This is currently in **beta**. (new feature) * ➕ Added metrics for collecting performance and health information about the various ST2 services and functions. (new feature) #4004 #2974 * 🚀 When running a dev (unstable) release include git revision hash in the output when using ``st2 --version`` CLI command. (new feature) #4117 * ⚡️ Update rules engine to also create rule enforcement object when trigger instances fails to match a rule during the rule matching / filtering phase due to an exception in the rule criteria (e.g. invalid Jinja expression, etc.). This change increases visibility into rules which didn't match due to an exception. Previously this was only visible / reflected in the rules engine log file. (improvement) #4134 * ➕ Add new ``GET /v1/ruleenforcements/views[/<enforcement id>]`` API endpoints which allow user to retrieve RuleEnforcement objects with the corresponding TriggerInstance and Execution objects. (new feature) #4134 * ➕ Add new ``status`` field to the ``RuleEnforcement`` model. This field can contain the following values - ``succeeded`` (trigger instance matched a rule and action execution was triggered successfully), ``failed`` (trigger instance matched a rule, but it didn't result in an action execution due to Jinja rendering failure or other exception). (improvement) #4134 #4152 * ➕ Add trigger type reference based filtering to the ``/v1/triggerinstances`` API endpoint - e.g. ``/v1/triggerinstances?trigger_type=core.st2.webhook``. (new feature) #4151 * ➕ Add new ``--python3`` flag to ``st2 pack install`` CLI command and ``python3`` parameter to ``packs.{install,setup_virtualenv}`` actions. When the value of this parameter is True, it uses ``python3`` binary when creating virtual environment for that pack (based on the value of ``actionrunner.python3_binary`` config option). Note 1: For this feature to work, Python 3 needs to be installed on the system, ``virtualenv`` package installed on the system needs to support Python 3 (it needs to be a recent version) and pack in question needs to support Python 3. Note 2: This feature is experimental and opt-in. (new feature) #4016 #3922 #4149 * ➕ Add two new Jinja filters - ``basename`` (``os.path.basename``) and ``dirname`` (``os.path.dirname``). #4184 Contributed by Florian Reisinger (@reisingerf). 🔄 Changed
- ⚡️ Update st2 CLI to create the configuration directory and file, and authentication tokens with secure permissions (eg: readable only to owner) #4173
- 🔨 Refactor the callback module for the post run in runner to be more generic. (improvement)
- ⚡️ Update various Python dependencies to the latest stable versions (gunicorn, gitpython, python-gnupg, tooz, flex). #4110
- ⚡️ Update all the service and script entry points to use
/etc/st2/st2.conf
as a default value for the config file location.
This way users don't need to explicitly provide
--config-file
CLI argument when running various scripts (e.g.st2-track-result
,st2-apply-rbac-definitions
, etc.) and when they just want to use a default config file. (improvement) #4111- ⚡️ Update st2 CLI to print a warning if a non-unicode system locale which would prevent StackStorm to function correctly in some scenarios is used. (improvement) #4127 #4120
- ⬆️ Upgrade various internal Python library dependencies to the latest stable versions (kombu, amqp, gitpython, pytz, semver, oslo.utils). (improvement) #4162
- 🚚 Move from
keyczar
library tocryptography
library for handling symmetric encryption and decryption (secret datastore values).
Note: This change is fully backward compatible since it just changes the underlying backend and implementation details. The same underlying encryption algorithm is used (AES256 in CBC mode with HMAC signature). (improvement) #4165
🛠 Fixed
* 🛠 Fixed a bug where secrets in pack configs weren't being masked. Recently we introduced support for nested objects and arrays. Secret parameters within these nested objects and arrays were not being masked. The fix involves us fully traversing deeply nested objects and arrays and masking out any variables marked as secret. This means we now support pack config JSON schemas with ``type: object`` and its corresponding ``parameters: {}`` stanza, along with ``type: array`` and its corresponding ``items: {}`` stanza. We still do NOT support JSON schema combinations that includes the ``anyOf``, ``allOf``, ``oneOf``, and ``not`` keywords. (bug fix) #4139 Contributed by Nick Maludy (Encore Technologies). * 💅 Style clean up to transport queues module and various config modules. (improvement) * 🛠 Fixed CLI help for ``st2 action-alias match`` and ``execute``. (#4174). * 🛠 Fix regression in ``?include_attributes`` query param filter in the ``/v1/executions`` API endpoint. (bug fix) #4226
-
v2.7.2 Changes
May 16, 2018🔄 Changed
* ⬇️ Reduce load on LDAP server and cache user groups response in an in-memory cache when RBAC remote LDAP group to local RBAC role synchronization feature is enabled. Previously on authentication the code would hit LDAP server multiple times to retrieve user groups. With this change, user LDAP groups are only retrieved once upon authentication and cached and re-used in-memory by default for 120 seconds. This reduces load on LDAP server and improves performance upon regular and concurrent user authentication. This functionality can be disabled by setting ``cache_user_groups_response`` LDAP authentication backend kwarg to ``false``. Note: This change only affects users which utilize RBAC with remote LDAP groups to local RBAC roles synchronization feature enabled. (enterprise) (bug fix) #4103 #4105 🛠 Fixed ~~~~~ * 🛠 Fix an issue (race condition) which would result in not all the remote LDAP groups being synchronized with local RBAC roles if a user tried to authenticate with the same auth token concurrently in a short time frame. Note: This issue only affects users which utilize RBAC with remote LDAP groups to local RBAC roles synchronization feature enabled. (enterprise) (bug fix) #4103 #4105 * 🛠 Fix an issue with some sensors which rely on ``select.poll()`` (FileWatch, GithubSensor, etc.) stopped working with StackStorm >= 2.7.0. StackStorm v2.7.0 inadvertently introduced a change which broke a small set of sensors which rely on ``select.poll()`` functionality. (bug fix) #4118 * Throw if ``id`` CLI argument is not passed to the ``st2-track-result`` script. (bug fix) #4115 * 🛠 Fixed pack config's not properly rendering Jinja expressions within lists. (bugfix) #4121 Contributed by Nick Maludy (Encore Technologies). * 🛠 Fixed pack config rendering error throw meaningful message when a Jinja syntax error is encountered. (bugfix) #4123 Contributed by Nick Maludy (Encore Technologies).
-
v2.7.1 Changes
April 20, 2018🔄 Changed
* When creating a pack environment during the pack installation, we now pass ``--no-download`` flag to the ``virtualenv`` binary. This way version of pip, wheel and distutils which is enforced by virtualenv is used instead of downloading the latest stable versions from PyPi. This results in more reproducible pack virtual environments and we also ensure pip 9.0 is used ( there are some known issues with pip 10.0). If for some reason you want to revert to the old behavior, you can do that by passing ``no_download=False`` parameter to the ``packs.setup_virtualenv`` action. #4085 🛠 Fixed ~~~~~ * 🛠 Fix ``st2 pack search`` and ``POST /api/v1/packs/index/search`` API endpoint so it doesn't return internal server error when a single pack search term is provided. (bug fix) #4083
-
v2.7.0 Changes
April 12, 2018➕ Added
* ⚡️ Update ``st2 execution tail`` command so it supports double nested workflows (workflow -> workflow -> execution). Previously, only top-level executions and single nested workflows (workflow -> execution) were supported. (improvement) #3962 #3960 * ➕ Add support for utf-8 / unicode characters in the pack config files. (improvement) #3980 #3989 Contributed by @sumkire. * ➕ Added the ability of ``st2ctl`` to utilize environment variables from ``/etc/default/st2ctl`` (for Ubuntu/Debian) and ``/etc/sysconfig/st2ctl`` (RHEL/CentOS). This allows deployments to override ``COMPONENTS`` and ``ST2_CONF`` in a global location so ``st2ctl`` can start/stop/restart selected components and utilize a non-default location for ``st2.conf``. (new feature) #4027 Contributed by Nick Maludy (Encore Technologies). * ➕ Add support for new optional ``content_version`` runner parameter to the Python and Local Shell Script runner. This parameter can contain a git commit hash / tag / branch from a pack git repository and runner will ensure this revision of the pack content (Python action / local shell script action) is used for a particular action execution. Keep in mind that providing this parameter only ensures a particular revision of the pack content is used. Python runner virtual environment and dependencies are outside of this scope. Note: To be able to utilize this functionality, git version >= 2.5.0 must be installed on the system. (new feature) #3997 * ⚡️ Update windows runner to correctly handle and use ``timeout`` action execution status. (improvement) #4047 * ➕ Add missing ``scope``, ``decrypt`` and ``encrypt`` arguments to the datastore management related methods on the SensorService class. (improvement) #3895 #4057 #4058 Reported by @djh2020, @mxmader. * ➕ Add context field to rule model in which each rule has its own corresponding user. Besides, there is a new RBAC configuration ``permission_isolation``. Whoever can only operate and observe their own rules or executions except ``system_user`` and users with RBAC admin role when set to ``True``. That means system_user has the most powerful permission to operate all resources including rules or executions. (new feature) #4013 Contributed by Hanxi Liu (@apolloliu). 🔄 Changed
- Modified RabbitMQ connection error message to make clear that it is an MQ connection issue. #3992
- ➕ Additional refactor which makes action runners fully standalone and re-distributable Python packages. Also add support for multiple runners (runner modules) inside a single Python package and consolidate Python packages from two to one for the following runners: local runners, remote runners, windows runners. (improvement) #3999
- ⬆️ Upgrade eventlet library to the latest stable version (0.22.1) (improvement) #4007 #3968
- Increase maximum retry delay for
action.retry
policy from 5 seconds to 120 seconds. Because of the way retries are currently implemented (they are not st2notifier service restart safe), long retry delays are not recommended. For more information on this limitation please refer to the documentation - https://docs.stackstorm.com/reference/policies.html#retry. #3630 #3637 - ⚡️ Update Python runner so it throws a more user-friendly exception in case Python script tries to
access a key in
self.config
dictionary which doesn't exist. (improvement) #4014 - ⚡️ Update various Python dependencies to the latest stable versions (apscheduler, gitpython, pymongo, stevedore, paramiko, tooz, flex, webob, prance).
- 🔨 Refactored mistral runner to support callback from mistral instead of relying on st2resultstracker. This reduces the unnecessary traffic and CPU time by querying the mistral API. Included a command to manually add a state entry for Mistral workflow execution to recover from any callback failures. (improvement)
- Throw a more user-friendly error when writing pack data files to disk and when an invalid file path is provided (e.g. path is outside the pack directory, etc.). (improvement) #4039 #4046
- 🔄 Change the output object returned by Windows runners so it matches the format from the local and remote runner.
Note: This change is backward incompatible -
result
attribute has been removed (same information is available instdout
attribute),exit_code
renamed toreturn_code
and two new attributes added -succeeded
andfailed
.For more information, please refer to the upgrade notes. #4044 #4047
🛠 Fixed
* 🛠 Fix Python runner actions and ``Argument list too long`` error when very large parameters are passed into the action. The fix utilizes ``stdin`` to pass parameters to the Python action wrapper process instead of CLI argument list. (bug fix) #1598 #3976 * 🛠 Fix a regression in ``POST /v1/webhooks/<webhook name>`` API endpoint introduced in v2.4.0 and add back support for arrays. In 2.4.0 support for arrays was inadvertently removed and only objects were supported. Keep in mind that this only applies to custom user-defined webhooks and system ``st2`` webhook still requires input to be an object (dictionary). (bug fix) #3956 #3955 * 🛠 Fix a bug in the CLI causing ``st2 execution pause`` and ``st2 execution resume`` to not work. (bugfix) #4001 Contributed by Nick Maludy (Encore Technologies). * 🛠 Fixed missing "paused" status option from "st2 execution list" help output. (bugfix) #4037 Contributed by Ben Hohnke (NTT Communications ICT Solutions) * 🛠 Fix "st2 pack install" command so it doesn't require access to pack index (index.stackstorm.org) when installing a local pack (pack name starting with "file://"). (bug fix) #3771 #3772 * 🛠 Fix rules engine so it correctly handles and renders action parameters which contain Jinja expressions and default values. (bug fix) #4050 #4050 Reported by @rakeshrm. * 👉 Make sure ``observer`` system role also grants ``pack_search`` permission. (bug fix) #4063 #4064 Reported by @SURAJTHEGREAT. * 🛠 Fix st2 webhook get -h which was asking for a name or id as opposed to the URL of the webhook. Also, fix st2 webhook list to explicitly add a webhook column. (bugfix) #4048 * 🛠 Fix an issue with pack config validation code throwing a non-user friendly error message in case config item of type array failed config schema validation. (bug fix) #4166 #4168 Reported by @NikosVlagoidis.
-
v2.6.0 Changes
January 19, 2018➕ Added
* 👉 Add new ``get_user_info`` method to action and sensor service. With this method, user can retrieve information about the user account which is used to perform datastore operations inside the action and sensor service. (new feature) #3831 * ➕ Add new ``/api/v1/user`` API endpoint. This API endpoint is only available to the authenticated users and returns various metadata on the authenticated user (which method did the user use to authenticate, under which username the user is authenticated, which RBAC roles are assignment to this user in case RBAC is enabled, etc.) (new feature) #3831 * The ``/api/v1/match_and_execute`` API endpoint matches a single alias and executes multiple times if the alias format has a ``match_multiple`` key set to ``true``. Please refer to the documentation for usage. #3884 Contributed by @ahubl-mz. * ➕ Add ability to share common code between python sensors and python actions. You can now place common code inside a ``lib`` directory inside a pack (with an ``__init__.py`` inside ``lib`` directory to declare it a python package). You can then import the common code in sensors and actions. Please refer to documentation for samples and guidelines. #3490 * ➕ Add support for password protected sudo to the local and remote runner. Password can be provided via the new ``sudo_password`` runner parameter. (new feature) #3867 * ➕ Add new ``--tail`` flag to the ``st2 run`` / ``st2 action execute`` and ``st2 execution re-run`` CLI command. When this flag is provided, new execution will automatically be followed and tailed after it has been scheduled. (new feature) #3867 * ➕ Added flag ``--auto-dict`` to ``st2 run`` and ``st2 execution re-run`` commands. This flag must now be specified in order to automatically convert list items to dicts based on presence of colon (``:``) in all of the list items (new feature) #3909 * 👍 Allow user to set default log level used by all the Python runner actions by setting ``actionrunner.pythonrunner```` option in ``st2.conf`` (new feature) #3929 * ⚡️ Update ``st2client`` package which is also utilized by the CLI so it also works under Python 3. Note: Python 2.7 is only officially supported and tested Python version. Using Python 3 is at your own risk - they are likely still many bugs related to Python 3 compatibility. You have been warned. (new feature) #3929 #3932 Contributed by Anthony Shaw. * ➕ Add ``?limit=-1`` support for the API to fetch full result set (CLI equivalent flag ``--last/-n``). Post error message for ``limit=0`` and fix corner case where negative values for limit query param were not handled correctly. #3761 #3708 #3735 * Only allow RBAC admins to retrieve all the results at once using ``?limit=-1`` query param, upate the code so ``api.max_page_size`` config option only applies to non-admin users, meaning users with admin permission can specify arbitrary value for ``?limit`` query param which can also be larger than ``api.max_page_size``. (improvement) #3939 * ➕ Add new ``?include_attributes`` query param filter to ``/v1/executions/`` API endpoint With this filter user can select which fields to include in the response (whitelist approach, opposite of the existing ``?exclude_attributes`` filter). For example, if you only want to retrieve ``id`` and ``status`` field, the URL would look like this - ``/v1/executions?include_attributes=id,status``. (new feature) #3953 #3858 #3856 🔄 Changed
st2actions.runners.pythonrunner.Action
class path for base Python runner actions has been deprecated since StackStorm v1.6.0 and will be fully removed in StackStorm v2.7.0. If you have any actions still using this path you are encouraged to update them to usest2common.runners.base_action.Action
path. #3803- 🔨 Refactor
st2common
Python package so it's fully self sustaining and can be used in a standalone manner. (improvement) #3803 - 🔨 Refactor Python action runner so it only depends on
st2common
Python package (previously it also depended onst2actions
) and can be used in a standalone mode. Previously pack config and and some other parameters were retrieved inside the Python process wrapper, but now they are retrieved inside the runner container and passed to the runner. This also makes it easier to add support for pack configs to other runners in the future. (improvement) #3803 - ⚡️ Update various Python dependencies to the latest stable versions (kombu, amqp, apscheduler, gitpython, pymongo, stevedore, paramiko, prompt-toolkit, flex). #3830
- Mask values in an Inquiry response displayed to the user that were marked as "secret" in the inquiry's response schema. #3825
- 0️⃣ Real-time action output streaming is now enabled by default. For more information on this
feature, please refer to the documentation - https://docs.stackstorm.com/latest/reference/action_output_streaming.html.
You can disable this functionality by setting
actionrunner.stream_output
config option inst2.conf
toFalse
and restart the services (sudo st2ctl restart
).
🛠 Fixed
* 🐎 Fully fix performance regressions for short Python runner actions introduced in the past and partially fixed in #3809. (bug fix) #3803 * 🛠 Fix 'NameError: name 'cmd' is not defined' error when using ``linux.service`` with CentOS systems. #3843. Contributed by @shkadov * 🛠 Fix bugs with newlines in execution formatter (client) (bug fix) #3872 * 🛠 Fixed ``st2ctl status`` to use better match when checking running process status. #3920 * ✂ Removed invalid ``st2ctl`` option to re-open Mistral log files. #3920 * ⚡️ Update garbage collection service and ``st2-purge-executions`` CLI tool and make deletion more efficient. Previously we incorrectly loaded all the execution fields in memory, but there was no need for that and now we only retrieve and load id which is the only field we need. #3936 Reported by @kevin-vh.
-
v2.5.1 Changes
December 14, 2017➕ Added
* ➕ Add new ``log_level`` runner parameter to Python runner. With this parameter, user can control which log messages generated by Python runner actions are output to action ``stderr``. For backward compatibility reasons it defaults to ``debug``. This functionality comes handy in situations when an action depends on an external library which logs a lot of information under ``debug``, but you only want to see messages with log level ``error`` or higher (or similar). (new feature) #3824 * ➕ Add stevedore related metadata to Python package setup.py files for runner packages. This way runners can be installed using pip and dynamically enumerated and loaded using stevedore and corresponding helper functions. All runners are now also fully fledged Python packages (previously they were single module Python packages which caused various install and distribution related issues when installing them via pip) (new feature) * ➕ Add new ``search`` rule criteria comparison operator. Please refer to the documentation for usage. (new feature) #3833 Contributed by @ahubl-mz. * Now a more user-friendly error message is thrown if a cycle is found inside the Jinja template string (e.g. when parameter / variable references itself). (improvement) #3908 * 0️⃣ Jinja templates in default parameter values now render as live parameters, if no "real" live parameter was provided. This allows the template to render pre-schema validation, resulting in the intended value type. (improvement) #3892 🔄 Changed
- ⚡️ Update the output of
st2 execution {run,get}
CLI command to colorize the value of thestatus
attribute (green forsucceeded
, red forfailed
, etc. aka the same as for the output ofst2 execution list
command). (improvement) #3810
Contributed by Nick Maludy (Encore Technologies).
- ⚡️ Update log messages in the datastore service to correctly use
DEBUG
log level instead ofAUDIT
. #3845 - ➕ Add the ability of
st2 key load
to load keys from both JSON and YAML files. Files can now contain a single KeyValuePair, or an array of KeyValuePairs. (improvement) #3815 - ➕ Add the ability of
st2 key load
to load non-string values (objects, arrays, integers, booleans) and convert them to JSON before going into the datastore, this conversion requires the user passing in the-c/--convert
flag. (improvement) #3815 - ⚡️ Update
st2 key load
to load all properties of a key/value pair, now secret values can be loaded. (improvement) #3815
Contributed by Nick Maludy (Encore Technologies).
🛠 Fixed
* 🛠 Fix log messages generated by Python runner actions to include the correct action class name. Previously they always incorrectly used "ABCMeta" instead of the actual action class name. (bug fix) #3824 * 🛠 Fix ``st2 execution tail [last]`` CLI command so it doesn't throw an exception if there are no executions in the database. (bug fix) #3760 #3802 * 🛠 Fix edge case for workflows stuck in running state. When Mistral receives a connection error from the st2 API on requesting action execution, there's a duplicate action execution stuck in requested state. This leads to the st2resultstracker assuming the workflow is still running. * 🛠 Fix a regression and a bug with no API validation being performed and API returning 500 instead of 400 status code if user didn't include any request payload (body) when hitting POST and PUT API endpoints where body is mandatory. (bug fix) #3864 * 🛠 Fix a bug in Python runner which would cause action log messages to be duplicated in action stderr output when utilizing action service / datastore service inside actions. (bug fix) * 🛠 Fix performance issue on the CLI when formatting the output as JSON or YAML. (bug fix) #3697 Contributed by Nick Maludy (Encore Technologies).
- ⚡️ Update the output of
-
v2.5.0 Changes
October 25, 2017➕ 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 surest2.announcement__errbot
and other event names starting withst2.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 containid
attribute and item already exists on the server. This way the behavior is consistent withst2 key load
command and the command is idempotent if each item containsid
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 separatedatabase.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
-
v2.4.1 Changes
September 12, 2017🛠 Fixed
* 🛠 Fix a bug with ``/v1/packs/install`` and ``/v1/packs/uninstall`` API endpoints incorrectly using system user for scheduled pack install and pack uninstall executions instead of the user which performed the API operation.(bug fix) #3693 #3696 Reported by theuiz. * 🛠 Fix mistral callback failure when result contains unicode. (bug fix) * 🛠 Fix cancellation of delayed action execution for tasks in workflow. (bug fix) * 🛠 Fix timeout of mistral shutdown in systemd service. The fix is done upstream. https://review.openstack.org/#/c/499853/ (bug fix) * 🛠 Fix ``st2ctl clean`` not using database connection information from config. This now uses the new ``st2-cleanup-db`` command. (bug fix) #3659 Contributed by Nick Maludy (Encore Technologies). 🔄 Changed
- ⚡️ Update
st2
CLI command to print a more user-friendly usage / help string if no arguments are passed to the CLI. (improvement) #3710 - 👍 Allow user to specify multiple values for a parameter of type array of dicts when using
st2 run
CLI command. #3670
Contributed by Hiroyasu OHYAMA.
- ➕ Added new command
st2-cleanup-db
that drops the current StackStorm MongoDB database. #3659
Contributed by Nick Maludy (Encore Technologies).
- ⚡️ Update
-
v2.4.0 Changes
August 23, 2017➕ Added
* Add sample passive sensor at ``contrib/examples/sensors/echo_flask_app``. (improvement) #3667 * ➕ Add pack config into action context. This is made available under the ``config_context`` key. #3183 * ➕ Add limit/``-n`` flag and pagination note(stderr) in the CLI for ``st2 key list``. Default limit is 50. #3641 * Implement pause and resume for Mistral workflow and Action Chain. Pause and resume will cascade down to subworkflows and/or subchains. Pause from a subworkflow or subchain will cascade up to the parent workflow. (new feature) * ➕ Add pack index endpoint. It will make a request for every index defined in st2.conf and return the combined list of available packs. * ➕ Added a new field ``timestamp_f`` to the GELF logging formatter that represents the time of the logging even in fractional time (resolution is dependent on your system). This allows adjacent logging events to be distinguished more accurately by the time they occurred. Contributed by Nick Maludy (Encore Technologies) #3362 * Require new ``STREAM_VIEW`` RBAC permission type to be able to view ``/v1/stream`` stream API endpoint. (improvement) #3676 * Add new ``?events``, ``?action_refs`` and ``?execution_ids`` query params to ``/v1/stream/`` API endpoint. These query parameters allow users to filter out which events to receive based on the event type, action ref and execution id. By default, when no filters are provided, all events are returned. (new feature) #3677 * 👉 Show count of pack content (actions, sensors, triggers, rules and aliases) to be registered before the ``st2 pack install`` so that the delay in install is not mistaken as no response or hanging command. (improvement) #3586 #3675 * 👍 Allow users to specify value for "array of objects" parameter type using a simple notation when using the ``st2 run`` CLI command. (improvement) #3646 #3670 Contributed by Hiroyasu OHYAMA. * Copy nearly all existing Jinja filters and make them available in both Jinja and YAQL within Mistral workflows (https://github.com/StackStorm/st2mistral/pull/30). Modify st2kv default behavior (BREAKING CHANGE) to not decrypt ciphertext in datastore by default (now explicitly enabled via optional parameter). Contributed by mierdin. #3565 * ➕ Add ``regex_substring`` Jinja filter for searching for a pattern in a provided string and returning the result. (improvement) Contributed by mierdin. #3482 🔄 Changed
- 📇 Rename ST2 action runner cancel queue from
st2.actionrunner.canel
tost2.actionrunner.cancel
. (improvement) #3247 - 📚 Install scripts and documentation have been updated to install MongoDB 3.4 by default (previously 3.2 was installed by default). If you want to upgrade an existing installation, please follow the official instructions at https://docs.mongodb.com/v3.4/release-notes/3.4-upgrade-standalone/. (improvement)
- ⚡️ Update garbage collector service to delete corresponding stdout and stderr objects which belong to executions which are to be deleted. #2175 #3657
✂ Removed
* 👌 Support for pack ``config.yaml`` has been removed. Pack configuration should use the new style, at ``/opt/stackstorm/configs/<pack>.yaml``. Packs containing ``config.yaml`` will generate a fatal ERROR on pack registration. 🛠 Fixed ~~~~~ * 🛠 Fix retrying in message bus exchange registration. (bug fix) #3635 #3638 Reported by John Arnold. * 🛠 Fix message bus related race condition which could, under some rare scenarios, cause first published message to be ignored because there were no consumers for that particular queue yet. This could happen in a scenario when API service came online and served a request before action runner service came online. This also fixes an issue with Redis kombu backend not working. (bug fix) #3635 #3639 #3648 * 🛠 Fix logrotate configuration to delete stale compressed st2actionrunner logs #3647 * Fix trace list API endpoint sorting by ``start_timestamp``, using ``?sort_desc=True|False`` query parameters and by passing ``--sort=asc|desc`` parameter to the ``st2 trace list`` CLI command. Descending order by default.(bug fix) #3237 #3665 * 🛠 Fix pack index health endpoint. It now points to the right controller. #3672 * 🛠 Fix 'pack register content' failures appearing on some slower systems by lifting action timeout. #3685
- 📇 Rename ST2 action runner cancel queue from