Commit Graph

808 Commits (99a7522b03ab40ea88d99fc4c0777bd499d1a9e3)
 

Author SHA1 Message Date
Michael DeHaan 076f1bc169 Revert "Revert "Unify normal and sudo remote command execution. Breaks stderr/stdout handling"
This reverts commit 40f603539c.
13 years ago
Michael DeHaan 0d5bee2dfa Revert "Revert "Actually wait for password prompt in remote sudo execution. Totally breaks stderr debugging"
This reverts commit e16114034c.

Conflicts:

	lib/ansible/connection.py
13 years ago
Michael DeHaan 40f603539c Revert "Unify normal and sudo remote command execution. Breaks stderr/stdout handling
This reverts commit 44486223ed.
13 years ago
Michael DeHaan e16114034c Revert "Actually wait for password prompt in remote sudo execution. Totally breaks stderr debugging
and various modules.

This reverts commit 6341a9547f.
13 years ago
Michael DeHaan f939f3fdaf Playbook can now take a 'name' which it will show when starting the play 13 years ago
Michael DeHaan 67d1169674 fix code handling if module_vars is None 13 years ago
Michael DeHaan 803672a769 Update development changelog 13 years ago
Michael DeHaan aa8ae85070 Add playbook example for first_available_file 13 years ago
Michael DeHaan 3804910187 Some tweaks to first_available_file mostly in terms of error handling and not trying src= to be present
as it is not used here.
13 years ago
Michael DeHaan b56efa7809 Fix handling of list=status such that it will actually work in absense of the state command, to
make it useful from /usr/bin/ansible and the API.  Also some minor style fixes.
13 years ago
Michael DeHaan ea296e9edb Merge branch 'devel' of https://github.com/jkleint/ansible into jkleint-devel 13 years ago
Michael DeHaan 47ec93b32f Merge pull request #270 from skvidal/devel
first_if_available and yum fixes
13 years ago
Seth Vidal a3ab793ba8 fixes for yum module for rhel5 and issue 269 13 years ago
Seth Vidal c701e59592 very minor indentation issue in librar/copy 13 years ago
Seth Vidal 72fd971822 fall through file source list: first_available_file support
add first_available_file look up to _execute_template and _execute_copy
to runner.

add this data to playbook handler so it can be included into module_vars
13 years ago
John Kleint c6db4e8fa3 Get service module working with sudo, add list=status, better error messages.
When running the service module via sudo, `$PATH` didn't contain `/sbin`,
so the service binary couldn't be found.  This just runs `/sbin/service`
directly.  Output is spewed to stderr on error.

Added `list=status` to include the output of `service <cmd> status`.
13 years ago
Michael DeHaan 40f5469869 minor personal style preference on 'not' 13 years ago
Michael DeHaan bee0e8db5b Merge pull request #266 from RWJMurphy/devel
[devel] ansible-playbook hangs if not passed --extra-vars
13 years ago
Reed Murphy abf524405a shlex.split() tries to read from stdin if passed None 13 years ago
Michael DeHaan b9982fc17b Reinstate --extra-vars, which can do things in playbooks like:
ansible-playbook release-my-app.yml --extra-vars="version=123"

