22 lines
778 B
Python

import pipes
from ansible import errors
from ansible.plugins.action.command import ActionModule as command
class ActionModule(command):
def run(self, tmp=None, task_vars=None):
cmd = ["qubesctl"]
cmd.append('state.sls')
cmd.append(self._task.args['sls'])
if 'env' in self._task.args:
cmd.append("saltenv=%s" % (self._task.args['env'],))
module_args = " ".join(pipes.quote(s) for s in cmd)
module_args = "bash -c %s" % pipes.quote("DISPLAY=:0 " + module_args)
self._task.action = "command"
self._task.args['_raw_params'] = module_args
for x in 'env sls'.split():
if x in self._task.args:
del self._task.args[x]
return command.run(self, tmp, task_vars)