StackStorm (aka "IFTTT for Ops") is event-driven automation for auto-remediation, incident responses, troubleshooting, deployments, and more for DevOps and SREs. Includes rules engine, workflow, 160 integration packs with 6000+ actions (see https://exchange.stackstorm.org) and ChatOps. Installer at https://docs.stackstorm.com/install/index.html
APACHE-2.0 License
Bot releases are hidden (Show)
Published by Kami about 8 years ago
delay
, cancel
) when adelay
is a default behavior, but now user can also specify cancel
and an execution will--api-key
option. (bug-fix)?limit
100
. (improvement)st2-register-content
script to exit with non-zero on failure (e.g. invalid resource--register-fail-on-failure
--register-no-fail-on-failure
flag. (improvement)run()
method. First item in the tuple is a flag indicating success (True
/False
) and the second one is the result. Previously, user could only cause action to fail byexamples
pack that shows how to use format
option toInternal Server Error
when an undefined jinja variable is used in action alias ack field.201
but also explicitly say we couldn't render the ack
ack
is anyways a nice-to-have message which is not critical. Previously, we stillInternal Server Error
which might confuse the userformat_execution_result
python action. The tests cover variouselapsed_seconds
in execution API response for GET calls. The clients usingelapsed_seconds
without having to repeat computation. (improvement)st2-register-content
script so it validates new style configs in/opt/stackstorm/configs/
directory when using --register-configs
flag if a pack containsconfig.schema.yaml
). (improvement)st2kv
in Mistral to get key-value pair from StackStorm'sPublished by Kami over 8 years ago
--register-triggers
?no_merge=true
query parameter to the execution re-run API endpoint. (improvement)Published by m4dcoder over 8 years ago
system.debug
config file option toTrue
.--debug
CLI flag which comes handy when runningdata
is dropped if message
is not present in notification. (bug-fix)ssh_runner.use_paramiko_ssh_runner
config option. (cleanup)private_key
st2 runner disable <name>
,st2 runner enable <name>
) which allows administrator to disable (and re-enable) a runner.register-setup-virtualenvs
flag to be used in combination with register-all
in thest2-register-content
script.get_fixture_content
method to all the base pack resource test classes. This methodpytz
dependency to st2client
requirements file. (bug-fix)ST2_AUTH_TOKEN
and ST2_API_URL
env-y
/ --yaml
flag to the CLI list
and get
commands. If this flag is provided,config.schema.yaml
file. This file can contain an optional schema for the pack config. In the/opt/stackstorm/configs/<pack name>.yaml
files. Those files are similar to the existing packst2-submit-debug-info
cleans up after itself and deletes a temporary directory itNone
value as-is and don't try to cast it to alog
attribute on the-a all
/ --attr=all
flag works for st2 execution list
command (bug-fix)--show-secrets
when listing api keys to get the key_hash
--register-triggers
flag to the st2-register-content
script and st2ctl
.Published by Kami over 8 years ago
Passphrase support for the SSH runner. (improvement)
Improvements to ChatOps deployments of packs via pack deploy
[Jon Middleton]
Add extra
field 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 cacert
st2client constructor argument. This way
it now mimics the behavior of the verify
argument of the requests.request
method.
(improvement)
Add datastore access to Python runner actions via the action_service
which is available
to all the Python runner actions after instantiation. (new-feature) #2396 #2511
[Kale Blankenship]
Update st2actions.runners.pythonrunner.Action
class so the constructor also takes
action_service
as 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-Type
header.
Note: For backward compatibility reasons we default to JSON if Content-Type
header 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 using st2 execution get
CLI command. (improvement)
Display number of seconds elapsed for all the child tasks of a workflow action when using
st2 execution get
CLI command. (improvement)
Various improvements in the linux.wait_for_ssh
action:
password
norkeyfile
parameter is provided.Support for leading and trailing slashes in the webhook urls. (improvement)
Make sure that the filename
, module
, funcName
and lineno
attributes which are
available in the log formatter string contain the correct values. (bug-fix)
Reported by Andrew Regan.
Update matchregex
rule 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 matchwildcard
rule criteria operator. This operator provides supports for Unix
shell-style wildcards (*
, ?
). (new feature)
Allow user to pass verbose
parameter to linux.rm
action. For backward compatibility
reasons it defaults to true
. (improvement)
Make sure that sensor container child processes take into account --use-debugger
flag passed
to the sensor container. This fixes support for remote debugging for sensor processes. (bug-fix)
Drop deprecated and unused system.admin_users
config option which has been replaced with
RBAC.
Add --output
and --existing-file
options to st2-submit-debug-info
. [Kale Blankenship]
Move stream functionality from st2api
into a new standalone st2stream
service. Similar to
st2api
and st2auth
, 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 attachments
parameter to the core.sendmail
action. (improvement) [Cody A. Ray]
Add --register-setup-virtualenvs
flag to the register-content
script and st2ctl
.
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.CronTimer
so it supports more of the cron-like expressions (a-b
, */a
,
x,y,z
, etc.). (improvement)
Add new regex
and iregex
rule criteria operator and deprecate matchregex
in 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 and IFS
for lists. (improvement, new feature)
Fix linux.traceroute
action. (bug fix)
Fix a bug with positional argument handling in the local script runner. Now the arguments with a
no value or value of None
are correctly passed to the script. (bug fix)
Fix rule criteria comparison and make sure that falsy criteria pattern values such as integer
0
are handled correctly. (bug-fix)
Reported by Igor Cherkaev.
Add -v
flag (verbose mode) to the st2-run-pack-tests
script. (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 a task
function 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_pack
alias to pack_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_none
Jinja template filter which can be used inside rules when invoking an
action. This filter ensures that None
values are correctly serialized and is to be used when
TriggerInstance payload value can be None
and None
is also a valid value for a particular
action parameter. (improvement, workaround)
Published by Kami over 8 years ago
Published by Kami over 8 years ago
setup.py
of st2client
package doesn't rely on functionality which is onlycacert
st2client constructor argument. This wayverify
argument of the requests.request
method.Published by manasdk over 8 years ago
Allow user to pass env
parameter to packs.setup_virtualenv
and packs.install
action.
This comes handy if user wants pip to use an HTTP(s) proxy (HTTP_PROXY and HTTPS_PROXY
environment variable) when installing pack dependencies. (new feature)
Ability to view causation chains in Trace. This helps reduce the noise when using Trace to
identify specific issues. (new-feature)
Filter Trace components by model types to only view ActionExecutions, Rules or TriggerInstances.
(new-feature)
Include ref of the most meaningful object in each trace component. (new-feature)
Ability to hide trigger-instance that do not yield a rule enforcement. (new-feature)
Change the rule list columns in the CLI from ref, pack, description and enabled to ref,
trigger.ref, action.ref and enabled. This aligns closer the UI and also brings important
information front and center. (improvement)
Action and Trigger filters for rule list (new-feature)
Add missing logrotate config entry for st2auth
service. #2294 [Vignesh Terafast]
Support for object already present in the DB for st2-rule-tester
(improvement)
Add --register-fail-on-failure
flag to st2-register-content
script. If this flag is
provided, the script will fail and exit with non-zero status code if registering some resource
fails. (new feature)
Add a missing get_logger
method to the `MockSensorService. This method now returns an instance of
Mock`` class which allows user to assert that a particular message has been
logged. [Tim Ireland, Tomaz Muraus]
Introduce a new abandoned
state that is applied to executions that we cannot guarantee as
completed. Typically happen when an actionrunner currently running some executions quits or is
killed via TERM.
Add new st2garbagecollector
service which periodically deletes old data from the database
as configured in the config. By default, no old data is deleted unless explicitly configured in
the config.
All published variables can be available in the result of ActionChain execution under the
published
property if display_published
property is specified.
Allow user to specify TTL when creating datastore item using CLI with the --ttl
option.
(improvement)
Fix validation error when None is passed explicitly to an optional argument on action
execution. (bug fix)
Deprecated params
action attribute in the action chain definition in favor of the new
parameters
attribute. (improvement)
Fix action parameters validation so that only a selected set of attributes can be overriden for
any runner parameters. (bug fix)
Fix type in the headers parameter for the http-request runner. (bug fix)
Fix runaway action triggers caused by state miscalculation for mistral workflow. (bug fix)
Throw a more friendly error message if casting parameter value fails because the value contains
an invalid type or similar. (improvement)
Use --always-copy
option when creating virtualenv for packs from packs.setup_virtualenv
action. This is required when st2actionrunner is kicked off from python within a virtualenv.
Fix a bug in the remote script runner which would throw an exception if a remote script action
caused a top level failure (e.g. copying artifacts to a remote host failed). (bug-fix)
Display execution parameters when using st2 execution get <execution id>
CLI command for
workflow executions. (improvement)
Fix execution cancellation for task of mistral workflow. (bug fix)
Fix runaway action triggers caused by state miscalculation for mistral workflow. (bug fix)
The --tasks
option in the CLI for st2 execution get
and st2 run
will be renamed to
--show-tasks
to avoid conflict with the tasks option in st2 execution re-run.
Add option to rerun one or more tasks in mistral workflow that has errored. (new-feature)
Fix a bug when removing notify section from an action meta and registering it never removed
the notify section from the db. (bug fix)
Make sure action specific short lived authentication token is deleted immediately when execution
is canceled. (improvement)
Ignore lock release errors which could occur while reopening log files. This error could simply
indicate that the lock was never acquired.
Replace chatops.format_result
with chatops.format_execution_result
and remove dependency
on st2 pack from st2contrib.
Trace also maintains causation chain through workflows.
Published by emedvedev almost 9 years ago
headers
and params
core.http
action paramer type from string
toobject
.type
attribute to be an array since rest of the code doesn'tstanley
) instead of thetimeout
action execution status which represents an action executionfailure
. Keep in mind--debug
flag no longer implies profiling mode. If you want to enable profiling mode, you need--profile
flag to the binary. To reproduce the old behavior, simply pass--debug --profile
.message
and data
field for notifications.(new feature)noop
runner and core.noop
action. Returns consistent success in a WF regardless ofst2tests.mocks.*
) for easier unit testing of the packs. (new feature)./st2common/bin/st2-run-pack-tests
) for running pack tests. (new feature)Published by Kami almost 9 years ago
st2 execution list
command by not requesting result
andtrigger_instance
attributes. The effect of this change will be especially pronounced forst2 execution get
command by not requesting result
andtrigger_instance
attributes.st2api
service in debug mode (--debug
) flag, all the JSON responses arest2 execution list
and st2 execution get
CLI commands, display executionst2notifier
service to the logrotate config. (bug fix)object
to contain special characters such as.
and $
in the parameter value. (bug fix, improvement)mistral.api_url
auth.api_url
setting). (improvement)Published by manasdk almost 9 years ago
st2 run
/ st2 execution run
and st2 execution re-run
commands exit withflat_file
backend is installed And available byenabled
attribute whentimestamp_lt
and timestamp_gt
filtering in the /executions
API endpoint. Now west2 execution cancel
. (improvement)keystone
backend in the st2auth service. (bug-fix)packs.info
action so it correctly exists with a non-zero status code if the pack doesn't.gitinfo
file. (bug-fix)packs.info
action so it correctly searches all the packs base dirs. (bug-fix)--profile
flag to all the services. When this flag is provided service runsstdout
and stderr
consumption in paramiko SSH runner where reading a fixedST2_CONFIG_FILE
option without disabling token cache.stdout
and stderr
streams from paramiko and localcwd
could just be accessed in sudo mode but cd
sudo
in the command generated. Now, cd
is inside the scope ofsudo
. (bug-fix)stdout
or stderr
wasn't transformedsudo
if local user and remote userFrom
field in the sendmail
action by passing from
requirements.txt
inside theupdate=True
parameter to packs.setup_virtualenv
packs.update_virtualenv
action. (new feature)pack_group
property allows to pick thisst2packs
. (new feature)Published by lakshmi-kannan about 9 years ago
stdout
and stderr
fields in localconfig
argument is correctly passed to the sensor--debug
flag. This makes debugging a lot--debug
flag and all the sensorPublished by manasdk about 9 years ago
Published by lakshmi-kannan about 9 years ago
/packs/views/files/
API endpoint. (new feature)use_paramiko_ssh_runner
to false in st2.conf. (improvement)st2 run
CLI command. (feature)st2 run
CLI command. (feature)st2ctl
to correctly start st2web
even if even if Mistral is no installed.{sensor,action,rule} {enable, disable} <ref or id>
) (feature)$PATH
environment variable which is set for the sandboxed PythonPublished by lakshmi-kannan about 9 years ago
Published by manasdk about 9 years ago
Published by lakshmi-kannan about 9 years ago
ST2_ACTION_API_URL
, ST2_ACTION_AUTH_TOKEN
. (new-feature)datetime
objects internally in UTC. (improvement,timediff_lt
and timediff_gt
rule comparison operator with many stringsecret
attribute (boolean) for each action parameters. Values of--sensor-ref
instead of --sensor-name
.six
library is now available by default in the Python sandbox to all the newly installedst2 execution list
CLI command throwing an exception on failed Mistralst2 execution list
CLI command not displaying end_timestamp
attribute for/v1/packs
API endpoint for listing installed packs. (new-feature)Published by manasdk over 9 years ago
Published by manasdk over 9 years ago
Published by manasdk over 9 years ago
Published by manasdk over 9 years ago