Skip to content

Instantly share code, notes, and snippets.

{% set my_list = [ 'item1','item2','item3','item4'] %}
{% if grains['some_grain'] in my_list %}
# it's on the list, do something
{% else %}
# not on the list, do nothing
>>> import salt.client
>>> caller = salt.client.Caller()
>>> out = caller.cmd('cmd.run', 'some_command', shell=powershell)
>>> print out
>>> import salt.client
>>> caller = salt.client.Caller()
Working
import salt.client
caller = salt.client.Caller()
schedules_list = caller.cmd('cmd.run', 'schtasks /query /fo list')
print schedules_list
Not working
[atiliomedina as root@hllibisphtrac:~ ]$ salt-call pillar.items
local:
----------
_errors:
- Rendering Primary Top file failed, render error:
Jinja error: campusd.sls
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/salt/utils/templates.py", line 368, in render_jinja_tmpl
output = template.render(**decoded_context)
File "/usr/lib/python2.7/site-packages/jinja2/environment.py", line 969, in render
[atiliomedina as root@hllibisphtrac:~ ]$ salt-call state.show_top
local:
----------
base:
- campusd.basis_states
- campusd.schedules
- campusd.users
- campusd.groups
- campusd.security
- campusd.core
- Rendering SLS 'base:stats.syslog.syslog' failed: Jinja error: argument of type 'function' is not iterable
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/salt/utils/templates.py", line 368, in render_jinja_tmpl
output = template.render(**decoded_context)
File "/usr/lib/python2.7/site-packages/jinja2/environment.py", line 969, in render
return self.environment.handle_exception(exc_info, True)
File "/usr/lib/python2.7/site-packages/jinja2/environment.py", line 742, in handle_exception
reraise(exc_type, exc_value, tb)
File "<template>", line 38, in top-level template code
TypeError: argument of type 'function' is not iterable
file-on-master-exists:
file.exists:
- name: salt://some/file/or/directory
config_update:
file.managed:
- name: /etc/somedir/someconfig
- source: salt://base/somedir/someconfig
- user: root
- group: root
- mode: 644
- replace: False
- order: 1
- require:
config_update:
file.managed:
- name: /etc/somedir/someconfig
- source: salt://base/somedir/someconfig
- user: root
- group: root
- mode: 644
- replace: False
- order: 1
- require:
somefileline:
file.line:
- name: /root/some_test_file.txt
- content: New text to add
- match: ^Existing
- mode: replace
- backup: True