Stackstorm Errors
Common Stackstorm Errors#
Workflows#
’‘’NoneType’‘ object has no attribute ‘’iteritems’‘’
When running a workflow I get:
[test@st2 workflows]$ st2 run example.my_check
.
id: 5ce24f5152364c6d5cb1d957
action.ref: example.my_check
parameters: None
status: failed
start_timestamp: Mon, 20 May 2019 06:55:13 UTC
end_timestamp: Mon, 20 May 2019 06:55:13 UTC
result:
errors:
- message: '''NoneType'' object has no attribute ''iteritems'''
output: null
This is an issue with indentation of yaml
. Ensure that you are showing whitespace in your editor and that you are looking at example workflows like example.orquesta-basic
.
TemplateAssertionError: no filter named ‘’decrypt_kv’‘’
When running a workflow I get: 'JinjaEvaluationException: Unable to evaluate expression ''{{ st2kv.my_pass | decrypt_kv }}''. TemplateAssertionError: no filter named ''decrypt_kv'''
I get context errors where variables do not exist when running my workflow
result:
errors:
- message: 'YaqlEvaluationException: Unable to resolve key ''stdout'' in expression ''<% result().stdout %>'' from context.'
route: 0
task_id: task1
task_transition_id: noop__t0
type: error
- message: 'YaqlEvaluationException: Unable to resolve key ''stderr'' in expression ''<% result().stderr %>'' from context.'
route: 0
task_id: task1
task_transition_id: noop__t0
type: error
- message: 'YaqlEvaluationException: Unable to evaluate expression ''<% ctx(stdout) %>''. VariableUndefinedError: The variable "stdout" is undefined.'
type: error
output: null
This was created with the following workflow:
---
version: 1.0
description: A basic workflow that runs the vdc check with hardcoded parameters from chatops.
tasks:
task1:
action: core.remote
input:
cmd: "xxxx"
next:
- when: <% succeeded() %>
publish:
- stdout: <% result().stdout %>
- stderr: <% result().stderr %>
output:
- stdout: <% ctx(stdout) %>
I changed the when
condition and just used stdout
as the output, not the best but it worked:
---
version: 1.0
description: A basic workflow that runs the vdc check with hardcoded parameters from chatops.
tasks:
task1:
action: core.remote
input:
cmd: "xxyy"
next:
- publish:
- stdout: <% result() %>
output:
- stdout: <% ctx(stdout) %>
The result of the workflow:
result:
output:
stdout:
host:
failed: false
return_code: 0
stderr: "xxx"
stdout: 'yyy'
succeeded: true