v1.4.0 - April 18, 2016
-
Passphrase support for the SSH runner. (improvement)
-
Improvements to ChatOps deployments of packs via
pack deploy[Jon Middleton] -
Add
extrafield to the ActionAlias schema for adapter-specific parameters. (improvement) -
Dev environment by default now uses gunicorn to spin API and AUTH processes. (improvement)
-
Allow user to pass a boolean value for the
cacertst2client constructor argument. This way
it now mimics the behavior of theverifyargument of therequests.requestmethod.
(improvement) -
Add datastore access to Python runner actions via the
action_servicewhich is available
to all the Python runner actions after instantiation. (new-feature) #2396 #2511
[Kale Blankenship] -
Update
st2actions.runners.pythonrunner.Actionclass so the constructor also takes
action_serviceas the second argument. -
Allow /v1/webhooks API endpoint request body to either be JSON or url encoded form data.
Request body type is determined and parsed accordingly based on the value of
Content-Typeheader.
Note: For backward compatibility reasons we default to JSON ifContent-Typeheader is
not provided. #2473 [David Pitman] -
Bug fixes to allow Sensors to have their own log files. #2487 [Andrew Regan]
-
Display number of seconds which have elapsed for all the executions which have completed
when usingst2 execution getCLI command. (improvement) -
Display number of seconds elapsed for all the child tasks of a workflow action when using
st2 execution getCLI command. (improvement) -
Various improvements in the
linux.wait_for_sshaction:- Support for password based authentication.
- Support for non-RSA SSH keys.
- Support for providing a non-default (22) SSH server port.
- Support for using default system user (stanley) ssh key if neither
passwordnor
keyfileparameter is provided.
-
Support for leading and trailing slashes in the webhook urls. (improvement)
-
Make sure that the
filename,module,funcNameandlinenoattributes which are
available in the log formatter string contain the correct values. (bug-fix)Reported by Andrew Regan.
-
Update
matchregexrule criteria operator so it uses "dot all" mode where dot (.)
character will match any character including new lines. Previously*didn't match
new lines. (improvement) -
Introduce new
matchwildcardrule criteria operator. This operator provides supports for Unix
shell-style wildcards (*,?). (new feature) -
Allow user to pass
verboseparameter tolinux.rmaction. For backward compatibility
reasons it defaults totrue. (improvement) -
Make sure that sensor container child processes take into account
--use-debuggerflag passed
to the sensor container. This fixes support for remote debugging for sensor processes. (bug-fix) -
Drop deprecated and unused
system.admin_usersconfig option which has been replaced with
RBAC. -
Add
--outputand--existing-fileoptions tost2-submit-debug-info. [Kale Blankenship] -
Move stream functionality from
st2apiinto a new standalonest2streamservice. Similar to
st2apiandst2auth, stream is now a standalone service and WSGI app. (improvement) -
Allow user to specify a timezone in the CLI client config (
~/.st2/config). If the timezone is
specified, all the timestamps displayed by the CLI will be shown in the configured timezone
instead of a default UTC display. (new feature) -
Add
attachmentsparameter to thecore.sendmailaction. (improvement) [Cody A. Ray] -
Add
--register-setup-virtualenvsflag to theregister-contentscript andst2ctl.
When this flag is provided, Python virtual environments are created for all the registered packs.
This option is to be used with distributed setup where action runner services run on multiple
hosts to ensure virtual environments exist on all those hosts. (new-feature) -
Update
core.st2.CronTimerso it supports more of the cron-like expressions (a-b,*/a,
x,y,z, etc.). (improvement) -
Add new
regexandiregexrule criteria operator and deprecatematchregexin favor of
those two new operators. (new-feature) [Jamie Evans] -
Record failures to enforce rules due to missing actions or parameter validation errors. A
RuleEnforcement object will be created for failed enforcements that do not lead to an
ActionExecution creation. (improvement) -
Add support for better serialization of the following parameter types for positional parameters
used in the local and remote script runner actions:integer,float,boolean,
list,object. Previously those values were serialized as Python literals which made
parsing them in the shell scripts very cumbersome. Now they are serialized based on the simple
rules described in the documentation which makes it easy to use just by using simple shell
primitives such as if statements andIFSfor lists. (improvement, new feature) -
Fix
linux.tracerouteaction. (bug fix) -
Fix a bug with positional argument handling in the local script runner. Now the arguments with a
no value or value ofNoneare correctly passed to the script. (bug fix) -
Fix rule criteria comparison and make sure that falsy criteria pattern values such as integer
0are handled correctly. (bug-fix)Reported by Igor Cherkaev.
-
Add
-vflag (verbose mode) to thest2-run-pack-testsscript. (improvement) -
The list of required and optional configuration arguments for the LDAP auth backend has changed.
The LDAP auth backend supports other login name such as sAMAccountName. This requires a separate
service account for the LDAP backend to query for the DN related to the login name for bind to
validate the user password. Also, users must be in one or more groups specified in group_dns to
be granted access. -
Mistral has deprecated the use of task name (i.e.
$.task1) to reference task result. It is
replaced with ataskfunction that returns attributes of the task such as id, state, result,
and additional information (i.e.task(task1).result). -
Add support for additional SSH key exchange algorithms to the remote runner via upgrade to
paramiko 1.16.0. (new feature) -
Add initial code framework for writing unit tests for action aliases. For the usage, please refer
to the "Pack Testing" documentation section. (new feature) -
For consistency rename
deploy_packalias topack_deploy. -
Fix alias executions API endpoint and make sure an exception is thrown if the user provided
command string doesn't match the provided format string. Previously, a non-match was silently
ignored. (bug fix) -
Add custom
use_noneJinja template filter which can be used inside rules when invoking an
action. This filter ensures thatNonevalues are correctly serialized and is to be used when
TriggerInstance payload value can beNoneandNoneis also a valid value for a particular
action parameter. (improvement, workaround)