v3.2.0
https://stackstorm.com/2020/04/30/stackstorm-v3-2-0-released/
Added
- Add support for blacklisting / whitelisting hosts to the HTTP runner by adding new
url_hosts_blacklistandurl_hosts_whitelistrunner attribute. (new feature)
#4757 - Add
userparameter tore_runmethod of st2client. #4785 - Install pack dependencies automatically. #4769
- Add support for
immutable_parameterson Action Aliases. This feature allows default
parameters to be supplied to the action on every execution of the alias. #4786 - Add
get_entrypoint()method toActionResourceManagerattribute of st2client.
#4791 - Add support for orquesta task retry. (new feature)
- Add config option
scheduler.execution_scheduling_timeout_threshold_minto better control the cleanup of scheduled actions that were orphaned. #4886
Changed
-
Install pack with the latest tag version if it exists when branch is not specialized.
(improvement) #4743 -
Implement "continue" engine command to orquesta workflow. (improvement) #4740
-
Update various internal dependencies to latest stable versions (apscheduler, eventlet,
kombu, amqp, pyyaml, mongoengine, python-gnupg, paramiko, tooz, webob, bcrypt).Latest version of mongoengine should show some performance improvements (5-20%) when
writing very large executions (executions with large results) to the database. #4767 -
Improved development instructions in requirements.txt and dist_utils.py comment headers
(improvement) #4774 -
Add new
actionrunner.stream_output_buffer_sizeconfig option and default it to-1
(previously default value was0). This should result in a better performance and smaller
CPU utilization for Python runner actions which produce a lot of output.
(improvement) -
Add new
action_runner.pip_optsst2.conf config option which allows user to specify a list
of command line option which are passed topip installcommand when installing pack
dependencies into a pack specific virtual environment. #4792 -
Refactor how orquesta handles individual item result for with items task. Before the fix,
when there are a lot of items and/or result size for each item is huge, there is a negative
performance impact on write to the database when recording the conductor state. (improvement) -
Remove automatic rendering of workflow output when updating task state for orquesta workflows.
This caused workflow output to render incorrectly in certain use case. The render_workflow_output
function must be called separately. (improvement) -
Update various internal dependencies to latest stable versions (cryptography, jinja2, requests,
apscheduler, eventlet, amqp, kombu, semver, six) #4819 (improvement) -
Improve MongoDB connection timeout related code. Connection and server selection timeout is now
set to 3 seconds. Previously a default value of 30 seconds was used which means that for many
connection related errors, our code would first wait for this timeout to be reached (30 seconds)
before returning error to the end user. #4834 -
Upgrade
pymongoto the latest stable version (3.10.0.). #4835 (improvement) -
Updated Paramiko to v2.7.1 to support new PEM ECDSA key formats #4901 (improvement)
-
Remove
.scrutinizer.ymlconfig file. No longer used. -
Convert escaped dict and dynamic fields in workflow db models to normal dict and dynamic fields.
(performnce improvement) -
Add support for
PEP 508 <https://www.python.org/dev/peps/pep-0508/stackstorm/st2#environment-markers>_
environment markers in generatedrequirements.txtfiles. (improvement) #4895 -
Use
pip-compilefrompip-toolsinstead ofpip-conflict-checker(improvement) #4896 -
Refactor how inbound criteria for join task in orquesta workflow is evaluated to count by
task completion instead of task transition. (improvement) -
The workflow engine orquesta is updated to v1.1.0 for the st2 v3.2 release. The version upgrade
contains various new features and bug fixes. Please review the release notes for the full list of
changes at https://github.com/StackStorm/orquesta/releases/tag/v1.1.0 and the st2 upgrade notes
for potential impact. (improvement)
Fixed
-
Fix the action query when filtering tags. The old implementation returned actions which have the
provided name as action name and not as tag name. (bug fix) #4828Reported by @angrydeveloper and contributed by Marcel Weinberg (@winem)
-
Fix the passing of arrays to shell scripts where the arrays where not detected as such by the
st2 action_db utility. This caused arrays to be passed as Python lists serialized into a string.Reported by @kingsleyadam #4804 and contributed by Marcel Weinberg (@winem) #4861
-
Fix ssh zombies when using ProxyCommand from ssh config #4881 [Eric Edgar]
-
Fix rbac with execution view where the rbac is unable to verify the pack or uid of the execution
because it was not returned from the action execution db. This would result in an internal server
error when trying to view the results of a single execution.
Contributed by Joshua Meyer (@jdmeyer3) #4758 -
Fixed logging middleware to output a
content_lengthof0instead ofInfinity
when the type of data being returned is not supported. Previously, when the value was
set toInfinitythis would result in invalid JSON being output into structured
logs. (bug fix) #4722Contributed by Nick Maludy (@nmaludy Encore Technologies)
-
Fix the workflow execution cancelation to proceed even if the workflow execution is not found or
completed. (bug fix) #4735 -
Added better error handling to
contrib/linux/actions/dig.pyto inform if dig is not installed.
Contributed by JP Bourget (@punkrokk Syncurity) #4732 -
Update
dist_utilsmodule which is bundled withst2clientand other Python packages so it
doesn't depend on internal pip API and so it works with latest pip version. (bug fix) #4750 -
Fix dependency conflicts in pack CI runs: downgrade requests dependency back to 0.21.0, update
internal dependencies and test expectations (amqp, pyyaml, prance, six) (bugfix) #4774 -
Fix secrets masking in action parameters section defined inside the rule when using
GET /v1/rulesandGET /v1/rules/<ref>API endpoint. (bug fix) #4788 #4807Contributed by @Nicodemos305 and @jeansfelix
-
Fix a bug with authentication API endpoint (
POST /auth/v1/tokens) returning internal
server error when running under gunicorn and whenauth.api_urlconfig option was not set.
(bug fix) #4809Reported by @guzzijones
-
Fixed
st2 execution getandst2 runnot printing theaction.reffor non-workflow
actions. (bug fix) #4739Contributed by Nick Maludy (@nmaludy Encore Technologies)
-
Update
st2 execution getcommand to always includecontext.user,start_timestampand
end_timestampattributes. (improvement) #4739 -
Fixed
core.sendmailbase64 encoding of longer subject lines (bug fix) #4795Contributed by @stevemuskiewicz and @guzzijones
-
Update all the various rule criteria comparison operators which also work with strings (equals,
icontains, nequals, etc.) to work correctly on Python 3 deployments if one of the operators is
of a type bytes and the other is of a type unicode / string. (bug fix) #4831 -
Fix SSL connection support for MongoDB and RabbitMQ which wouldn't work under Python 3 and would
result in cryptic "maximum recursion depth exceeded while calling a Python object" error on
connection failure.NOTE: This issue only affected installations using Python 3. (bug fix) #4832 #4834
Reported by @alexku7.
-
Fix the amqp connection setup for WorkflowExecutionHandler to pass SSL params. (bug fix) #4845
Contributed by Tatsuma Matsuki (@mtatsuma)
-
Fix dependency conflicts by updating
requests(2.23.0) andgitpython(2.1.15). #4869 -
Fix orquesta syntax error for with items task where action is misindented or missing. (bug fix)
PR StackStorm/orquesta#195. -
Fix orquesta yaql/jinja vars extraction to ignore methods of base ctx() dict. (bug fix)
PR StackStorm/orquesta#196. Fixes #4866. -
Fix parsing of array of dicts in YAQL functions. Fix regression in YAQL/Jinja conversion
functions as a result of the change. (bug fix) PR StackStorm/orquesta#191.Contributed by Hiroyasu Ohyama (@userlocalhost)
Removed
- Removed Ubuntu 14.04 from test matrix #4897