Commit Graph

173 Commits (256377166a70e110c27eb721e05d875ebcf74740)

Author SHA1 Message Date
Michael DeHaan 0669ce858a Refactored inventory to make it object oriented, need to make YAML format and executable script
format compatible with this still, and add some tests for INI-style groups of groups
and variables.
13 years ago
Rafal Lewczuk 3de61fb180 Fix: file module does not remove dangling symlinks 13 years ago
Michel Blanc a7e4da92db Fixes _find_binaries not using globals
_find_binaries now sets the right globals
Binaries are now properly populated (reverse path/binary for loops)
13 years ago
Michel Blanc 572868c9e1 Adds support for Ubuntu style update-rc.d
Checks if update-rc.d (Ubuntu) or chkconfig (RHEL) should be used.
Adds basic bin path search for those binaries
Adds 'enable' and 'disable' options for 'enable' command since it's the
arguments that update-rc.d uses (this might be somewhat confusing to
have a command line with 'enable=enable', but probably mkes sense for
Ubuntu users).
Allows use of mixed case for 'list' and 'state' commands.
13 years ago
Michael DeHaan 9ad4e7d149 Merge pull request #300 from sfromm/git
Updates for git module
13 years ago
Stephen Fromm f1b7149fcf Update how to set default selinux context for file
This removes the 'context' option and replaces it with checks for
'_default' value for seuser, serole, setype, or (maybe) selevel.
If '_default' is provided *and* there is a default context for the given
file, this will set the file context to the available default.
13 years ago
Stephen Fromm 887d293a3b Add git reset --hard support to git module
Resets working tree to what is in HEAD and discards any
uncommitted changes.
13 years ago
Stephen Fromm 40dbd9b3d7 Add exit_json and fail_json to git module
This adds exit_json() and fail_json() to git module.  It also sets
version to 'HEAD', if not provided.
13 years ago
Jeroen Hoekx 2c8fbdbd20 Group order in user module should not matter.
Groups are not necessarily returned in the defined order, especially when the user already existed before ansible started managing the system.
13 years ago
Michael DeHaan 594084bc9f Merge pull request #287 from dne/user-group-add-system
Add 'system' option for user and group modules
13 years ago
Michael DeHaan 27582ad313 Merge pull request #281 from dne/file-link-relative
File module fix for symlink from relative source path
13 years ago
Michael DeHaan dd380f67e6 Merge pull request #289 from skvidal/devel
service enable=on/off
13 years ago
Jeroen Hoekx d96763346f Make async wrapper kill the process it supervises.
It wasn't killing the job at all before.
Indentation was 3 spaces.
13 years ago
Seth Vidal dc30b01c87 new service module handles enable=on/off for chkconfigging it on 13 years ago
Daniel Néri a837009c5d Add 'system' option for user and group modules
Creates system accounts/groups; corresponds to the '-r' option for {user,group}add.

The option is only honored when users/groups are added, not when modified.
13 years ago
Daniel Néri 82d3fcfd53 File module fix for symlink from relative source path 13 years ago
Michael DeHaan 36e454c52f Because paramiko using a pty can't distinguish stderr and stdout, remove handling that
treated -D as a way to show stderr, and make sure modules don't include things on stderr.
Update docs and test module script to come into line.
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
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
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 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
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
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
cocoy 7a19a46e24 Bugfix for issue no. 229 13 years ago
Jeroen Hoekx d3d26d0cd6 Ohai and facter modules should not use the ansible_facts API. 13 years ago
Michael DeHaan 80e6d83660 Fix bug in library/file 13 years ago
Jeroen Hoekx 2dc9a563ef Allow modules to return facts.
If the module result contains "ansible_facts", that will be added to the setup
cache.
13 years ago
Daniel Néri d5f3760acc Add optional "default-release" argument for apt module
The value is passed to apt-get's "-t" option. Useful for installing backports, e.g.:

  ansible webservers -m apt -a "pkg=nginx state=latest default-release=squeeze-backports"
13 years ago
Stephen Fromm be58995278 Add context=default option to file module
This adjusts behavior of file module such that removal of se* option
does not revert the file's selinux context to the default.  In order to
go back to the default context according to the policy, you can use the
context=default option.
13 years ago
Daniel Néri ec4d5fa287 Add apt module support for installing/removing specific version of package
This uses standard APT syntax, e.g.:

    ansible webservers -m apt -a "pkg=nginx=1.1.19-1 state=installed"
13 years ago
Michael DeHaan c0c691089d Fix bug in src. Should not code this early :) 13 years ago
Michael DeHaan 7794493952 Don't try to expand path for None values 13 years ago
Michael DeHaan 445e48b991 Call os.path.expanduser in modules so things work as expected even when using ./hacking/test-module script 13 years ago
Michael DeHaan c6b8e1621d A better fix for slurp, expand path in the module. 13 years ago
Michael DeHaan 13ba31231e Fixup slurp module usage when not running as root, fix error handling path in slurp module. 13 years ago
Daniel Néri 626e8f3543 Fix two misspellings of the apt module's "fail_json" function 13 years ago
Michael DeHaan 4578b17213 Add missing file (slurp) used by templates in non-playbook mode. 13 years ago
Michael DeHaan 9cd492befe make all templating happen locally, so no jinja2 deps are ever required 13 years ago
Michael DeHaan f4132a0162 Merge pull request #160 from sfromm/facts
Facts
13 years ago
Stephen Fromm 28895f6615 Rename serange to selevel to be consistent with selinux docs 13 years ago
Stephen Fromm 0c38bb2fd0 Add native facts to library/setup
This collects various facts from the host so that it isn't necessary to
have facter or ohai installed.  It gets various platform/distribution
facts, information about the type of hardware, whether a virtual
environment and what type, assorted interface facts, and ssh host public
keys.  Most facts are flat.  The two exceptions are 'processor' and all
interface facts.  Interface facts are presented as:
    ansible_lo : {
        "macaddress": "00:00:00:00:00:00",
        "ipv4": { "address": "127.0.0.1", "netmask": "255.0.0.0" },
        "ipv6": [
                    { "address": "::1", "prefix": "128", "scope": "host" }
                ]
    }
13 years ago
Tim Bielawa c9ab5ebc6b Fix FSF address in virt header. 13 years ago
Jeroen Hoekx 9e0b7ee629 template: expand path if metadata is in user home. 13 years ago