And make $version available in the playbook without re-editing the file
13 years ago
Michael DeHaan a0ac936a55 Merge pull request #249 from jhoekx/octal-file-mode
Return the octal mode of a file instead of decimal.
13 years ago
Michael DeHaan 5aa5a48f7f Merge pull request #250 from jkleint/devel
Service module crashes if args has no "=".
13 years ago
Michael DeHaan b6bdb22341 Merge pull request #251 from sfromm/selinux
Selinux -- more fun
13 years ago
Michael DeHaan 08b2f147e3 Merge pull request #252 from sfromm/facts
Use socket.getfqdn() to fix issue #243
13 years ago
Michael DeHaan a4b3b7a2cf Local connection doesn't need a port. 13 years ago
jkleint 6341a9547f Actually wait for password prompt in remote sudo execution.
When running on lots of hosts with a large login banner on a slow network, it was still possible that the first recv() didn't to pull in the sudo password prompt, and sudo would fail intermittently.  This patch tells sudo to use a specific, randomly-generated prompt and then reads until it finds that prompt (or times out).  Only then is the password sent.  It also catches `socket.timeout` and thunks it to a more useful `AnsbileError` with the output of sudo so if something goes wrong you can see what's up.
13 years ago
Stephen Fromm 7b41e22e56 Change to socket.getfqdn() for fqdn fact 13 years ago
Stephen Fromm 5be20f8748 Update file module selinux-awareness
This adds selinux_mls_enabled() and selinux_enabled() to detect a)
whether selinux is MLS aware (ie supports selevel) and b) whether
selinux is enabled.  If selinux is not enabled, all selinux operations
are punted on -- same as if python's selinux module were not available.
In set_context_if_different(), I now iterate over the current context
instead of the context argument.  Even if the system supports MLS, it
may not return the selevel from selinux.lgetfilecon().  Lastly, this
drops selinux_has_selevel() in lieu of the current approach.
13 years ago
jkleint 30ce430363 Service module crashes if args has no "=". 13 years ago
Jeroen Hoekx 3594d1ce80 Return the octal mode of a file instead of decimal. 13 years ago
Michael DeHaan 49c3ee9050 Merge pull request #247 from cocoy/devel
Do not override the value of user and hostname.
13 years ago
cocoy 1220a46e3a Bugfix for issue #245.
Do not override the value of user and hostname.
Get port and identityfile only.
13 years ago
Michael DeHaan 7773a62291 Development branch changelog update 13 years ago
Michael DeHaan 66869c39b0 changelog and readme 13 years ago
Michael DeHaan acc6c9a9a5 Merge pull request #238 from sfromm/selinux
Fix issue #227
13 years ago
Michael DeHaan d9ee5db15a Merge pull request #237 from jkleint/devel
Unify normal and sudo remote exeuction.
13 years ago
jkleint 44486223ed Unify normal and sudo remote command execution.
Commit SHA: 87b1cf45 that put temp files in `$HOME/.ansible` instead of `/home/<user>/.ansible` was producing a directory literally called `$HOME` (no expansion) with non-sudo remote execution.  I'll take the blame for this one, as `ParamikoConnection.exec_command()` was not using the shell for non-sudo commands.  This does sudo and non-sudo execution the same way, using the shell, so environment variables should get expanded.
13 years ago
Stephen Fromm 5c74a524b9 Fix for issue #227
Older versions of selinux, such as that deployed on rhel5, only return a
context of user:role:type instead of user:role:type:level.  This detects
whether the tuple has three elements (old-style) or four.  If the
old-style, it keeps the secontext list at three elements.
13 years ago
Michael DeHaan bb1d72f2b4 Merge pull request #235 from skvidal/devel
fix for issue #230 - handle template taking 3  args
13 years ago
Seth Vidal fa2aebc8a6 fix for issue #230 - handle template taking 3 args 13 years ago
Michael DeHaan 283b897a1f Merge pull request #233 from cocoy/devel
Bugfix for issue #229
13 years ago
cocoy 7a19a46e24 Bugfix for issue no. 229 13 years ago
Michael DeHaan 87b1cf45a4 Merge pull request #226 from cread/make-osx-tests-pass
Use the $HOME env var instead of hard coding /home/<username>
13 years ago
Michael DeHaan decc46ad17 Merge pull request #224 from jkleint/devel
Support YAML list of hosts in playbook.
13 years ago
jkleint 4e1bc43645 Support YAML lists of hosts in playbooks.
Reading the docs, I was a bit confused as to how to specify multiple hosts/groups in a playbook.  Being YAML, I assumed a normal YAML list would work:

    ---
    - hosts: [host1, host2]

But this crashes when inventory._matches() assumes hosts is a string.  This patch just checks if hosts is a list, and turns it into a string joined by ';'.
13 years ago
Michael DeHaan 2999b6b2c4 Merge pull request #223 from jkleint/devel
runner._chain_file_module() calls .get() on error string
13 years ago
Chris Read dbb4afff50 Use the /Users/cread env var instead of hard coding /home/<username> 13 years ago
jkleint b50c50748e _chain_file_module() calls .get() on error string
runner._return_from_module() normally returns a list (?) of `[str,bool,dict,str]`, but on error it returns `[str,bool,str,str]`.  runner._chain_file_module() then tries to call .get() on the third item (`data2`), which fails when it's a string.  This patch only accesses `data2` if the return value was `ok`.  It might be better to return consistent types in both cases, but I'm not sure where/how else the return value is used.
13 years ago
Michael DeHaan 90a8893418 Merge pull request #220 from skvidal/devel
handle issues when the hostlist is inadvertently set executable
13 years ago
Seth Vidal 730cc89c5b Merge branch 'devel' of git://github.com/ansible/ansible into devel
* 'devel' of git://github.com/ansible/ansible: (2 commits)
  Fix tests for facter and the ansible_facts API.
  ...
13 years ago