2012-07-14 15:59:12 +00:00
|
|
|
# this is a virtual module that is entirely implemented server side
|
2012-09-17 13:11:04 +00:00
|
|
|
|
|
|
|
DOCUMENTATION = '''
|
|
|
|
---
|
|
|
|
module: raw
|
2012-09-19 14:09:26 +00:00
|
|
|
short_description: Executes a low-down and dirty SSH command
|
2012-12-23 18:17:07 +00:00
|
|
|
options:
|
|
|
|
free_form:
|
|
|
|
description:
|
|
|
|
- the raw module takes a free form command to run
|
|
|
|
required: true
|
|
|
|
executable:
|
|
|
|
description:
|
|
|
|
- change the shell used to execute the command. Should be an absolute path to the executable.
|
|
|
|
required: false
|
|
|
|
version_added: "1.0"
|
2012-09-19 14:09:26 +00:00
|
|
|
description:
|
|
|
|
- Executes a low-down and dirty SSH command, not going through the module
|
|
|
|
subsystem. This is useful and should only be done in two cases. The
|
2012-11-21 17:49:30 +00:00
|
|
|
first case is installing C(python-simplejson) on older (Python 2.4 and
|
2012-09-19 14:09:26 +00:00
|
|
|
before) hosts that need it as a dependency to run modules, since nearly
|
|
|
|
all core modules require it. Another is speaking to any devices such as
|
|
|
|
routers that do not have any Python installed. In any other case, using
|
|
|
|
the M(shell) or M(command) module is much more appropriate. Arguments
|
2012-12-23 00:44:00 +00:00
|
|
|
given to M(raw) are run directly through the configured remote shell.
|
|
|
|
Standard output, error output and return code are returned when
|
|
|
|
available. There is no change handler support for this module.
|
2012-12-23 21:20:34 +00:00
|
|
|
- This module does not require python on the remote system, much like
|
|
|
|
the M(script) module.
|
2012-09-17 13:11:04 +00:00
|
|
|
examples:
|
2012-12-23 00:44:00 +00:00
|
|
|
- description: Example from C(/usr/bin/ansible) to bootstrap a legacy python 2.4 host
|
2012-12-23 21:20:34 +00:00
|
|
|
code: "action: raw yum -y install python-simplejson"
|
|
|
|
notes:
|
|
|
|
- If you want to execute a command securely and predictably, it may be
|
|
|
|
better to use the M(command) module instead. Best practices when writing
|
|
|
|
playbooks will follow the trend of using M(command) unless M(shell) is
|
|
|
|
explicitly required. When running ad-hoc commands, use your best
|
|
|
|
judgement.
|
2012-10-01 10:37:51 +00:00
|
|
|
author: Michael DeHaan
|
2012-09-17 13:11:04 +00:00
|
|
|
'''
|