Commit Graph

4713 Commits (039e4571b9de665d0e6eafb4e66c0c37272db383)

Author SHA1 Message Date
Michael DeHaan c000bd846b Hate to do this, but URI module docs were constructing messed up RST files, so removing examples for now. Will ask someone to work on them. 12 years ago
Michael DeHaan 5f829f9926 Add versionadded element to new option, fix YAML formatting 12 years ago
Michael DeHaan 369d586651 Merge pull request #2086 from lwade/devel
Adding a simple EC2 volume module for creation and attach
12 years ago
Michael DeHaan cb3d26c500 Merge pull request #2084 from johanwiren/zfs
Added zfs module
12 years ago
Michael DeHaan a01525bd30 Merge branch 'aix-fixes' of git://github.com/dagwieers/ansible into devel
Conflicts:
	library/setup

Tweak formatting.
12 years ago
Michael DeHaan df63f60b63 Tweak doc examples 12 years ago
Romeo Theriault 1232e498c4 fixed the documentation so it build properly 12 years ago
Romeo Theriault 2ecf3f9b94 moved module checking below module initialization 12 years ago
Romeo Theriault 27145fab7f uri module 12 years ago
James Martin 7129a9e355 Using "OtherLinux" in module_commons, cleander detection in setup. 12 years ago
James Martin 5646bc278b Support for amazon linux distribution facts. 12 years ago
Yves Dorfsman 83ce1b2dc5 Modified to follow Daniel Hokka Zakrisson's recommendations. 12 years ago
Yves Dorfsman 4de1b4e8a9 Added an insertbefore option. 12 years ago
Blair Zajac fa8e653011 Simplify and correct comparisons with None. 12 years ago
Michael DeHaan 2172201795 Merge pull request #2091 from davixx/sysctl2004
Solving bug : sysctl check_after failing on multi-value sysctl parameters
12 years ago
Michael DeHaan 21693b2d22 Merge pull request #2079 from huberteff/devel
Add NetBSD support for 'service' module, and add an example to 'lineinfile'
12 years ago
Michael DeHaan 7827db6996 Merge pull request #2078 from huberteff/e2158b661d250c04609e7faff4d8e67df9cb37e4
Add example for adding to sudoers file
12 years ago
Michael DeHaan 85c87e507e Slight docs tweak about thirsty mode on the copy module 12 years ago
Michael DeHaan b5f90ef054 Merge branch 'thirsty_copy' of git://github.com/bcoca/ansible into testing 12 years ago
Michael DeHaan 11c730c4ca Merge branch 'devel' of git://github.com/trendels/ansible into testing 12 years ago
Johan Wirén 75b52d745e Updated documentation. Works with ansible-doc 12 years ago
davixx 8bf0c8dc5c Solving bug https://github.com/ansible/ansible/issues/2004
Now handle positive integer value in virtual files if they are separated
by group of space characters where the count is unpredictable.
Thanks to romeotheriault for filing this bug.
12 years ago
Peter Sankauskas 6fd0316fa6 The default for install-recommends is actually Yes, not No, as is
visible on line 121
12 years ago
lwade 0a2a647831 Updated comments and closed code example. 12 years ago
lwade 8617b6df90 Adding a simple EC2 volume module for creation and attach 12 years ago
Johan Wirén 19c94d7380 Added zfs module 12 years ago
Mark Maas 6a89177a59 Added support for AIX 5.3 and 6.1
A collegue of mine has added basix AIX support to the setup, user and group modules.

We have tested this on AIX 5.3 and 6.1 and it works "as advertised"
12 years ago
Daniel Hokka Zakrisson 584fd7a261 Fix Python 2.6-isms in sysctl module 12 years ago
Hubert Feyrer 18d9fc581d Add support for NetBSD. Tested on NetBSD 6.0/i386. 12 years ago
Hubert Feyrer e2158b661d Add Linux-style path for sudoers file, to be consistent with other examples. 12 years ago
Hubert Feyrer d4b9de643b Add an example on how to *add* a %wheel line to sudo - tricky as it has
a colon, which needs some special attention.
12 years ago
Nigel Metheringham bd2bb0a297 Mac/FreeBSD Network Facts implementation
Uses a generic BSD Network class, which uses ifconfig and
parses crap out of it.  Modifies the Network __new__
implementation to search further down the subclass
tree
12 years ago
Michael DeHaan 81d426de2a Merge pull request #2066 from lorin/git-example
Add example of read-write git checkout via ssh
12 years ago
Lorin Hochstein 321175cdfa Add example of read-write git checkout via ssh 12 years ago
Daniel Hokka Zakrisson 85fb8494c5 Clean up device fact gathering
Remove lots of re use that really shouldn't have been re in the first
place. Initialize pcidata even if lspci is unavailable, and check for
its usability before trying to use it.

Fixes #2060.
12 years ago
Javier Candeira ae81e3607f fix remote execution NameError in module 'user' 12 years ago
Kavin Kankeshwar 3042366199 Fixing logical error in detecting virtual device.
So In my Centos 5.9 machine, if there is RAID mount ansible will crash, as it cannot find scheduler file. The reason being, this should be a virtual device as there is no "device" folder under e.g. /sys/block/md0/

Here is the crash:

[kk@u1 ansible]$ ansible q3 -m setup -k -u root --tree=/tmp/facts
SSH password:
q3 | FAILED => failed to parse: /sys/block/md0
Traceback (most recent call last):
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 1797, in ?
    main()
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 1050, in main
    data = run_setup(module)
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 1000, in run_setup
    facts = ansible_facts()
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 990, in ansible_facts
    facts.update(Hardware().populate())
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 312, in populate
    self.get_device_facts()
  File "/root/.ansible/tmp/ansible-1360629441.14-171498703486275/setup", line 439, in get_device_facts
    m = re.match(".*?(\[(.*)\])", scheduler)
  File "/usr/lib64/python2.4/sre.py", line 129, in match
    return _compile(pattern, flags).match(string)
TypeError: expected string or buffer
12 years ago
Michael DeHaan af3402fe35 Merge pull request #2043 from chrishoffman/rabbitmq
Rabbitmq Module Updates
12 years ago
Daniel Hokka Zakrisson 57cac788fb Fix setup when /sys/block is inaccessible 12 years ago
Daniel Hokka Zakrisson 5ba090c366 Fixes for Python 2.4 12 years ago
Chris Hoffman 507e49396b Updating how to run commands in check mode 12 years ago
Chris Hoffman ca3b8228f7 Updating how to run commands in check mode, standarizing quotes 12 years ago
Chris Hoffman 2c947c2ed6 Adding aliases 12 years ago
Chris Hoffman 114a4dc597 Standarizing quotes 12 years ago
Chris Hoffman 31e5e81fcd Standarizing module in line with other rabbitmq modules, adding support for setting tracing 12 years ago
Chris Hoffman b79d7a606c Using new qualified executable 12 years ago
Chris Hoffman c94ec20a16 Getting fully qualified path for executable 12 years ago
Chris Hoffman 5a4ff6ca60 Cleaning up tag compare, getting fully qualified path for executable 12 years ago
Michael DeHaan 6c4e1db54e Documentation formatting for mongodb_user so it will show up in ansible-doc and the web. 12 years ago
Michael DeHaan 3c51feb36c Had to remove the instance_tags example because our doc generator was choking on it, feel free to add it back if you can get it to be valid
YAML again :)
12 years ago
Michael DeHaan 27ff22610d Fix lineinfile docs formatting 12 years ago
Michael DeHaan 5c38248788 Fix crontab doc formatting 12 years ago
Michael DeHaan c91f8c1565 Merge pull request #2036 from cordmata/devel
Add rabbitmq_vhost module.
12 years ago
Matt Cordial 3284fd607f Add rabbitmq_vhost module.
Simply ensures existence or non-existence of a vhost.
12 years ago
Tim Gerla 0f389b311f Add more error handling to the ec2 module, remove Python 2.6ism 12 years ago
Michael DeHaan fa44f49afb Merge pull request #2034 from chrishoffman/rabbitmq
Adding rabbitmq modules
12 years ago
shlomozippel e44412101b Merge recursive file permission setting on directories 12 years ago
Chris Hoffman 6f7855161c Adding rabbitmq modules 12 years ago
Michael DeHaan 8db504fba8 Merge branch 'devel' of git://github.com/lwade/ansible into devel 12 years ago
Steve Frank 36027ddbba Squashed commit of the following:
Changed ami_tags to instance_tags to better follow naming convention
    Add support for creating tags on the new instances
12 years ago
Brian Coca 0e8627b7e8 added block device info gathering, full for linux, partial for freebsd added prettyfing byte function Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
moved moutns out of devices Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
12 years ago
Mike Grozak 171a01deac Cron module upgrades
- added cron_file attribute: if specified, the file with appropriate
job is created in /etc/cron.d directory. Also, you can store multiple
jobs in one file. state='absent' attribute is handled in the following
way in this case: if after the deletion of the job from the file specified
by cron_file variable the file is empty, the file is deleted, otherwise
not.
  - fixed the behaviour, when the backupfile is saved forever in /tmp
folder, even if the backup= atribute is not set (os.unlink() is called if
backup is not True).
  - added some comments to the unobvious places
12 years ago
Michael DeHaan aebacdb2d7 Merge pull request #1949 from elliotttf/devel
Adding mongodb_user module.
12 years ago
Michael DeHaan d102f04ffc Merge pull request #1942 from blair/pip-virtualenv-add-system-package-support
library/pip: add support for virtualenv's --system-site-packages.
12 years ago
Brian Coca 0726933a5a added thirsty option to copy
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
12 years ago
Michael DeHaan a9162a86f2 Very basic --diff option for showing what happens when templates change.
Probably output is not useful if not used with --limit

Works well with --check mode
12 years ago
Michael DeHaan 3d6993221e service status 4 should also be stopped 12 years ago
Stanis Trendelenburg 8f70883541 Handle 'groups=' (empty string) in user module (Linux)
Makes it possible to remove a user from all but the primary group.

Setting 'groups=' is the equivalent to passing '-G ""' to
useradd/usermod, which is interpreted as "no group" on Linux.
12 years ago
Michael DeHaan 9113c01e37 Merge pull request #1990 from roller/devel
Specify repo option with hg pull
12 years ago
Daniel Hokka Zakrisson 7a49230e85 Merge pull request #2005 from ftao/supervisorctl-update
always restart the program when state=restarted
12 years ago
ftao 9174c52b1d always restart the program when state=restarted 12 years ago
Daniel Hokka Zakrisson b0932e1638 Merge pull request #1999 from dorfsmay/pullreq-lineinfile
Clarification on how to use insertafter with a regex.
12 years ago
Remy ad7807fce4 Added DPKG options which lardcanoe suggested 12 years ago
Daniel Hokka Zakrisson dab31116b3 Actually add stdout data to stdout buffer for daemon mode 12 years ago
Yves Dorfsman 05a3876dc9 Clarification on how to use insertafter with a regex. 12 years ago
Blair Zajac 106fb10dab library/pip: add support for virtualenv's --system-site-packages. 12 years ago
Joel Roller ac716ac9ca Specify repo option with hg pull
Fixes #1989
12 years ago
Lester Wade 093a876a57 Added capability to enable CloudWatch monitoring when launching. 12 years ago
Remy 26310f411c Added check so that upgrade cannot be used with other options. 12 years ago
Michael DeHaan fed82c2188 This implements a basic --check mode which for now is only implemented on template & copy operations. More detail will be shared with the list
shortly.
12 years ago
Daniel Hokka Zakrisson 28cf95e585 Use module.get_bin_path for pkgin module instead of hardcoding paths 12 years ago
Remy fd59a03193 Added version flag (1.1) to updated
apt module.
12 years ago
Michael DeHaan dc5c430f45 Merge pull request #1970 from piffey/devel
Devel
12 years ago
Daniel Hokka Zakrisson c1e0f0b4db sysctl was added in 1.0
Fixes #1972.
12 years ago
Remy 31db1e31d4 Added apt-get upgrade and dist-upgrade option 12 years ago
Piffey Parlance 0f44ba5a5a * Minor removal of some dumb I did. 12 years ago
Piffey Parlance 39c8becfc8 * Added support for multi-line key files. 12 years ago
Michael DeHaan 42daffdb38 Merge pull request #1948 from yeukhon/devel
hg module cleaned up
12 years ago
Michael DeHaan 602656f02c Merge pull request #1961 from skvidal/yum-mod
Yum mod
12 years ago
Seth Vidal 808554dee6 use a local copy of repoq so we don't inadvertently pollute the one for is_installed 12 years ago
Seth Vidal 1c067845f2 don't apply enablerepo's to is_installed() to work around yum-utils/repoquery drift from all things
good and proper
12 years ago
Lorin Hochstein 4d38c68489 If ec2 fact has ':' or '-', change to '_'
Change ec2 fact names with colons (:) or dashes (:) to undescore (_)
so that they can be used in templates.

Note that this makes copies instead of replacing the exisitng fact
names to avoid breaking existing playbooks.
12 years ago
Seth Vidal 5c26805ee7 test the repos in enablerepo/disablerepo and error out if they are broken 12 years ago
Elliott Foster a1ea366957 Adding mongodb_user module. 12 years ago
Yeukhon Wong cc6fc149c2 Merge remote-tracking branch 'upstream/devel' into devel 12 years ago
Yeukhon Wong 980ffde192 Changes is now determined by simply comparing before,after and cleaned (purge and/or force). Doc is updated. 12 years ago
Yeukhon Wong ccc903216b Use %s instead of .format for string replacement. Revisied the documentation. 12 years ago
Yeukhon Wong 99a8e95c98 Rewrote hg module based on feedback.
1. state option is removed
2. force is hg update -C
3. purge is hg clean/hg purge but default to no
4. relies on hg abililty to handle errors
12 years ago
Daniel Hokka Zakrisson 0243b7be7c Fix get_url to work on Python 2.4 12 years ago
diefans 65d0eb9621 proper bin path now called 12 years ago
Yeukhon Wong 92fd1c6578 Merge remote-tracking branch 'upstream/devel' into devel
Conflicts:
	library/hg
12 years ago
Michael DeHaan 4d8f3b0924 This standardizes the apt_key module some
* improves error handling and reporting
* uses run_command to reduce code
* fails quicker on errors as opposed to return codes and tracebacks
* can now also specify the key as data versus needing to wget it from a file
12 years ago
Daniel Hokka Zakrisson 0bfec51a04 Remove last remnants of daisychaining 12 years ago
Daniel Hokka Zakrisson 133874a577 Fix module.run_command usage in fireball 12 years ago
Les Aker 819da94ced adjusted assemble to use new file attribute handling 12 years ago
Michael DeHaan 12403abc2c Merge pull request #1924 from blair/consistly-use-underscores
library/apt: consistently use underscores in examples.
12 years ago
Blair Zajac 811c711328 library/apt: consistently use underscores in examples.
To be consistent with the table showing available options, use
underscores in the example tasks, not hyphens, as the table doesn't
list hyphenated versions of option names, so it looks like the
examples could have typos in them.
12 years ago
Michael DeHaan b749af0b10 New changelog additions from today's merging 12 years ago
Michael DeHaan 25f52d79d1 Tweak sysctl docs so they'll web-render 12 years ago
Michael DeHaan e9d5cf3bc2 Fix documentation YAML for pkgin module 12 years ago
Michael DeHaan 970ae584c9 fix documentation formatting for get_url 12 years ago
Michael DeHaan 36066d8664 Fixup ec2_facts docs parsing 12 years ago
Michael DeHaan 5e4d29565c Standardize the hg command execution around our run command function. 12 years ago
Lester Wade 2da3a54e29 Update library/ec2
updated indentation and redundant comment.
12 years ago
Yeukhon Wong e5b64b2f74 Added hg module to the core. 12 years ago
Lester Wade de833b3ae0 Update library/ec2
bumping up min_count value.
12 years ago
Lester Wade b0ecfbb26d Update library/ec2
I've uncommented and added a very little supporting stuff based on skvidal's work to allow us to launch more than one instance.
12 years ago
igor 005f864068 minor doc changes 12 years ago
igor d683c2431e add support for user:password syntax in urls to get_url 12 years ago
Michael DeHaan 634d59c97f Merge pull request #1913 from jlitola/apt_key
Fixed apt_key's add_key stalling indefinitely, and test code leaking into production
12 years ago
Michael DeHaan c55a822c1e Merge pull request #1906 from szinck/devel
Add basic pkgin package management
12 years ago
Michael DeHaan e0b5c35033 Merge pull request #1891 from silviud/ec2_facts_module
ec2 facts module - registers to ansible_facts key
12 years ago
Yeukhon Wong 7b0a3c3f2d Added hg module to the core. 12 years ago
Lorin Hochstein c337b64e35 Git module: fix for relative paths
If a relative path is passed as an argument, this change first
converts it to an absolute path.

This fixes a bug where the git module would attempt to chdir into an
invalid directory because of multiple chdir calls against a relative
path.
12 years ago
Shaun Zinck b2aed1a4ba pkgin: add stdout to error message when shell commands fail 12 years ago
Shaun Zinck e9ca960558 pkgin: use module.run_command to run stuff
This also fixes an issue where some console output for packages I was
installing was creating invalid JSON because it contained single-quotes.
12 years ago
Daniel Hokka Zakrisson 6e0cb14ba5 Merge pull request #1911 from tgerla/devel
Port ec2 module to Boto
12 years ago
Juha Litola 2796603c92 Removed apt_key tests, as they didn't test the real functionality.
Tests used heavily mocked version of the apt_key code, which meant that
it didn't properly test real life scenario.
12 years ago
Daniel Hokka Zakrisson 9f6f15f770 Fix unparseable documentation strings
Fixes #1902.
12 years ago
Juha Litola 05f5b5b279 Fixed add_key stalling indefinitely, and test code leaking into production setting 12 years ago
Shaun Zinck e34eaa423d pkgin: change install/remove to not use return code of pkgin
pkgin always returns 0 so can't be used to tell if the install or remove
worked.  Instead this just queries the installed packages after
performing an operation.
12 years ago
Silviu Dicu 2a893ab0bb ec2 facts module - updated as per comments 12 years ago
Stephen Fromm e0741e7810 Update apt_repository to query if repo is already configured
This adds two dependencies to the apt_repository module:  apt and
apt_pkg.  These come from the package python-apt.  This is used to parse
the host's sources.list and examine whether the repo is already
configured.  This then eliminates the unnecessary
'add-apt-repository --remove' from running.
12 years ago
Shaun Zinck 4a9201ad65 add pkgin to list of package managers in setup 12 years ago
Shaun Zinck 2eedec777f added first version of pkgin, just does install, remove (for SmartOS) 12 years ago
Brendan Taylor f18446e7a5 service module 'state' parameter comments should be processed by RST 12 years ago
John Gosset 54ef6015f6 add pacman to list of package managers in setup module 12 years ago
Silviu Dicu ce9e9af6a3 ec2 facts moduled - updated 12 years ago
Tim Gerla cafb717b55 Fail gracefully if boto is not available and add me to the author line. 12 years ago
Tim Gerla 139aee58e2 use connect_ec2_endpoint instead of connect_euca, and properly pass keys to connect_ec2 12 years ago
Silviu Dicu 1ab9bfa7cc ec2 module - registers to ansible_facts key 12 years ago
Tim Gerla 456e6f5a55 library/ec2:
- use boto instead of euca2ools
- improve error handling/propagation for run failures
- rename keypair to key_name (and preserve alias for old playbooks)
- should be 100% backward compatible with the euca2ools version
12 years ago
Daniel Hokka Zakrisson d4c0180494 Make service module daemonize for all the broken "daemons" out there 12 years ago
Daniel Hokka Zakrisson 48f48e8a44 module must be passed to repolist too 12 years ago
Pepe Barbe 8b4bd2ec3e module needs to be passed to local_nvra 12 years ago
Michael DeHaan e7223760c4 Merge pull request #1810 from davixx/sysctl
new module: sysctl to handle sysctl entry
12 years ago
Michael DeHaan c66d3200f8 Merge pull request #1670 from Afterburn/devel
Pacman module
12 years ago
Michael DeHaan 1721357a49 Merge pull request #1824 from jvantuyl/apt-key-module
add apt_key module
12 years ago
Michael DeHaan fa953ba6b3 Merge pull request #1867 from c0rner/devel
get_service_status() is now using self.service_control() to check status
12 years ago
Rune Kaagaard 27ab2e55d3 Service mod.: Proper(?) handling of return code 69
This adds "69" to the return codes from the status command that should be
considered as not running. At least "django-celery" uses this return code,
maybe others::

    /venv/bin/python /code/project/manage.py celeryctl status
    echo $? # 69 when not running.

A bit of googling let me to http://tldp.org/LDP/abs/html/exitcodes.html and
on a Ubuntu Server 12.10 I get::

    ~# cat /usr/include/sysexits.h | grep 69
    #define EX_UNAVAILABLE	69	/* service unavailable */

I'm not sure if the content of sysexits.h is the same on other OS'es.
12 years ago
Jayson Vantuyl ad6373430b add apt_key module
Pretty straightforward.  Give it a URL with an exported GPG key for signing an
Apt repository.  It downloads it and will install it using apt-key.  It's even
smart enough to tell if it's already there (i.e. actually tells you if it
changed or not).
12 years ago
root 471ee0c90d get_service_status() is now using self.service_control() to check status
Fixes a bug where init-scripts were not used
12 years ago
Stephen Fromm 4eaee3df0a Various cleanup to run_command
* Rename fail_on_rc_non_zero to check_rc, much more succinct.
* Simplify method defintion
* Fix command module and drop shell=shell option; whether to use
  shell is determined by if args is a list.
12 years ago
Stephen Fromm 3fb21a5281 Update modules to use run_command in module_common.py
This updates apt, apt_repository, command, cron, easy_install, facter,
fireball, git, group, mount, ohai, pip, service, setup, subversion,
supervisorctl, svr4pkg, user, and yum to take advantage of run_command
in module_common.py.
12 years ago
Daniel Hokka Zakrisson a19a13ffa7 Add check for multiple keys in one invocation 12 years ago
Gert Goet f4dcb33ccc Prevent permission denied when cloning
Without read permission to the current working directory, git-clone will
fail:
root@host:~$ sudo -u git -H git clone \
  git://github.com/ansible/ansible.git /home/git/ansible
fatal: Could not change back to '/root': Permission denied

This commit ensures that the working directory is changed to the
parent-folder of the destination before doing the clone.
12 years ago
Michael DeHaan 1cbc9569b3 Merge pull request #1853 from jure/more_info_from_ec2
EC2 module should report back the public_dns_name too
12 years ago
Daniel Hokka Zakrisson 060266e291 Python 2.4 fixes for modules 12 years ago
Daniel Hokka Zakrisson 3bc6228b97 Handle unreadable /proc/xen/capabilities
Fixes #1854.
12 years ago
Jure Triglav 3f43ede70c Fix indentation 12 years ago
Jure Triglav 2ee05f0c96 EC2 module should report back the public_dns_name too. 12 years ago
Daniel Hokka Zakrisson b57b1f4cbe Correct name is login_user
Fixes #1848.
12 years ago
Daniel Hokka Zakrisson 4955587d8c Merge pull request #1798 from dagwieers/raw-executable
Allow to change executable (shell/interpreter) when using raw
12 years ago
Michael DeHaan 713ce4c0cf Merge pull request #1832 from legrostdg/devel
add encoding documentation in postgresql_db
12 years ago
Félix Sipma 0ba7cf58e9 add encoding documentation in postgresql_db 12 years ago
willthames 4e50478a05 Fix behaviour when file handles a path with tilde
Two problems here
* unchecked exception handling and erroneous assumption as to why
  an exception might fire
* although the file module expands the path, when using file_args
  the unexpanded path is passed.

Expected result: ~/path/to/file should work fine
Actual result: exception is because it doesn't find file with a message
about not being able to get the selinux context
12 years ago
Daniel Hokka Zakrisson 1fa83fa584 Merge pull request #1813 from legrostdg/devel
postgresql_db fails with owner containing a "-"
12 years ago
Félix Sipma 02f531c609 remove quotes in has_table_privilege and has_database_privilege 12 years ago
Daniel Hokka Zakrisson 451868630d Merge pull request #1817 from chrisberkhout/devel
git module documentation: removed incorrect use of term 'remote branch' ...
12 years ago
davixx 8efa62b0ea new module: sysctl to handle sysctl entry
sysctl now capable to search for sys entry into /sys if not under /proc/sys

module/sysctl rolling back to 0.5

write sysctl.conf safely, tempfile first, atomic replace after.
See comments in  https://github.com/ansible/ansible/pull/1810

Patch to replace .format with % () to handle python-2.4 ,
See also https://github.com/ansible/ansible/pull/1810

using name instead key for default arg name. key putted as alias.
also, val become an alias of value arg name.
See also : https://github.com/ansible/ansible/pull/1810
12 years ago
Félix Sipma 8a262c2b20 add documentation for "template" parameter in postgresql_db 12 years ago
Félix Sipma cd7fe9875c use double-quotes in postgresql commands (fix bug with "-") 12 years ago
willthames 411b2bf7d9 Added additional template variables
Added two additional template variables
* template_fullpath - absolute path to the template
* template_run_date - date that the template was rendered
Documented these additional variables in the module documentation
12 years ago
Chris Berkhout c01bc23f63 git module documentation: removed incorrect use of term 'remote branch' (should just be 'remote'). 12 years ago
Dag Wieers eb36ff45b9 Make script module use raw module so it does not require python 12 years ago
Dag Wieers 846161a1a4 Allow to change executable (shell/interpreter) when using raw
This patch adds an optional 'executable=' option to the raw command line to override the default shell (/bin/sh), much like the shell module does.
12 years ago
Michael DeHaan 3d3deb9797 Merge pull request #1795 from dagwieers/raw-enhanced
Add return code and error output to raw module
12 years ago
Dag Wieers 988db558b3 Add return code and error output to raw module
Since we use 'raw' heavily on equipment where 'command' and 'shell' are not (yet) working (and python may need to be installed first using raw) these improvements are necessary in order to write more complex scripts (with return code handling and separated stdout/stderr).

This change includes the following changes:

 - exec_command() now returns the return code of the command
 - _low_level_exec_command() now returns a dict, including 'rc', 'stdout' and 'stderr'
 - all users of the above interfaces have been improved to make use of the above changes
 - all connection plugins have been modified to return rc and stderr
 - fix the newline problem (stdout and stderr would have excess newlines)

In a future commit I intend to add assertions or error handling code to verify the return code in those places where it wasn't done. Since only the output was available, the return code was ignored, even though we expect them to be 0.
12 years ago
Jan-Piet Mens 85e0017a85 fix cron DOCUMENTATION 12 years ago
jkleint d732b25828 Clarify that lineinfile uses Python regexes. 12 years ago
Daniel Hokka Zakrisson eb57c9c430 Indicate the reboot option was added in 1.0
Fixes #1787.
12 years ago
Michael DeHaan 6fc6c37401 Merge pull request #1785 from TutoringAustralasia/devel
Add support for @reboot to cron module
12 years ago
Chelsea Robb 96e2805b31 Change check for date/time parts being set 12 years ago
Chelsea Robb 6a02e3d918 Added error message when reboot and extra params are passed, and added better boolean parsing on reboot 12 years ago
Chelsea Robb fc4ac70342 Add support for @reboot to cron module 12 years ago
Gregory Duchatelet 29f985aa2e do not conditionalize this for older Python, fix indentation, better use
of hash iteration.
12 years ago
Gregory Duchatelet e64de2ff88 Bugfix: in hosts with python-2.5, hash keys needs flatten string. 12 years ago
afterburn a6f01dcd6f version 1.0 eruption 12 years ago
afterburn 0bdd17ff3a updated description and examples 12 years ago
Daniel Hokka Zakrisson d4b1874d44 Merge pull request #1773 from jpmens/scriptdoc
fix and clarify 'script' docs
12 years ago
Jan-Piet Mens 4f8abd981a fix and clarify 'script' docs 12 years ago
Stephen Fromm ccca5fcd1c Ensure files created by authorized_key have correct selinux context
Three changes:
* Add set_default_selinux_context() to module_common that sets
  a file's context according to the defaults in the policy
* In atomic_replace(), set the default context for the file if
  selinux is enabled and the destination file does not exist.
* In authorized_key, set the default context when creating
  $HOME/.ssh and $HOME/.ssh/authorized_keys.  If these already
  exist, this won't touch them.
12 years ago
Michael DeHaan f2893b6418 Merge pull request #1746 from njharman/subversion
Subverion module improvements
12 years ago
Michael DeHaan 5d31e8d1fc Merge pull request #1752 from jpmens/mail2
mail module: add MIME attachments, port and addresses with phrases
12 years ago
Norman J. Harman Jr ddc0507f65 Passing in module instead of just fail_json per upstream request. 12 years ago
Michael DeHaan ea5d79a712 Merge pull request #1755 from lorin/patch-1
Fix ppa syntax in apt_repository module doc
12 years ago
Norman J. Harman Jr 19b84d0527 pip module improvements
- Do not silently ignore malformed pip requirements files.
- Properly reports changed when removing packages.
- "latest" i.e. --upgrade is *not* incompatible with requirements files.
- Less branchy, simpler logic.
- Removed pointless variable "initializations", Python doesn't need that.
  Other code simplifications.
- Fun fact; pip install is (kind of) case insensitive, pip freeze is not.
  So, 'sqlalchemy' will be reported as installed by install, but missing
  by freeze.

The perhaps controversial change and the one that led to finding /
fixing above issues...

Instead of adding command parameters 'index', and 'find', and 'mirrors',
and etc.  Added 'extra_args' which are passed onto pip.

The use case for --index-url is having a private pypi repo, like
http://pypi.python.org/pypi/localshop, to which you publish private
packages.  I'm sure most every pip option has a use case for someone.
extra_args handles all those. Can reserve ansible command parameters for
the most common.

Tested with pip 1.1.
12 years ago
Seth Vidal 165861dd2f if user has manually installed an intermediate version - don't ignore it: issue 1754 12 years ago
Jan-Piet Mens f9755ca36d mail module: add MIME attachments, port and addresses with phrases
Add HTML-escaping to code examples in rST tempate of module-formatter
 Add support for specifying port, addresses with phrases and attaching files
 Add support for custom headers and document version_added for new options
 X-Mailer header added :)
 protect empty address lists & attachment list, and add bcc
12 years ago
Lorin Hochstein f8821fa3d9 Fix ppa syntax in apt_repository module doc
The example for using a ppa had the wrong syntax.

Ironically, the correct syntax is illustrated in a comment on line 23.
12 years ago
Norman J. Harman Jr 2e6999dab9 Subverion module improvements
- Added username, password arguments.
  - Documented existing revision argument.
  - Corrected documentation/docstrings; removed git references, use svn
    nomenclature, etc.
  - Refactored duplicate code, redundant shell calls, filter abuse,
    inconsistent formating, etc.
  - Shell quoting so it doesn't break for one guy who has spaces in
    pathnames.
  - svn called with '--non-interactive' and '--no-auth-cache'.
12 years ago
Michael DeHaan 637883164e Merge pull request #1720 from bladypirat/devel
added support for scheduling downtime for all services on host
12 years ago
Alexandre Bourget 0b9cbcb270 supervisorctl: document the 'present' option 12 years ago
Dag Wieers ac2f396379 Fix "NameError: global name 'name' is not defined" exception 12 years ago
Daniel Hokka Zakrisson 11b64314df Select all fields from the user, as some of them are version-dependent 12 years ago
Stephen Fromm 1bcfdd94f3 Further refine remote branch tracking in b1ec6e8
Move operations that are dependant on a remote branch under a if
is_remote_branch() conditional.  While at it, remove assignment to cmd
string in same block that wasn't used when calling _run().
12 years ago
Stephen Fromm b1ec6e8163 Fix git module to update branch to latest when using version=<branch>
The git module would not pull in updates to a branch when
version=<branch>.  This updates that block to checkout the branch
and then do a git reset --hard <remote>/<branch>.  This
should now track updates to a branch.
12 years ago
Piotr Kweclich 9c20eb089b added support for scheduling downtime for all services on host 12 years ago
Stephen Fromm 5b7c8fcc38 Further tweak how to find pip in virtualenv on centos/redhat/fedora
In a virtualenv, pip is called just pip.  This fixes the pip module to
search for the virtualenv pip first before trying the pip-python and
python-pip variants.  Without this, pip module would not install to the
virtualenv when that parameter is provided.
12 years ago
Stephen Fromm e33e02950d Make use of mirrors in pip module configurable with use_mirrors option
Older versions of pip (anything less than 1.0?) do not support
--use-mirrors flag.  This makes it configurable.  Default is yes.
12 years ago
Daniel Hokka Zakrisson d5a456fbcf Merge pull request #1697 from bcoca/mint
Implements multiple interpreter overrides
12 years ago
Stephen Fromm d277953a53 Fix pip module to check if requirements already installed
This updates _is_package_installed() to accept a requirements file
as an argument.  This is used later in main() to check if python libs
specified in a requirements file are already installed.  I updated
main() to consolidate the handling of install/uninstall in a single
block.  This should help if someone wants to remove packages specified
by a requirements file.
12 years ago
Franck Cuny 3603676ca0 Alias name to pkg. 12 years ago
Franck Cuny c0729716c8 Add the `mirror` option and verify if a package is already installed.
By default, the cpanm client will use a default mirror to download
libraries, but it's possible for the end user to pass a different URL.

Since ansible favorite idempotence when possible, we verify if the
module is already installed before running the cpanm client.

Another minor additional change, the `notest` option is now a boolean.
12 years ago
Igor Galić 1ba5c5ae97 : doesn't work in this documentation. 12 years ago
Igor Galić e031054934 Fix subversion module's documentation
Let our users determine what they want to do with a given module.
Particularily when the mdoule doesn't pose any such restrictions.
12 years ago
Franck Cuny 22766906b0 Simple module to install Perl libraries via cpanm.
cpanm is a popular alternative to the CPAN client for installing Perl
libraries.  Unfortunately it can't uninstall already installed module, so it
can't handle states.
12 years ago
Brian Coca 8ef2807305 removed env as per project policy
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
12 years ago
Jan-Piet Mens 910f1c042e ini_file: prohibit section name 'default'
allow update of default section
add blurb re template to create base file
12 years ago
Patrik Lundin d4af9e4c5c Use shlex for rc.conf parsing.
This makes the line parsing a lot more robust (and easier to read).
Code supplied by @dhozac, thanks!

Remove re import because this is not used anywhere.
12 years ago
Patrik Lundin fde00327b0 Rework "enabled" implementation for FreeBSD.
When trying to perform enabled=yes followed by enabled=no
against FreeBSD the module would die with the following error:
TypeError: sub() takes at most 4 arguments (5 given)

The target FreeBSD client (8.2) is running python 2.6.6. It seems the
extra 'flags' argument was added to re.sub() in 2.7.

In fixing this issue I have attempted to create a general atomic method
for modifying a rc.conf file. Hopefully this will make it easier to add
other rc based platorms. The strip/split magic was inspired by the user
module.
12 years ago
Daniel Hokka Zakrisson 4679d8d6e5 Remove references to non-existant variable rc 12 years ago
Daniel Hokka Zakrisson 1ec2a59073 Merge pull request #1676 from dagwieers/service-action-fix
The vars stop/start were intended as strings
12 years ago
Dag Wieers 18b797f096 The vars stop/start were intended as strings
This is a typo that was reported on IRC, because of this people got: "NameError: global name 'stop' is not defined".
12 years ago
Ton Kersten 7bba04b176 Corrected for fallthrough 12 years ago
Ton Kersten ee4fe9ff55 Added pip-python to the search for CentOS 6 compatibility 12 years ago
afterburn 4192516582 fixed 12 years ago
Michael DeHaan ac09b47ec4 Merge pull request #1668 from eest/refactor_service_module
Repost: Refactor service module to use subclasses like user module.
12 years ago
Patrik Lundin 5b7aa494b2 Refactor module to use subclasses like user module.
* Basically the moving parts from the original service module arranged in
  subclasses.
* General structure and helper methods comes from the user module.
* Less forgiving to unsupported platforms: it requires a subclass per platform.
  (This makes it easier to work on one platform without having to think about.
  what other platform might be affected in unexpected ways).
* Now has basic OpenBSD support.
* Solaris support needs to be added.

Thanks to @dhozac for general advice and Linux testing.
Thanks to @bcoca for clearing up some FreeBSD questions.
12 years ago
Michael DeHaan ce487a8544 Merge pull request #1658 from jpmens/docs_2
module_formatter: re-instate code
12 years ago
Michael DeHaan 3981c72957 Streamline code 12 years ago
Michael DeHaan 17020d6a75 Merge pull request #1656 from dagwieers/setup-virtualization
Implemented more virtualization types
12 years ago
Jan-Piet Mens 3b83295581 DOCUMENTATION: yum (moved version to added) 12 years ago
Jan-Piet Mens 068ef0e979 module_formatter: re-instate code 12 years ago
Dag Wieers e528826dba Implemented more virtualization types
I added all known virtualization types from the virt-what project. However, the few virt types that rely on cpuid information have not been implemented lacking native python cpuid access. (hyperv)
12 years ago
Jan-Piet Mens caf003c813 DOCUMENTATION strings 12 years ago
Dag Wieers 118ccc68c9 Make the default an empty string
Seems a bit strange I have to set a default in two locations.
12 years ago
Michael DeHaan 663a8fef3f chmod -x for all module files in source checkout 12 years ago
Daniel Hokka Zakrisson b95bcf1b9d Use single-quotes to contain SSH keys as they may contain double-quotes
Fixes #1624.
12 years ago
Michael DeHaan 99a0ebcad0 Merge pull request #1642 from dagwieers/service-options
Allow adding additional arguments to service module
12 years ago
Dag Wieers 3852b9918a Allow adding additional arguments to service module
Some services allow additional arguments to be provided on the command line. This patch makes it possible.
12 years ago
Michael DeHaan bb2e5e12b8 Merge pull request #1638 from jpmens/ec2_userdata
Support for user_data in ec2 module
12 years ago
Michael DeHaan c9aef42ac4 Merge pull request #1636 from romeotheriault/add-sunos-subclass-to-group-mod
Add sunos subclass to group mod
12 years ago
Michael DeHaan e13d67bbf1 Merge pull request #1635 from romeotheriault/classify-group-module
convert group module to be platform sub-classable
12 years ago
Jan-Piet Mens e4606d500c Support for user_data in ec2 module
fix
12 years ago
Romeo Theriault bb976ddfe0 add solaris subclass to group module 12 years ago
Romeo Theriault a52faa841f convert group module to be platform sub-classable 12 years ago
Fabian Arrotin 269a0779b4 Added a requirement on euca2ools external package and ec2 url example 12 years ago
Michael DeHaan 0ab3bd0034 Fix for #1577 (python 2.4 compliance for mysql_user), tested only for syntax, please exercise MySQL fans! 12 years ago
Michael DeHaan 096607eea4 Allow fireball to transfer binary files, fixup fireball docs, make fetch work with fireball. 12 years ago
Michael DeHaan 613539810e Missing import 12 years ago
Romeo Theriault ae36fb1dc6 minor linux user module fixups 12 years ago
Michael DeHaan 001e2e564f Merge pull request #1590 from romeotheriault/minor-freebsd-user-module-fixes
minor freebsd user fixes
12 years ago
Michael DeHaan 80f196fdbc Merge pull request #1589 from romeotheriault/add-sunos-user-support
Add solaris support to user module
12 years ago
Romeo Theriault 6c6bcff4ee minor freebsd user fixes 12 years ago
Romeo Theriault 3bab27abdb Add solaris support to user module 12 years ago
Jan-Piet Mens e32f4a0564 Move get_docstring from module_formatter into ansible/utils 12 years ago
Yvan Cottyn e9a356bbde Fix exception catching for Python 2.4 12 years ago
Yvan Cottyn 37de471ab6 Fix exception catching for Python 2.4 12 years ago
Michael DeHaan 09cde86e83 Merge pull request #1571 from skvidal/ec2
add ec2 module
12 years ago
Seth Vidal e147ad4213 add add_host action plugin - add hosts to inventory during a playbook
run - lets act on those hosts in the next play
12 years ago
Seth Vidal 7e0cb4f052 add ec2 module 12 years ago
Dag Wieers 2fdb217be3 Documentation of svr4pkg module breaks 'make rpm'
Without this fix, generating documentation results in:

```
Traceback (most recent call last):
  File "hacking/module_formatter.py", line 376, in <module>
    main()
  File "hacking/module_formatter.py", line 365, in main
    text = template.render(doc)
  File "/usr/lib64/python2.6/site-packages/jinja2/environment.py", line 669, in render
    return self.environment.handle_exception(exc_info, True)
  File "hacking/templates/man.j2", line 20, in top-level template code
    {% for desc in v.description %}@{ desc | jpfunc }@{% endfor %}
  File "hacking/module_formatter.py", line 94, in man_ify
    t = _ITALIC.sub(r'\\fI' + r"\1" + r"\\fR", text)
TypeError: expected string or buffer
```
12 years ago
Michael DeHaan 03591e0fc8 Merge pull request #1551 from dagwieers/local_action-fail
Turn 'fail' and 'debug' modules into action_plugins
12 years ago
Michael DeHaan f3cbcecf53 Merge pull request #1563 from lllama/devel
Add an "executable" option to the command and shell modules
12 years ago
Michael DeHaan 03f4b0f923 Merge pull request #1560 from dagwieers/module-output-consistency
Make module output more consistent wrt. changed/failed
12 years ago
Michael DeHaan cbff02139f Merge pull request #1557 from sfromm/issue1412
Updates to git module: use git-fetch and other changes
12 years ago
Michael DeHaan 42375d14b3 Merge pull request #1556 from sfromm/issue1099
Wrap getpwnam in try/except in authorized_key module
12 years ago
Boyd Adamson 528a457848 Add svr4pkg module for traditional Solaris packages 12 years ago
Felix Ingram e0f0e8c023 Add an "executable" option to the command and shell modules
The option will be passed to the Popen object created and will be used to
execute the command instead of the default shell.
12 years ago
Dag Wieers fe0c70fe9d Make module output more consistent wrt. changed/failed
- Make sure exit_json() always returns a changed= value
- Modify the yum module to not return failed=False
- Modify install() and latest() similar to remove() in yum module
- Changed exit_json(failed=True, **res) into a fail_json(**res)
- Make sure yum rc= value reflects loop (similar to how we fixed remove())
12 years ago
Stephen Fromm 3ec64d19a8 Wrap getpwnam in try/except in authorized_key module
This also adds module as an argument to keyfile().
12 years ago
Stephen Fromm 6aa51a7cf3 Rewrite switch_version() to detect branch
Rewrote switch_version() to read .git/HEAD to find branch associated
with HEAD.  If in a detached HEAD state, will read
.git/refs/remotes/<remote>/HEAD.
12 years ago
Dag Wieers d8459425a0 Turn 'fail' and 'debug' modules into action_plugins
This makes more sense as there is no purpose in running these remotely.
12 years ago
Michael DeHaan 612aed55bb Merge pull request #1546 from dagwieers/get_url-nonthirsty-fix
Don't require thirsty mode for directory destination
12 years ago
Stephen Fromm 49d41da152 Use supplied remote name when cloning git repository 12 years ago
Stephen Fromm 328951ef53 Checkout branch before rebase in switch_version 12 years ago
Stephen Fromm ccc04cf891 More work in git module
Rename pull() to fetch().  It does a git fetch and then a
git fetch --tags.
Add _run() method to handle all subprocess.Popen calls.  Change
all previous calls to subprocess.Popen to use _run().
12 years ago
Brian Coca 5ea260f44b fix case in which file is created and backup is requested but fails, not it just doesn't attempt to backup the missing file
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Dag Wieers 82ec405b05 Don't require thirsty mode for directory destination
There is no need to require thirsty mode when the destination is a directory. We add the basename of the url to the destination directory and proceed with that. If that file exists in non-thirsty mode continue as expected.

I also cleaned up some of the logic that is no longer necessary if we simply rewrite the destination from the very start the way it is expected.
12 years ago
Fabian Arrotin 29882f97e6 Fixed the way dom0/domU xen role is defined in the setup module 12 years ago
Stephen Fromm 2fab846f17 Fix to user module to use self when calling group_exists 12 years ago
Daniel Hokka Zakrisson cf290a0064 Keep fireball from spreading its socket around 12 years ago
Nigel Metheringham f905e751ac FreeBSD user mod only fires when there are changes
Also fix missing -G on groups change
12 years ago
Nigel Metheringham 1ab1c8d374 Take SHADOWFILE from existing user object rather than class 12 years ago
Nigel Metheringham 75a2b2ba2d Use the existing framework when running ssh_keygen 12 years ago
Nigel Metheringham 19402a47cd Ensure user owns their ssh key directory on creation
Lost section from commit 8049777
12 years ago
Michael DeHaan 6f938c9f4c Merge branch 'playbook_ssh_ask_pass' of git://github.com/clatour/ansible into devel
Conflicts:
	examples/ansible.cfg

+ doc tweak
12 years ago
Michael DeHaan d639844923 Merge branch 'service_bsd' of git://github.com/bcoca/ansible into devel 12 years ago
Michael DeHaan 970d06e03b Fix user example 12 years ago
Michael DeHaan 626203a7c9 Module documentation should have options sorted 12 years ago
Michael DeHaan c96f2c968e Merge branch 'nigelm_freebsd' of git://github.com/nigelm/ansible into merge-service
Make things more reusable, correct some errors along the SSH key path

Conflicts:
	library/user
12 years ago
Nigel Metheringham cdfa81d905 Added some documentation to the classes 12 years ago
Daniel Hokka Zakrisson 20775c0b73 Fix service module for varnish initscript in EPEL
It outputs 'dead but pid file exists'.
12 years ago
Brian Coca 13f75e5a8e Now can handle rc.conf and init.d/rc.d based systems
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Dag Wieers 9268aa0289 Use return codes > 255 for Ansible-specific errors.
I had made and pushed this change after you already pulled the request.

@dhozac indicated that it would probably be better to use return codes > 255 for anything related to Ansible itself. Which makes sens :)
12 years ago
Michael DeHaan c0747b7baa pep8 fixes 12 years ago
Michael DeHaan 27e518a0b1 Rename 'domainname' to 'domain' 12 years ago
Michael DeHaan 9251709941 Merge pull request #1490 from sfromm/issue1484
Make sure ownership is set correctly for user's new ssh keys
12 years ago
Michael DeHaan 768d293949 Merge pull request #1488 from dagwieers/lineinfile-create
Add option create= to lineinfile module
12 years ago
Michael DeHaan 91cf257e9c Merge pull request #1487 from skvidal/devel
fix up remove and fix fixme checking to see if pkg was removed
12 years ago
Michael DeHaan 0853ece810 Merge pull request #1474 from jhoekx/group-by-plugin-template
Add a group_by action plugin.
12 years ago
Serge van Ginderachter 1db563e064 Add domainname to ansible facts 12 years ago
Serge van Ginderachter 47d882f374 Fix typo 12 years ago
Dag Wieers 1e3dcfce4b Add option create= to lineinfile module
We use the lineinfile module to modify configuration files of a proprietary application. This application reads configuration options from files, but does not require those files to exist (if the default options are fine). However this application may modify the configuration file at will, so we cannot copy or template those files. And after a silent install the configuration may not exist (depending on the response file).

Whatever the case, during deployment we need to make sure some configuration options are set after the installation.

So the cleanest way to handle this situation is to allow the lineinfile module to create the file if it is missing (and this is the expected behavior). When I proposed this behavior, @sergevanginderachter needed the same functionality and was now working around it as well.
12 years ago
Stephen Fromm 4619e99443 Make sure ownership is set correctly for user's new ssh keys 12 years ago
Michael DeHaan f0000a89b0 Merge pull request #1480 from dagwieers/command-fix2
Use return codes > 255 for Ansible-specific errors.
12 years ago
Michael DeHaan 730031ec1f Merge pull request #1479 from wzzrd/selinux
More useful error message for if not HAVE_SELINUX
12 years ago
Dag Wieers 8d4f9febd8 Use return codes > 255 for Ansible-specific errors.
I had made and pushed this change after you already pulled the request.

@dhozac indicated that it would probably be better to use return codes > 255 for anything related to Ansible itself. Which makes sens :)
12 years ago
Seth Vidal 49dce05cdd fix up remove and fix fixme checking to see if pkg was removed 12 years ago
Nigel Metheringham 9a2545957f Turn off some of the additional debug syslogging 12 years ago
Nigel Metheringham 3e0e572cce Rework of user module to support portability
Split module into a main calling function, and a generic
(Linux useradd/usermod/userdel) User class.
Added a __new__ function that selects most appropriate superclass
Added a FreeBSD User class
Tested against FreeBSD 9.0
12 years ago
Seth Vidal 7c1e0de141 fix removal case where first pkg in a list is not installed at all
and the next one gets ignored despite being installed.

also clean up unnecessary second check.
12 years ago
Maxim Burgerhout 82cc382c6a More useful error message for if not HAVE_SELINUX 12 years ago
Jeroen Hoekx b336d40101 Add a group_by action plugin. 12 years ago
Dag Wieers 63fa33b0b7 Make sure we always return 'rc' from the command module
If this is not a certainty, playbooks will fail without an 'rc' and checking both if there is an rc, and whether the 'rc' is (not) 0 is very complicated. (especially because ${something.rc} will not be substituted and all that)
12 years ago
Daniel Hokka Zakrisson 7a8009f979 When atomically replacing files, copy attributes 12 years ago
Michael DeHaan 523f2bf327 Merge pull request #1455 from bleader/devel
user module: fix typo in documentation
12 years ago
Michael DeHaan cbcc133cdd Merge pull request #1453 from sfromm/issue1211
Use shutil.copyfile so as to preserve file ownership in authorized_keys
12 years ago
Michael DeHaan 5b36e374d7 Merge pull request #1451 from dhozac/command-strip-newlines
Only strip trailing newlines from output, preserving other space
12 years ago
Michael DeHaan 06fa3e820d Merge pull request #1448 from jpmens/user_user1
User is alias for name in 'user' module
12 years ago
bleader 5a5751d1d0 user module: fix typo in documentation
tyep -> type

Signed-off-by: bleader <bleader@ratonland.org>
12 years ago
Stephen Fromm a033ad4d74 Use shutil.copyfile so as to preserve file ownership in authorized_keys 12 years ago
Daniel Hokka Zakrisson 73cd3ef617 Only strip trailing newlines from output, preserving other space 12 years ago
Jan-Piet Mens 89f28a98dd User is alias for name in 'user' module 12 years ago
Michael DeHaan 895715b65b Merge pull request #1445 from sfromm/issue1439
Skip check of primary group when checking other group membership
12 years ago
Stephen Fromm 544dc76704 Create temp file in directory where ssh key lives 12 years ago
Stephen Fromm b2e94e53fc Write keys file to temp location to avoid potential corruption 12 years ago
Stephen Fromm e97916cfc1 Skip check of primary group when checking other group membership 12 years ago
Michael DeHaan f2a7ca9a36 Merge pull request #1435 from stijnopheide/mysql-grant
Mysql grant, take 2
12 years ago
Michael DeHaan 3e491513a9 Merge pull request #1432 from skvidal/devel
yum enablerepo/disablerepo option complete
12 years ago
Dag Wieers f4c4537327 Resolve traceback when python-selinux is not installed 12 years ago
Seth Vidal 0a153c6798 add comments that enablerepo/disablerepo are new in 0.9 12 years ago
Stijn Opheide 733693ffdc - removed space escapes from MySQL SHOW GRANTS regex
- proper checking for with grant option (if this is not the only option the user has)
- added revoking of grant option
12 years ago
Stijn Opheide 6b92b69fe6 added the GRANT privilege for a mysql user (WITH GRANT OPTION) 12 years ago
Jan-Piet Mens 82955606c4 fix DOCUMENTATION for user 12 years ago
Seth Vidal d8337dab06 tested and verified yum enable/disablerepo option for yum module 12 years ago
Seth Vidal d89d07550f first cut at yum module with enable/disable repo 12 years ago
Michael DeHaan 9626111d5b Merge pull request #1427 from bleader/devel
mount: update example with mandatory option
12 years ago
Stephen Fromm 5d8c130a7f Document ssh_key options are in version 0.9 12 years ago
bleader e16e3fb4ca mount: update example with mandatory option
- 'state' is required, but wasn't in example

Signed-off-by: bleader <bleader@ratonland.org>
12 years ago
Jan-Piet Mens feab57e270 Reformat code: examples consistently
- added terse syntax to modules.rst
 - added description of special variables to template module
12 years ago
Stephen Fromm 769bd9125a Help git module work when working in 'no branch' scenario
Detect when on a 'no branch' branch.  If so, checkout the HEAD branch
as reported by 'git remote show <remote>'.  That should put the repo
back on a branch such that git can then merge changes as necessary.
In addition, removed hard-coded references to origin and replaced
with remote var.
12 years ago
Michael DeHaan cbc12f0dba Various performance streamlining and making the file features usable in all modules without daisy chaining. 12 years ago
Michael DeHaan 4104478abd Added 'script', a module that can push and insantly run a remote script. Replaces the need to copy+command.
This is a bit of a rough draft, some error handling still needs to be added.
12 years ago
Michael DeHaan 6b8448051f Merge pull request #1389 from sfromm/issue1214
Add ability to create SSH key for user in user module
12 years ago
Michael DeHaan 3c739b1a88 Merge pull request #1339 from inertialbit/add-basic-pg-role-attribute-support
add role_attr_flags parameter to postgresql_user
12 years ago
Stephen Fromm 87954f2110 Use os.path.join where appropriate 12 years ago
Stephen Fromm 63ba441163 Add ability to create SSH key for user in user module
This allows one to create a SSH key for user.  You may define:
ssh_key_type, ssh_key_bits, ssh_key_file, ssh_key_comment,
and ssh_key_passphrase.  If no passphrase is provided, the
key will be passphrase-less.  This will not overwrite an existing key.
In the JSON returned, it will provide the ssh_fingerprint and
ssh_key_file.
12 years ago
Michael DeHaan 68cf9a96fc Merge pull request #1388 from goozbach/selinux_bugs
make policy only be required if state is not disabled
12 years ago
Derek Carter 99180e7da3 make policy only be required if state is not disabled 12 years ago
Seth Vidal 326b160241 when a pkg is installed, but not from any repo, don't error out
that it is not installed.

Also when a pkg is both installed and in a repo do not look it up
more than once
12 years ago
Michael DeHaan d58bc4da4e Merge pull request #1361 from lantins/devel
Copy module can replace symlink with a real file.
12 years ago
Michael DeHaan 05866bba1e Merge pull request #1372 from jpmens/rst_template1
module_formatter: .rst now correctly handles code examples
12 years ago
Jonathan Palley 702469f7bf symlink fix 12 years ago
Jan-Piet Mens 575459465e module_formatter: .rst now correctly handles code examples
- fixed template (it was the template), adding indentation with Jinja2
 - added description of code examples to man-page template (was missing)
 - fixed fireball, cron, and debug module examples to confrom
12 years ago
Luke Antins 0dbd3aa821 Add examples to user module documentation. 12 years ago
Luke Antins 4f17aa9fa0 Fix indent of fail module example to prevent unwanted `<blockquote></pre></p> <br/></blockquote>` from showing up in docsite output. 12 years ago
Luke Antins 7d41045b2f Erroneous space in facter documentation. 12 years ago
Luke Antins 6354898b09 Copy module can replace symlink with a real file. 12 years ago
Michael DeHaan 54257a6a4c Remove "the the" 12 years ago
Michael DeHaan edb7a054ae Merge pull request #1349 from bcoca/fix_bsd_dmesg_jails
fixed but in pulling data from dmesg command, wrong function to use as f...
12 years ago
Brian Coca 620aeeb572 fixed but in pulling data from dmesg command, wrong function to use as file for for loop
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Michael DeHaan 5bb8dcea08 Fix help text 12 years ago
Michael DeHaan 6f14e35c36 Merge pull request #1335 from phgrau/devel
Use && for executing next command if, and only if, command1 returns an e...
12 years ago
Michael DeHaan 7583704144 "force=" code under the file module is problematic, remove it 12 years ago
Jan-Piet Mens e35d5188f9 typo 12 years ago
Jeremiah Heller 37bdefae74 add role_attr_flags parameter to postgresql_user
Pass role_attr_flags a list of comma separated role
attributes when creating or updating a user.
12 years ago
Philipp Grau 4290a904ff Add note: Debian Squeeze has no add-apt-repository 12 years ago
Maxim Burgerhout 2f6b9e69a7 Test for python-pip as well as pip
On Red Hat, CentOS and Fedora systems, the pip binary will be called python-pip
instead of pip. This commit makes the pip module also check for python-pip.

The reason we check for python-pip *first*, is to have ansible fail on not
finding 'pip' and reporting *that*. This is consistent with current behaviour
and will not confuse users of Debian et al., where the 'python-pip' binary
never exists.

Tested on Fedora 18 and Ubuntu 12.04.
12 years ago
Tim Bielawa 8831e59700 The pause 'prompt' parameter now requires quotes around the message. 12 years ago
Michael DeHaan 8dadf8a905 Use 'path' in file documentation, though src/dest work, it's less intuitive. 12 years ago
Michael DeHaan 2c90298841 Merge pull request #1314 from apenney/bugfix/git
Check rc instead of parsing for errors.
12 years ago
Michael DeHaan c5d2f6b0d3 implement lookup plugins for arbitrary enumeration over arbitrary things. See the mailing list for some cool examples. 12 years ago
Michael DeHaan 29d49d415f fix mentioning of redundant aliases in module docs, remove was removed anyway 12 years ago
Michael DeHaan 621708e976 user module should be using module.BOOLEANS for choices 12 years ago
Michael DeHaan aa98c84a62 HP and vsphere modules are crazy awesome but I am thinking these belong in contrib not core. 12 years ago
Brian Coca 6886683e16 small patch to fact gathering for when no dmesg.boot exists on freebsd, mainly happens in jails
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Michael DeHaan 35163bce96 Merge pull request #1310 from dagwieers/hpilo_boot-cleanup
hpilo_boot: Various clean ups in documentation and code
12 years ago
Michael DeHaan b1ccda00f8 Merge pull request #1311 from dagwieers/hpilo_facts-cleanup
hpilo_facts: Various clean ups in documentation and code
12 years ago
Michael DeHaan 1487b6a1bb Merge pull request #1313 from dagwieers/vsphere_facts-cleanup
vsphere_facts: Various cleanups in documentation
12 years ago
Michael DeHaan a82522a5c4 Merge pull request #1317 from abondis/fix_mysql_db
fix issue with mysql authentication and states not dump or import
12 years ago
Michael DeHaan 20a7227056 Merge pull request #1318 from dsummersl/cron24
fixed cron library so backups are python2.4 compatible
12 years ago
Jeroen Hoekx 25e415c031 Add virt_boot module to define libvirt boot parameters. 12 years ago
Dane Summers 7399224428 fixed cron library so backups are python2.4 compatible 12 years ago
Aurélien Bondis 1f91a70310 fix issue with mysql authentication and states not dump or import 12 years ago
Ashley Penney f4484f800b Further cleanup to add another rc check and remove a now redundent one. 12 years ago
Ashley Penney 6042419624 Check rc instead of parsing for errors. This now catches the case where the remote branch has been deleted and you're still trying to pull against it. 12 years ago
Dag Wieers 5927373c26 Various clean ups in documentation and code
This commit improves the following items:
 - Remove the 'match' functionality, this can now be achieve by using the `fail` module together with `only_if` after running the `hpilo_facts` module. Since this gives more functionality, e.g. comparing server names, but also serial numbers or uuids with other inventory information, this is prefered. An example is added to show how this is achieved.
 - Clean up all C() calls in documentation
 - Added state=poweroff in order to power off a server. The use-case is here that in general we do not want to provision systems that are already running (this enforcement can be disabled using force=yes) but for test systems we should be able to power them off so we can start the normal provisioning process. (We could also force boot them, but that's less elegant)
 - The module now correctly indicates when something has changed. So if a server is powered off that was not off already, this is indicated, or when media boot-settings have been changed, this is also correctly indicated. Previously every call to hpilo_boot was (incorrectly) considered a change.
12 years ago
Dag Wieers 5fe8205d36 vsphere_facts: Various cleanups in documentation
This commit improves the following items:
 - Clean up all C() calls in documentation
 - Reindent the documentation
12 years ago
Dag Wieers 5612cce4a4 hpilo_facts: Various clean ups in documentation and code
This commit improves the following items:
 - Remove the 'match' functionality, this can now be achieve by using the `fail` module together with `only_if` after running the `hpilo_facts` module. Since this gives more functionality, e.g. comparing server names, but also serial numbers or uuids with other inventory information **and** a proper message, this is prefered. An example is added to show how this is achieved.
 - Clean up all C() calls in documentation
 - Remove trailing spaces in HP iLO's Serial Number output so that they can be compared to CMDB or other inventory information
12 years ago
Michael DeHaan dfaef8061a Merge pull request #1289 from abondis/mysql_migration
mysql_db: connection test, dump/import state
12 years ago
Dag Wieers dfdf4ab8eb Damn you, colons... 12 years ago
Aurélien Bondis 1a51af0e38 mysql_db: use the database to test connexion, added dump and import state - requires target=path/to/a/file 12 years ago
Michael DeHaan e74b9e1d34 Add .gitdir 12 years ago
Michael DeHaan e593c828b4 Merge remote branch 'dagwieers/module-mail' into devel 12 years ago
Michael DeHaan 7788dea238 Merge pull request #1268 from dagwieers/hpilo-reboot-fix
Workaround for when HP iLO is in a state it won't accept requests
12 years ago
Michael DeHaan f1dfddc5e5 Fix typo in autogenerated docs 12 years ago
Dag Wieers 2f74cd84bd Module mail to send out emails as an action
Sending mails could be part of the workflow to have teams/responsibles perform specific task. Or simply to notify that a process has finished successfully (e.g. provisioning).
12 years ago
Dag Wieers 790ed81b14 Workaround for when HP iLO is in a state it won't accept requests
This workaround is recommended from HP iLO's documentation, but may not be sufficient in all cases. Time will tell.

I also made a few cosmetic changes with no impact.
12 years ago
Michael DeHaan 06688efb24 Merge pull request #1263 from dagwieers/hpilo_facts-fix
Sigh, another retypo
12 years ago
Dag Wieers 98624cb394 Fixes to documentation 12 years ago
Dag Wieers 3f149e09bc Sigh, another retypo problem 12 years ago
Michael DeHaan 612561ad0e Merge pull request #1250 from dagwieers/hpilo_boot-fixes
Various small fixes to boolean usage and defaults
12 years ago
Michael DeHaan 62a56a219b Merge pull request #1243 from dsummersl/squash2-cron
cron feature (w/o tests)
12 years ago
Michael DeHaan 1b36446ab3 Merge pull request #1255 from dagwieers/module-namespace
Add this module's namespace to the 'module_' namespace.
12 years ago
Tim Bielawa 1e35ac7603 Fix typo in service module docs 12 years ago
Dane Summers c3a6e8dfd6 added new documentation string to cron library 12 years ago
Dag Wieers b39aed8736 Add this module's namespace to the 'module_' namespace.
Much like we currently have *setup* register the variable `module_setup`, we would like other facts-modules register their own namespace. This means that:

 - *network_facts* registers `module_network`
 - *hpilo_facts* registers `module_hw`
 - *vsphere_facts* registers `module_hw`

In retrospect, it would have made more sense to have `setup` register `module_ansible` instead as the setup module uses the `ansible_` namesepace.

Having the `module_` namespace allows us to check whether a certain namespace has already been loaded so we can avoid running the facts module a second time using only_if.

```yaml
 - action: network_facts host=${ansible_hostname_short}
   only_if: is_unset('$module_network')
```
12 years ago
Dag Wieers 5503cfaa44 Various small fixes to boolean usage, using module.params.get and default values 12 years ago
Michael DeHaan c8854a23ea Merge pull request #1251 from dagwieers/hpilo_facts-fixes
Fix typo/cosmetic change
12 years ago
Dag Wieers 250f52bfba Add an alias 'name=' for guest
This is the opposite as library/virt, but much better than using name= as the default option name.
12 years ago
Dag Wieers 8c5a146013 Fix typo/cosmetic change 12 years ago
Michael DeHaan c5d7ef3d7f Merge pull request #1249 from dagwieers/module-hpilo_boot
Module hpilo_boot to boot from specific media using an HP iLO interface
12 years ago
Dag Wieers b58228a73b Module hpilo_boot to boot from specific media using an HP iLO interface
This module allows to boot a system through HP iLO and can be used to start the provisioning process.
12 years ago
Michael DeHaan 323cbdafb7 Merge pull request #1240 from jpmens/hpdoc
fix examples in hpilo_facts DOCUMENTATION
12 years ago
Dane Summers 3d65d6159f cron feature (w/o tests) 12 years ago
Michael DeHaan a1c23af6fc Merge pull request #1239 from jpmens/shelldoc
fix wording of shell documentation
12 years ago
Jan-Piet Mens 91dc8bc136 fix examples in hpilo_facts DOCUMENTATION 12 years ago
Jan-Piet Mens 70907f574e fix wording of shell documentation 12 years ago
Dag Wieers 70b063ce0e Use the standard 'dest' option for target files, make 'name' an alias 12 years ago
Michael DeHaan f470ebe6b7 Merge pull request #1213 from dagwieers/debug-module
Module debug to assist users in understanding Ansible
12 years ago
Michael DeHaan a95bff0f5f Merge pull request #1230 from dagwieers/module-vsphere_facts
Module vsphere_facts to add facts from a VMWare vSphere guest
12 years ago
Michael DeHaan 5d7ab8a300 Merge pull request #1231 from dagwieers/fail-doc-fix
This hopefully fixes the documentation for the fail module
12 years ago
Dag Wieers 8c8552ac32 Module vsphere_facts to add facts from a VMWare vSphere guest
This module gathers facts from a VMWare vSphere guest by querying vSphere. The facts include OS, network info (vlan, macaddress) and system info (cpu, memory, uuid) information. Useful information for provisioning and management.
12 years ago
Dag Wieers e07674d756 Module hpilo_facts to add facts from HP iLO interfaces
This module gathers facts from the hardware interface by querying HP iLO. The facts include network info (vlan, macaddress) and system info (cpu, memory, uuid) information. Useful information for provisioning and management.

This module was previously named ilo_facts and mentioned in #1080, #1085, #1125 and #1217.
12 years ago
Dag Wieers 3d5c4df2ac This hopefully fixes the documentation for the fail module 12 years ago
Dag Wieers 03af450bdc Module to assist users in understanding Ansible
After helping someone on IRC he was interested to have this debug module in upstream. This module simply 'prints' a message, and can be ordered to fail if needed. It helps to troubleshoot or understand inventory/facts issues and/or experiment with statements and conditions using only_if.

Here is a small example playbook:

```yaml
- hosts: all
  tasks:
  - local_action: debug msg="System $inventory_hostname has uuid ${ansible_product_uuid}"
  - local_action: debug msg="System $inventory_hostname lacks a gateway" fail=yes
    only_if: "is_unset('$ansible_default_ipv4.gateway')"
  - local_action: debug msg="System $inventory_hostname has gateway ${ansible_default_ipv4.gateway}"
    only_if: "is_set('$ansible_default_ipv4.gateway')"
```

outputting:
```
[root@moria ansible]# ansible-playbook -v -l localhost:x220 test6.yml

PLAY [all] *********************

GATHERING FACTS *********************
ok: [localhost]
ok: [x220]

TASK: [debug msg="System $inventory_hostname has uuid $ansible_product_uuid"] *********************
ok: [localhost] => {"msg": "System localhost has uuid d125a48c-364f-4e65-b225-fed42ed61fac"}
ok: [x220] => {"msg": "System x220 has uuid d125a48c-364f-4e65-b225-fed42ed61fac"}

TASK: [debug msg="System $inventory_hostname lacks a gateway" fail=yes] *********************
failed: [localhost] => {"failed": true, "msg": "System localhost lacks a gateway", "rc": 1}
ok: [x220] => {"msg": "System x220 has gateway 192.168.1.1"}

PLAY RECAP *********************
localhost                      : ok=2    changed=0    unreachable=0    failed=1
x220                           : ok=3    changed=0    unreachable=0    failed=0

```

I had some other plans for the module, like displaying host inventory and complete inventory to help understand inventory and facts modules, but that would require an action-plugin for transfering inventory information etc... And I am not sure this is wanted/best done in a module.
12 years ago
Michael DeHaan e170d7304b Added documentation on file force parameter 12 years ago
Michael DeHaan 046c6c66f2 various small doc tweaks 12 years ago
Michael DeHaan f67aa85c3f Fixing various module related things. 12 years ago
Michael DeHaan 85a31616de Call os.path.expanduser in the creates= and removes= section of the command module so ~/ and the like works. 12 years ago
Dag Wieers 1d27909ec0 Added a fail module in order to fail execution on certain conditions
In some cases you may want to deliberately fail the execution of a playbook. In our provisioning workflow we want to have safeguards in place to avoid provisioning systems that are already in production. Since we reboot physical and virtual systems, it is mandatory we take all the precautions to prevent accidental provisioning.

So in our use-case we have the following at the very start of the provisioning playbook:

    ### Safeguard to protect production systems
    - local_action: fail msg="System is not ready to be staged according to CMDB"
      only_if: "'$cmdb_status' != 'to-be-staged'"

and we repeat the same task in the (separate included) play that takes care of (re)booting the system using our own boot-media, so that it cannot be accidentally separately run by someone.
12 years ago
Petetin Ludovic 17423c9268 Fix issue https://github.com/ansible/ansible/issues/1194 12 years ago
Michael DeHaan 6616fba1ab Merge pull request #1189 from jpmens/nagpause
standardize DOCUMENTATION for nagios, pause
12 years ago
Jan-Piet Mens a1f192976f attempt at DOCUMENTATION for async_status 12 years ago
Jan-Piet Mens 83029755f7 standardize DOCUMENTATION for nagios, pause 12 years ago
Michael DeHaan f897f19fc5 Teach fireball mode to disable the fireball by paying attention to 'minutes=N' (default 30) and do not let fireball module crash
on input.
12 years ago
Michael DeHaan 2165351f2c Merge pull request #1185 from tbielawa/pause_docs
Add DOCUMENTATION to pause task
12 years ago
Tim Bielawa ca87fa56d8 Add DOCUMENTATION to pause task 12 years ago
Tim Bielawa f3d9f8da7b Add DOCUMENTATION to nagios module. 12 years ago
Michael DeHaan 886a17853f Merge pull request #1176 from jpmens/fireball-doc1
fireball DOCUMENTATION
12 years ago
Jan-Piet Mens f2dc815e3f fireball DOCUMENTATION
- amended
12 years ago
Michael DeHaan 6600f7b7ac Merge pull request #1170 from jpmens/docspatch01
Jumbo DOCUMENTATION patch
12 years ago
Michael DeHaan ac3ec0a410 Merge pull request #1173 from dhozac/command-quote-less
Use a regexp to filter out arguments instead
12 years ago
Jan-Piet Mens a72a6e42c5 Added attribution to all module DOCUMENTATION strings 12 years ago
Daniel Hokka Zakrisson 6477bdc6fc Use a regexp to filter out arguments instead
pipes.quote is a bit overzealous for what we want to do, quoting ;
and other characters that you most likely want to use in your shell
invocations. The regexp is the best I could come up with to be able
to only replace the parts of the arguments that shouldn't be
executed.
12 years ago
Jan-Piet Mens e620fed755 Jumbo DOCUMENTATION patch 12 years ago
Michael DeHaan 190e4c26d1 Merge pull request #1167 from jpmens/slurp01
module docs for slurp
12 years ago
Jan-Piet Mens 8b737c959d module docs for slurp 12 years ago
Michael DeHaan a00d6d7234 Merge pull request #1166 from mavimo/documentation-seboolean
Added DOCUMENTATION to seboolean module.
12 years ago
Marco Vito Moscaritolo f9bdf07387 Added DOCUMENTATION to seboolean module. 12 years ago
Michael DeHaan f8060d109e Merge pull request #1165 from mavimo/documentation-selinux
Added DOCUMENTATION to selinux module.
12 years ago
Michael DeHaan 349af83c91 Merge pull request #1164 from jpmens/modformatter
module_formatter now also uses Jinja2 trim_blocks
12 years ago
Marco Vito Moscaritolo 7491054ed6 Added DOCUMENTATION to selinux module. 12 years ago
Jan-Piet Mens e4338d0ca3 module_formatter now also uses Jinja2 trim_blocks
- Updated man template accordingly
- seem to have left in illegal char in facter DOCUMENTATION...
12 years ago
Jan-Piet Mens 8a4df98f69 template DOCUMENTATION added to fireball 12 years ago
Jan-Piet Mens 28698d5fcf Attribute author of virt correctly (sorry) 12 years ago
Michael DeHaan b8a2a526fc Merge pull request #1156 from jpmens/m-docs5
DOCUMENTATION for virt
12 years ago
Michael DeHaan 39c4a4f8a7 Merge pull request #1155 from jpmens/m-docs4
DOCUMENTATION for fetch,mount,ohai,easy_install; .rst template tweaks
12 years ago
Michael DeHaan bf6e783d7a Merge pull request #1152 from sfromm/moduledocs
Add module documentation for git, group, service, and user
12 years ago
Jan-Piet Mens 7a3b2ac287 DOCUMENTATION for virt 12 years ago
Jan-Piet Mens 754888d896 DOCUMENTATION for fetch,mount,ohai,easy_install
- .rst now supresses default if none is set (looks better in HTML)
  - .rst now handles empty options list
  - Fixed postgresql_user and mysql_user because YAML contained colons
  - docs for facter
12 years ago
Stephen Fromm ed07940386 Add LSB facts, as derived from lsb_release -a
This gathers LSB facts via lsb_release.  This complements the
platform facts collected via the platform module.  This reoprts
release, id, description, release, and codename.  It also adds
'major_release', which is the major version number of a distribution.
12 years ago
Stephen Fromm be19e21126 Add module documentation for git, group, service, and user 12 years ago
Michael DeHaan 13e8ef5f35 Merge pull request #1146 from dhozac/command-escape-args
Properly parse escaped special arguments
12 years ago
Michael DeHaan e744e864d9 Merge pull request #1140 from mavimo/devel
Refs #1116: DOCUMENTATION string update
12 years ago
Michael DeHaan 78911f1b26 Merge pull request #1145 from mavimo/documentation-supervisorctl
Added DOCUMENTATION to supervisorctl module.
12 years ago
Michael DeHaan 4823371aff Merge pull request #1144 from mavimo/documentation-pip
Added DOCUMENTATION to pip module.
12 years ago
Daniel Hokka Zakrisson 9261d3962b Properly parse escaped special arguments
Fixes issue #1134
12 years ago
Marco Vito Moscaritolo d80ec35183 Fixed error in author name 12 years ago
Marco Vito Moscaritolo 95d7b4c5db Added DOCUMENTATION to supervisorctl module. 12 years ago
Marco Vito Moscaritolo ac5afcae28 Added DOCUMENTATION to pip module. 12 years ago
Marco Vito Moscaritolo b1d88235f0 Added DOCUMENTATION to shell module. 12 years ago
Marco Vito Moscaritolo e1c83b0367 Fixed error on official docs (reported on DOCUMENTATION string). Name param must be pkg and is required. 12 years ago
Marco Vito Moscaritolo e30e9a74c2 Added DOCUMENTATION to postgresql_user module. 12 years ago
Marco Vito Moscaritolo a4620920b2 Added DOCUMENTATION to postgresql_db module. 12 years ago
Marco Vito Moscaritolo 6184a0a313 Fixed doc string 12 years ago
Marco Vito Moscaritolo 0d0bc5e620 Added DOCUMENTATION to subversion module. 12 years ago
Marco Vito Moscaritolo 29ffed869c Added ping module author in docs. 12 years ago
Marco Vito Moscaritolo 2aaaf986d3 Added DOCUMENTATION to ping module. 12 years ago
Marco Vito Moscaritolo a75348b406 Added DOCUMENTATION to musql_db module. 12 years ago
Marco Vito Moscaritolo 8898643c1d Added DOCUMENTATION to musql_user module. 12 years ago
Jan-Piet Mens 0604d580d9 Removed embedded colon in DOCUMENTATION of apt_repository: building manpages failed 12 years ago
Michael DeHaan e108d1758c Merge pull request #1132 from jpmens/m-doc-inifile
removed EXAMPLES from ini_file
12 years ago
Jan-Piet Mens 1193810d46 module DOCUMANTATION for apt, apt_respository cleanup 12 years ago
Jan-Piet Mens 0649e637d3 removed EXAMPLES from ini_file
testing YAML in YAML: small glitch in rst template; a </pre></p> is outdented and causes messy display
12 years ago
Michael DeHaan ce5dceab0e Merge pull request #1128 from mavimo/devel
Added documentation to APT module
12 years ago
Michael DeHaan 508e6ecf43 Merge pull request #1131 from jpmens/m-docs3
Module DOCUMENTATION for template, wait_for, and yum
12 years ago
Jan-Piet Mens a040807fd0 Module DOCUMENTATION for template, wait_for, and yum 12 years ago
Marco Vito Moscaritolo 7b8bd280e8 Added documentation to APT_REPOSITORY module 12 years ago
Marco Vito Moscaritolo c976238a81 Added documentation to APT module 12 years ago
Jan-Piet Mens e0fb264a89 Module DOCUMENTATION: assemble, authorized_key, command, copy
plus a small fix in rst.j2 template
  manpages generated & checked
  modules.html generated & checked
12 years ago
Michael DeHaan 405c097c43 Various fixes for the module documentation auto-generator 12 years ago
Michael DeHaan 83f277cfe6 Various tweaking to get the module formatter to work for 'make docs' in the docs project. Likely the templates for other module formatting types will have to change
by the time I'm done.
12 years ago
Michael DeHaan 10bce54ef0 Merge pull request #1098 from jpmens/ini_file
New module: manipulate INI-style settings
12 years ago
Daniel Hokka Zakrisson 66d0acfde3 Remove assemble action plugin, fix daisychaining 12 years ago
Michael DeHaan 69612ba16d The very first start of 'fireball mode', which uses ansible in SSH mode to deploy a ephemeral zeromq daemon (entirely optional) that is will die after
it is no longer used.  No key signing will be required.  At this point, development use only -- NOT complete.
12 years ago
Jan-Piet Mens c2daa77089 New module: manipulate INI-style settings
split off examples from DOCUMENTATION into own array as per #1098
12 years ago
Michael DeHaan af8f11e3f7 Merge pull request #1096 from sfromm/issue1067
Ignore failure of stop command if start succeeds with state=restarted
12 years ago
Stephen Fromm 19c0202aaf Ignore failure of stop command if start succeeds with state=restarted
In some cases (see issue #1067) with state=restarted, a failure to stop
the service (which wasn't running) would appear to the module to be a
failure to restart the service even though it successfully started the
service.  This changes the behavior of the service module to focus
on the return code of the start command.  If the rc of stop is not
0 and the rc of start does equal 0, it considers the service
successfully restarted.  It then ignores the rc, stdout, and stderr
from the unsuccessful stop command.
12 years ago
Stephen Fromm f52624f6d2 Give nice error message if destination directory doesn't exist (issue #1048) 12 years ago
Michael DeHaan 2f97afb634 Merge pull request #1071 from dhozac/git-expanduser
User-expand the destination path of the git module
12 years ago
Michael DeHaan 0b3e05d9a4 Merge pull request #1066 from jpmens/doc3_lineinfile
Added DOCUMENTATION to lineinfile module
12 years ago
Michael DeHaan 4e6d89b5b5 Merge pull request #1073 from dcoutu/devel
Added cases for 'dead but subsys locked' status
12 years ago
Dave Coutu 9bb83067bc Added cases for 'dead but subsys locked' status 12 years ago
Daniel Hokka Zakrisson f6af88fe9f User-expand the destination path of the git module 12 years ago
Jan-Piet Mens 5a75433ce9 Added DOCUMENTATION to lineinfile module 12 years ago
Jan-Piet Mens 60e0410298 Tweak DOCUMENTATION YAML as per latest 991 12 years ago
Michael DeHaan 1bd9ea6440 Merge pull request #1062 from dagwieers/wait_for-fix
Fix on older python versions, plus various improvements
12 years ago
Dag Wieers 8912258016 Fix on older python versions, plus various improvements
This change includes:

 - (on possibly older python versions ?) a string variable test using the 'is' operator fails (so it always return ok immediately after initial delay)
 - add a missing socket.settimeout() for the state=started case (if the machine does not exist, timeout defaults to 60 seconds)
 - add a connect_timeout option to customize the default connection timeout
 - use socket.shutdown(2) to close immediately
 - return the elapsed time
12 years ago
Michael DeHaan 4cd3262f50 Merge pull request #1054 from jpmens/geturl_doc1
First attempt at standardizing DOCUMENTATION string
12 years ago
Aleksej Romanov eefe66f1cc Squashed commit of the following:
commit 80a26a8175b779b707bc08e9d28c451c30ee4ada
Merge: b25b9fd 61e9b27
Author: Michael DeHaan <michael.dehaan@gmail.com>
Date:   Tue Sep 18 21:01:47 2012 -0400

    Merge branch 'devel' of git://github.com/alopropoz/ansible into file-force

commit 61e9b27df2
Merge: 3f6f329 16bf3e1
Author: Aleksej Romanov <alopropoz2@yandex.ru>
Date:   Thu Sep 13 20:48:02 2012 +0700

    Merge remote branch 'upstream/devel' into devel

commit 3f6f3291df
Author: Aleksej Romanov <alopropoz2@yandex.ru>
Date:   Thu Sep 13 20:41:31 2012 +0700

    'force' option for 'file' module.

commit 6223bba941
Author: Aleksej Romanov <alopropoz2@yandex.ru>
Date:   Thu Sep 13 20:40:19 2012 +0700

    changed = True when changing symlink referent, #1008. Needed for tests.
12 years ago
Jan-Piet Mens e041c2e2cd First attempt at standardizing DOCUMENTATION string (new DICT) 12 years ago
Michael DeHaan d77be4eecf Merge pull request #1052 from romeotheriault/add-SunOSVirtual-facts
Adding SunOSVirtual facts
12 years ago
Romeo Theriault d72eaa3fc5 Adding SunOSVirtual facts 12 years ago
Stephen Fromm 65fe7b7003 Update package manager fact innards to a list of dicts 12 years ago
Stephen Fromm 94eb11a6d7 Add pkg_mgr fact to setup
This should help facilitate playbook decision making that are not
strictly distribution specific, but more package manager.
12 years ago
Michael DeHaan 7df0e5259f Merge pull request #1038 from bcoca/atomic_copy2
Atomic copy2
12 years ago
Ali Asad Lotia c0aac03b0c url_get module returns dest
The url_get module now includes the destination in the returned JSON.
12 years ago
Ali Asad Lotia 99746d4a83 Indicate thirsty argument required if dest is dir.
The check for the destination being a directory is now done before
checking if the file exists, that way the user is informed that the
thirsty argument is required.
12 years ago
Daniel Hokka Zakrisson 56b1a8ceed Invoke is_installed correctly from rpm path 12 years ago
Brian Coca 88d1285f33 time is what i wanted, not gmtime
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Brian Coca 06b914c5b3 small fix to prevent temp file from living past its succesful usage
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Brian Coca f5481621f8 made copy atomic by creating tmp file in dest location (ensures same partition)
uses pid and epoch to prevent collisions, good enough for most cases
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Michael DeHaan 565f336182 lineinfile should use 'search' everywhere 12 years ago
Michael DeHaan 14a9c3ab9e Line in file regexep should match a portion of the line, not the whole line! 12 years ago
Michael DeHaan 5b57011152 Merge pull request #1027 from mcodd/setup_bug_python24
setup not python24 compatible in 0.7
12 years ago
Michael DeHaan 335f136e71 Merge pull request #1023 from lorin/postgres-user-fix
Fix postgresql_user bug
12 years ago
Matt Coddington c0638842d8 make this python24 compatible 12 years ago
Lorin Hochstein b3b01bb7a3 Fix postgresql_user bug
If I create a database from scratch and assign permissions by doing:

      - name: ensure database is created
        action: postgresql_db db=$dbname

      - name: ensure django user has access
        action: postgresql_user db=$dbname user=$dbuser priv=ALL password=$dbpassword

Then it fails with the error:

  File "/tmp/ansible-1347048449.32-29998829936529/postgresql_user", line 565, in <module>
    main()
  File "/tmp/ansible-1347048449.32-29998829936529/postgresql_user", line 273, in main
    changed = grant_privileges(cursor, user, privs) or changed
  File "/tmp/ansible-1347048449.32-29998829936529/postgresql_user", line 174, in grant_privileges
    changed = grant_func(cursor, user, name, privilege)\
  File "/tmp/ansible-1347048449.32-29998829936529/postgresql_user", line 132, in grant_database_privilege
    prev_priv = get_database_privileges(cursor, user, db)
  File "/tmp/ansible-1347048449.32-29998829936529/postgresql_user", line 118, in get_database_privileges
    r = re.search('%s=(C?T?c?)/[a-z]+\,?' % user, datacl)
  File "/usr/lib/python2.7/re.py", line 142, in search
    return _compile(pattern, flags).search(string)
TypeError: expected string or buffer

This fix fixes the problem by not executing the regex if the
db query on pg_database returns None.
12 years ago
Seth Vidal 9d88b3eedd add import sys to virt module b/c it needs it if the libvirt python
module is missing
12 years ago
Michael DeHaan 4280e00d56 Merge pull request #1000 from mavimo/patch-1
Add support to removes control param
12 years ago
Michael DeHaan 7ef3e7dccb Merge pull request #1003 from bladypirat/devel
added support for custom port definition for postgresql_* modules
12 years ago
Michael DeHaan 49bef3f6c2 Merge pull request #1005 from dagwieers/cmdline
Add /proc/cmdline information to the default facts
12 years ago
Jan-Piet Mens b36aa61237 Add support for RSA/DSA SSH host key detection in setup module for OS/X
s/<8spaces>/<4spaces>/g
12 years ago
Dag Wieers d158218c3f Add /proc/cmdline information to the default facts
The use-case here is that based on information in the /proc/cmdline certain actions can be taken.

A practical example in our case is that we have a play at the end of the provisioning phase that reboots the system. Since we don't want to accidentally reboot a system (or restart the network) on a production machine, having a way to separate an Anaconda post-install (sshd in chroot) with a normal system is a good way to make that distinction.

    ---
    - name: reboot
      hosts: all
      tasks:
      - action: command init 6
        only_if: "not '${ansible_cmdline.BOOT_IMAGE}'.startswith('$')"

A practical problem here is the fact that we cannot simply check whether it is set or empty:

    ---
    - name: reboot
      hosts: all
      tasks:
      - action: command init 6
        only_if: "'${ansible_cmdline.BOOT_IMAGE}'"

If ansible_cmdline was a string, a simple only_if: "'${ansible_cmdline}'.find(' BOOT_IMAGE=')" was an option, but still not very "beautiful" :-/

This implementation uses shlex.split() and uses split(sep, maxsplit=1).
12 years ago
Piotr Kweclich 8360f9f46c added support for custom port definition 12 years ago
Marco Vito Moscaritolo 2dd430d9c0 Add support to removes control param
Execute action only if specified file using param removes exist (execute reverse control of creates).

Some usage eg.:

```yaml
- name: enable apache2 default websites
  action: command /usr/sbin/a2ensite $item
creates=/etc/apache2/sites-enabled/$item
  with_items:
    - default
    - default-ssl

- name: disable apache2 default websites
  action: command /usr/sbin/a2dissite $item
removes=/etc/apache2/sites-enabled/$item
  with_items:
    - default
    - default-ssl
```
12 years ago
Michael DeHaan eed031cd82 Check for ipv6 12 years ago
Michael DeHaan aa704a6111 backuplocal => backup_local for API standardization reasons 12 years ago
Michael DeHaan b97e2a6f5a Merge branch 'backup-common' of https://github.com/dhozac/ansible into devel 12 years ago
Michael DeHaan c69c3d6e18 Merge pull request #995 from mattupstate/devel
Use `get_bin_path` properly for supervisorctl module
12 years ago
Daniel Hokka Zakrisson a5d63532d3 Add backup to assemble 12 years ago
Daniel Hokka Zakrisson 2a8b92954f Add backups to lineinfile 12 years ago
Daniel Hokka Zakrisson dfcb9d3c2d Move backup to module_common 12 years ago
willthames 8b8eae7d82 Allow ~ expansion in chdir argument of command module
This allows the use of ~ in the chdir argument of the command module
I know the later change is absolutely necessary as the first change
was not sufficient. It may be that the first change fixes shell and
the second fixes command.
12 years ago
willthames d4c4a51866 Subversion dest should allow ~ expansion
Used os.path.expanduser on dest to allow e.g. ~/svn/repo as
a destination
12 years ago
Michael DeHaan 8f220a4f77 Always pipe stderr in the setup module to avoid JSON interference. 12 years ago
Matt Wright d52f1d969b Use `get_bin_path` properly 12 years ago
Matt Wright a092eadbbb Fix supervisorctl module after merge issue 12 years ago
Michael DeHaan 8e02b165f1 chmod +x 12 years ago
Michael DeHaan b0ac7e07b0 Merge branch 'binpath' of https://github.com/sfromm/ansible into devel
Conflicts:
	library/supervisorctl
12 years ago
Michael DeHaan a454db5345 Merge pull request #970 from mattupstate/devel
Improve apt_repository and supervisorctl
12 years ago
Michael DeHaan 90f051f818 Merge pull request #971 from sfromm/seboolean
Add seboolean module
12 years ago
Michael DeHaan 092bd8e3da make parameter required 12 years ago
Michael DeHaan 4da4c31dfb Merge pull request #974 from goozbach/add_selinux_module
add selinux module
12 years ago
Derek Carter 2aa760a3fc add selinux module 12 years ago
Stephen Fromm 6742e9c3f4 Add option required=(True|False) to get_bin_path and update modules
Added required as optional argument to get_bin_path(). It defaults to
false.  Updated following modules to use required=True when calling
get_bin_path():  apt_repository, easy_install, group, pip,
supervisorctl, and user.
Also removed _find_supervisorctl() from supervisorctl module and updated
_is_running() to not need it.
12 years ago
Matt Wright b93df1fc60 Update handling of state changes 12 years ago
Matt Wright bdfccbfb34 Move conditional that accounts for variances in distros/versions to work when removing and adding. 12 years ago
Stephen Fromm 97c2e58081 Add seboolean module
Will manage values of seboolean on a host.  Options are name (name of
boolean), state (on or off), and persistent (on or off).  Persistent
defaults to no.
12 years ago
Stephen Fromm e5a635672c Migrate remaining modules to use get_bin_path in module_common.py
* Migraed easy_install, pip, service, setup, and user.
* Updated fail_json message in apt_repository
* Fixed easy_install to not hardcode location of virtualenv in
  /usr/local/bin/.
* Made handling of virtualenv more consistent between easy_install and
  pip.
12 years ago
Stephen Fromm bdb39058ae Migrate apt_repository, group, and supervisorctl to use module.get_bin_path 12 years ago
Daniel Hokka Zakrisson ed8e31d618 Add a lineinfile module 12 years ago
Michael DeHaan d0994cd169 Merge branch 'setup-no-dash-facts' of https://github.com/tima/ansible into devel
Conflicts:
	library/setup
12 years ago
Matt Wright a82928e7dc fix bug in supervisorctl module 12 years ago
Timothy Appnel 8c32aefc80 Replace - with _ in setup module key names to avoid variable access problems reported in #954 12 years ago
Michael DeHaan f9e9753141 Remove obsolete comment 12 years ago
Michael DeHaan d7eed66a06 Merge pull request #951 from gottwald/devel-git-sudo-fix
Added cwd to tempdir in git clone method. Fixes usage with sudo.
12 years ago
Ingo Gottwald 30fdd56560 Added cwd to tempdir in git clone method. Fixes usage with sudo. 12 years ago
Tim Bielawa 6b73907811 Change from a module config file to brute force locating the nagios configs so we can find the command file. 12 years ago
Tim Bielawa 98d3e2bfc8 Nagios is executable now 12 years ago
Tim Bielawa 8b8aaa7f76 Fix copying that special character 12 years ago
Tim Bielawa da2665bcd2 In-line docs. 12 years ago
Tim Bielawa 9829033a8a Now reading from a config file actually works. 12 years ago
Tim Bielawa 62ffeb93a5 Services iterate correctly now
Cleaned up return methods
12 years ago
Tim Bielawa 5d41fffa00 Groundwork for nagios module. 12 years ago
Florian Diebold 886fed5ae7 Remove ternary operator to fix python 2.4 compatibility. 12 years ago
Florian Diebold af17bab373 Support systemd in the service module.
Most of it worked already, except for the enable parameter, because it
tried to use chkconfig which only sees SysV services. First look for
systemctl and use that if it exists.
12 years ago
Michael DeHaan 4816644b22 Merge pull request #937 from jhoekx/wait-state
Add a state parameter to the wait_for module.
12 years ago
Michael DeHaan 165f4b514d Merge pull request #938 from skvidal/devel
fix up local_nvra and fix for a missing localinstall rpm file.
12 years ago
Maxim Burgerhout 3d44de284a Add working CPU model fact for some ARM devices
Works on Sheevaplug, probably works on Rasberry Pi as well
12 years ago
Jeroen Hoekx 81c9a0cb78 wait_for: remove restarted, add delay, rename name to host, make port required. 12 years ago
Jeroen Hoekx 18d5c875d0 Change wait_for return message to be machine readable. 12 years ago
Seth Vidal 5dbc85e8ad fix up local_nvra 12 years ago
Jeroen Hoekx 5ba34572d9 Add a state parameter to the wait_for module.
This takes started, stopped and restarted.

Started returns when connecting is possible.
Stopped when connecting is not possible.
Restarted first waits for connecting to be impossible and returns when it is
possible again.
12 years ago
Michael DeHaan 150a47c66c Merge pull request #922 from dsummersl/subversion
Subversion
12 years ago
Michael DeHaan b3b607ff5e Merge pull request #931 from elventear/postgresql_db
Allow change of ownership and checks for existing database
12 years ago
Michael DeHaan 7341ed241e Merge pull request #924 from elventear/postgresql_user
Change semantics of postgresql_user module
12 years ago
Jeroen Hoekx 8660fb074a Add the wait_for module.
This module waits until a specific port on a given host can be connected to.
12 years ago
Dane Summers 71cff25254 added force option to git - made both subversion and git default to force=true for backward compatibility with git's previous behavior 12 years ago
Dane Summers 6dd6a4c534 tested library - fixed several test cases, added 'force' option, and removed grep requirement 12 years ago
Pepe Barbe fdaf65282b bugfix in sql query 12 years ago
Pepe Barbe fdbc99dc28 Check for database ownership 12 years ago
Pepe Barbe 6d473df324 Typo 12 years ago
Pepe Barbe af5d67c496 Query for all active privileges instead
Use a different method to query for current 
privileges at the table and database level. 
This method is more robust if newer privileges 
are added in future versions and also supports the 
ALL wildcard.
12 years ago
Pepe Barbe 95169b75c4 Add fail_on_user option
fail_on_user option can be used to ignore silently
if the user cannot be removed because of remaining
privilege dependencies to other objects in the 
database. By default it will fail, so that this new 
behavior won't surprise unsuspecting users.
12 years ago
Pepe Barbe 4e833cf506 Initial commit of change of semantics for module
The postgresql_user module has several drawbacks:
* No granularity for privileges
* PostgreSQL semantics force working on one
  database at time, at least for Tables. Which
  means that a single call can't remove all the 
  privileges for a user, and a user can't be
  removed until all the privileges are removed, 
  forcing a module failure with no way to 
  work around the issue.

Changes:
* Added the ability to specify granular privileges
  for database and tables within the database
* Report if user was removed, and add an option to 
  disable failing if user is not removed.
12 years ago
Dane Summers 24c8c22e75 removed logger, removed superfluous mkdir 12 years ago
Dane Summers 157fa3868a added TODO for test scenarios to add 12 years ago
Dag Wieërs 9d4f70f0ad Handle special files just like normal files
As discussed in #923
12 years ago
Michael DeHaan 1ae018ce94 Adds a thirsty=yes|no to the get_url module, such that if downloading a large file from the internet you can decide
whether to download it every time or not -- will replace only on change, or decide to not download.  The default
is thirsty=no which will not download every time by default.
12 years ago
Tim Bielawa 3d3c8a004e Fix setup module explosion when a route is empty. Closes #909 12 years ago
Michael DeHaan 14c2e8de0c Fix invalid usage or fail_json in apt module 12 years ago
Michael DeHaan 798c35d83e Apt module should accept 'absent', and 'present' like the yum module does. 12 years ago
Michael DeHaan 8eda23f856 tweak service module pattern= logic so ./hacking/test-module does not give false positives 12 years ago
Michael DeHaan bc571ccb55 Merge pull request #902 from sfromm/issue719
Add pattern option to service module
12 years ago
Michael DeHaan 2b51cf04c7 Merge pull request #901 from dhozac/setup-ip
Work with tun and p2p interfaces
12 years ago
Michael DeHaan 705057b9a6 Merge pull request #900 from lorin/pip-venv-bug
Retrieve pip path after creating virtualenv
12 years ago
Michael DeHaan 229ab1582a Merge pull request #898 from elventear/postgresql_user_py24
Fixes for postgresql_user to make it work with postgresql defaults and under Python 2.4
12 years ago
Stephen Fromm 18f0302de8 Add pattern option to service module
Adds ability to check service status based on pattern.  The pattern
is a simple string.  If a pattern is provided, the output of ps is
checked first.
12 years ago
Daniel Hokka Zakrisson 121341833a Work with tun and p2p interfaces 12 years ago
Lorin Hochstein 8223d3ee3f Retrieve pip path after creating virtualenv
Retrieve the pip path after creating a non-existent virtualenv.
Prevents the problem of using the wrong pip if virtualenv doesn't
exist yet.
12 years ago
Pepe Barbe 3dd2c0700f Syntax change to make module compatible with Python 2.4 12 years ago
Lorin Hochstein 8af3403f65 Return both stdout and stderr on pip failures.
pip failure message sometimes (always?) go to standard out. Return
both standard out and standard error when there's a failure.
12 years ago
Michael DeHaan c93df29249 Make a more logical error when the command/shell module is used with no arguments. 12 years ago
Sundar Raman 3aff9396e8 (Re #882) Handle errors in get_interfaces
If there is an error in how interfaces are configured (or only one set, like IPv6),
the setup command should not error out.
12 years ago
Dane Summers 19686d549c support for subversion repositories 12 years ago
Jeremy Penner 09d5812cbb Make easy_install module actually work.
mpdehaan requested in ansible/ansible#795 that globals be removed.
The response was to remove the lines with the word 'global', but not
the actual use of global variables.  Which makes the module break silently.
Updated to use local variables.
12 years ago
Michael DeHaan ded0c61750 meaningless whitespace changes 12 years ago
Michael DeHaan de4b8dc53a Can use fail JSON here, remove debug statement 12 years ago
Michael DeHaan 58c975d621 Fix aliases, package not found is not an error 12 years ago
Michael DeHaan 07fd96acc9 Merge branch 'devel' of https://github.com/skvidal/ansible into devel 12 years ago
Michael DeHaan 731adc0eaf Merge pull request #866 from akhayyat/devel
setup: add type and default_ipv{4,6} to linux network facts
12 years ago
Michael DeHaan a2a8cfe099 Merge pull request #876 from elventear/postgresql_fix
Changes to postgresql to support defaults settings and older psycopg2
12 years ago
Pepe Barbe 7dcd1bd223 Autocommit support for psycopg2 < 2.4.2 12 years ago
Pepe Barbe 95fc5dd4a8 Fix using postgres default values
When initalizing a connection to psycopg2, in order to use the default
values, the keywords must be missing. So we use a dictionary as a kwarg
and include only the keywords that do not have an empty value on the
module parameters.
12 years ago
Seth Vidal 3175eacfc4 fixes to yum module
include local_nvra
change the remove behavior to pretty much NEVEr error out if the pkg is not there (or anywhere)
12 years ago
Seth Vidal 14479e6adc cover all of the edge cases with and without yum-utils installed.
it is possible those folks w/o yum-utils installed but with rhn-plugin
installed but w/o any rhn-certificates will still see an error msg.
they have 3 options:
1. remove rhn-plugin
2. enable some channels w/rhn certs
3. install yum-utils
12 years ago
Seth Vidal 2e3926d13f subprocess is already imported in module_common - no need for it here 12 years ago
Daniel Hokka Zakrisson ae964b97c4 Fix spelling of architecture for non-x86 12 years ago
Ahmad Khayyat c96c51a534 setup: add type and default_ipv{4,6} to linux network facts 12 years ago
Michael DeHaan 7ab0d60b1a update config code 12 years ago
Michael DeHaan 3b259ef5f6 Merge pull request #859 from zecrazytux/bugfix/apt_repository
Bugfix/apt repository
12 years ago
Michael DeHaan e29ee9db2b Merge pull request #860 from goozbach/broken_mount
fixed missing module argument for mount module
12 years ago
Pepe Barbe bce1d4da53 Use Python 2.4 compatible syntax 12 years ago
Derek Carter 556593bb18 fixed missing module argument for mount module 12 years ago
Sebastien Bocahu d95eddceb1 Quote the repository string when appending it to the command line in the apt_repository module. 12 years ago
Sebastien Bocahu 3e9bcd351d Add support for Debian in apt_repository 12 years ago
Sebastien Bocahu df269c72c1 Fixed scoping issue in apt_repository module. 12 years ago
Stephen Fromm c4ce5f9497 Try to find ip command in either /sbin or /usr/sbin
If ip is not found in either /sbin or /usr/sbin, this will return
an empty result.  It seems extremely unlikely that a linux system will
not have iproute2 installed
12 years ago
Stephen Fromm 84028c2339 Tweak invocation of ip in LinuxNetwork
Specify full path to ip and add third argument 'show' to be explicit
about requested action.  This goes from 'ip addr' to
'/sbin/ip addr show'.
12 years ago
Michael DeHaan 75bbd73173 Fix indentation 12 years ago
Michael DeHaan 67301c1015 rename variable 'pkg' in yum module such that the auto-handled error messages use the same key. 12 years ago
Michael DeHaan 1e4d45af1e Add module common code to allow it to be easier to indicate whether arguments are mutually exclusive, required in conjunction, or whether one of a list of arguments is required. This simplifies writing Python modules. 12 years ago
Michael DeHaan e9c9d8f523 tweak config mode check to just have a default 12 years ago
Michael DeHaan 477ca2ed1a Make pep8 tests run against the library directory as well, and associated tweaks (mostly to indentation) in the library
directory.
12 years ago
Michael DeHaan e0765be1ea Merge pull request #850 from akhayyat/virt-facts
Add openvz detection to virtualization facts, and some cleanup
12 years ago
Michael DeHaan 32922e404b Don't include local addresses in the all_ipv4/6 list 12 years ago
Ahmad Khayyat 916fcdb93b Add openvz detection to virtualization facts, and some cleanup 12 years ago
Ahmad Khayyat f0a8e13628 Update doc string and minor cleanup 12 years ago
Ahmad Khayyat 7950dd01e5 Recognize interface aliases in network facts, and add IP facts 12 years ago
Michael DeHaan 36527ca9d5 Merge pull request #838 from sfromm/issue825
Update file module to not recurse when setting ownership
12 years ago
Sébastien Bocahu 487d07a845 Fix variable scope 12 years ago
Stephen Fromm 94696fb88e Update file module to not recurse when setting ownership
This updates set_owner_if_different() and set_group_if_different()
to not implicitly recurse when setting ownership (whether user or
group).  It drops the os.system() call and replaces it with os.chown().
Resolves issue #825.

The recursion should be explicit.  A recurse=yes|no option should be
added to the file module.
12 years ago
Michael DeHaan 9e934acfca Relative symlinks don't really work (module bug) and would be confusing anyway, better to be explicit. 12 years ago
Michael DeHaan ef18f9d953 Fix a scoping issue that was fixing some non-repoquery-installed cases 12 years ago
Michael DeHaan 63641da225 Merge branch 'yum-wo-repoquery' of https://github.com/dhozac/ansible into devel
Conflicts:
	library/yum
12 years ago
Michael DeHaan 8e12440db4 Merge pull request #830 from cybertoast/feature/pip_module_py2.4
Feature/pip module py2.4
12 years ago
Michael DeHaan f311d685cb Merge pull request #828 from skvidal/devel
add backup= option to copy. makes a backup of the file on the target
12 years ago
Sundar Raman 66a6231922 Further syntax fix work on Python2.4
The `val if something else something-else` syntax does not work prior to 2.5.
12 years ago
Sundar Raman 9ad91d7369 Fix syntax to work on Python2.4
The `val if something else something-else` syntax does not work prior to 2.5
12 years ago
Seth Vidal 588b129018 fix case where destination does not yet exist - no backup can be made 12 years ago
Seth Vidal 28e9b1128f add backup= option to copy. makes a backup of the file on the target
in a file named: $filename.YYYY-MM-DD@HH:MM~

backup=False is default
12 years ago
Seth Vidal 5c458b9761 make yum module work with list=pkgspec 12 years ago
Daniel Hokka Zakrisson 5a7d271759 Allow using the yum module without repoquery
It is still required to use list=..., but the typical install and remove
won't need it.
12 years ago
Michael DeHaan c82f06258c Only run yum,apt through the with_items loop if there is a list of items. Just a cosmetic fix on return values
for the most part.
12 years ago
Michael DeHaan d451cc6463 Merge pull request #794 from mattupstate/apt_repository
add apt_repository module
12 years ago
Michael DeHaan b378a94b7b Merge pull request #796 from mattupstate/pip
add pip module
12 years ago
Michael DeHaan 82dfb11fb9 Merge pull request #807 from mattupstate/supervisorctl
Add supervisorctl module
12 years ago
Michael DeHaan 67205eb816 Merge pull request #795 from mattupstate/easy_install
Add easy_install module
12 years ago
Michael DeHaan 311d7c46ca Merge pull request #806 from skvidal/devel
fix up yum state=latest with pkg groups
12 years ago
Michael DeHaan fe65648ea5 Merge pull request #808 from sfromm/issue800
Make exception more specific (OSError) in setup module for selinux call
12 years ago
Seth Vidal 61e02d508c add show-duplicates to reqpoquery to keep people who
want to install an old package happy.
12 years ago
Stephen Fromm 0cc73c930b Make exception more specific (OSError) in setup module for selinux call 12 years ago
Matt Wright 34e0faaf4b Add supervisorctl module 12 years ago
Matt Wright 15e9f1e15a Update per ansible/ansible#794 12 years ago
Seth Vidal ca63173bf0 missed the quotes 12 years ago
Matt Wright 2a68f5d0af Updates per ansible/ansible#795 12 years ago
Seth Vidal 70eea69e79 fix up yum state=latest with pkg groups 12 years ago
Matt Wright 0116e53e48 Updates per ansible/ansible#796 12 years ago
Michael DeHaan f757d659cc Merge pull request #804 from sfromm/issue789
Abstract how to look up user password to be more flexible
12 years ago
Michael DeHaan ae7e1928df Merge pull request #790 from sfromm/fixgit
Fix error handling when switching versions
12 years ago
Stephen Fromm 49f3ab6757 Abstract how to look up user password to be more flexible
This adds user_password() to abstract how the user's password is looked
up.  If spwd is not available, this will read the shadow file for the
user's shadow entry.  This will then facilitate idempotent password
changes on hosts without spwd.
12 years ago
Stephen Fromm 3fb3eae7b6 Protect all selinux calls with try/except 12 years ago
Matt Wright 62297b608f Add easy_install module 12 years ago
Matt Wright bef4c1b955 add apt_repository module 12 years ago
Matt Wright 4de0e5de54 add pip module 12 years ago
Stephen Fromm 6265be3aee Fix error handling when switching versions
git module used to check stderr for the string 'error' after calling
switch_version().  This changes that to just look at the return code to
determine whether the command failed.  If the rc is not zero, the git
module will call fail_json().

The problem is that git checkout will summarize the commit message,
such as:

    HEAD is now at ea38409... removing artificial error

When the string 'error' is the commit message, this check will
erroneously think the command failed.

This also removes the method switchLocalBranch() since it is no longer
used.
12 years ago
Michael DeHaan 092f83e6f8 Merge pull request #781 from gottwald/devel-mysql-socketOption
login_unix_socket option for mysql modules
12 years ago
Michael DeHaan faed4b5a33 whitespace + remove deprecated YAML parser (migration script lives in examples/scripts and warning was added
in 0.6 release)
12 years ago
Michael DeHaan 08c1f96e4b Fix some subtle behavior of how the get_url module chains into the file module, plus blend the results of daisy chain
operations in the correct order, so the file module results overlay the original module results, not the other way
around (which keeps any failure msg's intact)
12 years ago
Ingo Gottwald 891415e616 Added login_unix_socket option to mysql_user module 12 years ago
Ingo Gottwald a2aa30f4e5 Added login_unix_socket option to mysql_db module 12 years ago
Michael DeHaan 7e9e29011e Add encoding lines to python modules such that they can take unicode options if they are fed them, since the
AnsibleModule stuff no longer base64 encodes for simplicity and speed reasons.
12 years ago
Michael DeHaan ce01c3f7e7 Allow unicode transfer by not base64 encoding. Also: faster 12 years ago
Seth Vidal 4d29cd6ee3 make virt module command= work again - better error handling should be in its
future
12 years ago
Seth Vidal fd492bebc6 - add a check for repoquery so we can abort politely
- make the results output a bit more readable
- fix up where repoquery is looked for so it is easier to change
12 years ago
Michael DeHaan 98e4034de2 Merge pull request #772 from gottwald/devel-serviceFix
Fixed a Bug in the service module "state changed" recognition
12 years ago
Ingo Gottwald 25b52109b4 Fixed a Bug in the service module state changed recognition 12 years ago
Stephen Fromm 85c838c835 Add Blade to FORM_FACTOR list and document SMBIOS spec URL 12 years ago
Stephen Fromm 9a3ad060dc Catch exception if form factor id is unknown 12 years ago
Michael DeHaan fa79d57d13 changelog / remove a failed=False 12 years ago
Michael DeHaan b7c3fd1246 failed should not be in the result returns for a module upon success 12 years ago
Michael DeHaan 91d31d8164 Merge pull request #761 from skvidal/devel
redo of yum module - uses more system calls but should handle
12 years ago
Seth Vidal c91befda5c redo of yum module - uses more system calls but should handle
random plugin vomit better.
also should handle multiple withitems in a single execution, now.
12 years ago
Michael DeHaan e820c282be Merge pull request #760 from sfromm/fixes
A couple fixes for the file module
12 years ago
Will Thames 0e26ef9bdd Revert acceptance of directory as dest for copy
Although library/copy can be corrected to understand that dest is
a directory, I can't see how to let _execute_copy know this and let the
file module know.

As a better solution than before #733, the copy module now explicitly (rather
than silently) fails when dest is a directory.
12 years ago
Stephen Fromm d0892c19ad Add setype to file's argument_spec and remove secontext
secontext is used internally and should not be in argument_spec
12 years ago
Stephen Fromm 52afacf475 Fix module_fail_json call when symlink src does not exist 12 years ago
Michael DeHaan 25acfa8170 Join with_items for the apt module, yum pending, and various fixes to the yum module to support aliases 12 years ago
Michael DeHaan ed14312ad6 reinstate invalid argument checks where possible, daisy chainee/chained modules turn it off 12 years ago
Michael DeHaan 77029a4227 Merge pull request #752 from go2sh/apt-patch
Enable apt module to handle multiply packages (comma separated)
12 years ago
Stephen Fromm abe8d8d4d6 Return extra information from service module
If _do_enable() is run and returns rc == 0, set changed=True
Add enabled and state to result if they are supplied when the module is
run.
12 years ago
Stephen Fromm 42ad1c879f Fix service module for issue 755 and another bug
Allow use of service module with just enable parameter, per issue #755.
Also fixed two other issues:
- fixed parameter to be 'enabled' per docs, not 'enable'.
- fixed if block that checks whether to run _do_enable() to check
  whether the parameter is set, not the value of the enable value which
  may be None or False.  If enabled=no, the service would never be
  disabled.
12 years ago
Christoph Seitz 6baaea90ae Tweaked error massages. 12 years ago
Christoph Seitz b973910283 Some optimizations to previous code. 12 years ago
Christoph Seitz 418445d3c5 Enable apt module to handle multiply packages (comma separated) 12 years ago
Jan-Piet Mens 31c0e523c2 Fix exeptions, replace 'as' by ',' as reported on IRC for Python 2.4.3 on Centos5 12 years ago
Michael DeHaan 0a3ebdb6d5 Module consistency and make daisy chaining work with invalid arguments detection. 12 years ago
Michael DeHaan 8700de964c Teach the common module code to warn users about typo'd arguments and also set everything to None automatically such
that code doesn't have to do a lot of params.get('foo', None) everywhere.
12 years ago
Lorin Hochstein 9bcc18d17b Apt module: add update-cache as alias of update_cache
This will ensure users of previous versions of this module don't
have their playbooks break.
12 years ago
Michael DeHaan d79900b434 Merge pull request #732 from willthames/fix_git_fail_json
Fixes for git module when it fails.
12 years ago
Michael DeHaan 89ef236e9c Merge pull request #733 from willthames/copy_to_directory
Allow copy dest argument to be a directory
12 years ago
Michael DeHaan a8d13fe40d Merge pull request #735 from nix85/fix_ohai_mod
Changed funtion name to get_ohai_data
12 years ago
Petros Moisiadis 24c1d32120 added extra arguments for database creation
mysql_db: added 'encoding' and 'collation' args
postgresql_db: added 'owner', 'template' and 'encoding' args
12 years ago
Nikhil Singh 526a0b1f60 Changed funtion name to get_ohai_data 12 years ago
u348095 3cb51acd78 Allow copy dest argument to be a directory
Could have used shutil.copy rather than shutil.copyfile, but this
implementation preserves the md5 comparison to avoid unnecessary copies
12 years ago
u348095 e863ba0cec Fixes for git module when it fails.
* module.fail_json *must* have msg argument
Using http://github.com/ rather than git://github.com/ as it gets through more
firewalls
12 years ago
Michael DeHaan ce5f3dd148 Port the file module over to the new common code infrastructure + cleanup some redundant imports since the module code already imports those things. 12 years ago
Michael DeHaan d0f6410326 Porting the virt module to new module core. 12 years ago
Michael DeHaan 6b72804cb4 remove unneeded imports 12 years ago
Michael DeHaan d0a5dec686 Port setup module to use the common module base 12 years ago
Michael DeHaan d79ba6f2aa Port the ohai module over, while this is actually *longer* now, not transferring the args file makes this much
faster.
12 years ago
Michael DeHaan 5fd2018117 Convert authorized_key modules to use new common code + misc style things 12 years ago
Michael DeHaan 63459110c4 Merge pull request #730 from marktheunissen/mysql_change_params
Changing the parameter names to be consistent, and adding root user
12 years ago
Mark Theunissen 9a1265b856 Changing the parameter names to be consistent, and adding root user default with empty password, as per mysql standard 12 years ago
Michael DeHaan 47cead3603 Merge pull request #727 from sfromm/git
Git module ported to use module magic
12 years ago
Michael DeHaan d0f0315c9d Merge pull request #723 from skvidal/devel
fix trace-creating error in apt module - also make the default setting a...
12 years ago
Seth Vidal 21a35bde00 new patch - adds a 'boolean' function to the module_common class and cleans up
the apt module to use it
12 years ago
Seth Vidal c4c53d545a fix trace-creating error in apt module - also make the default setting actualy work 12 years ago
Petros Moisiadis 4ad0ff61e5 added a 'chdir' argument to the command module
the 'chdir' argument changes the current working directory to the
fullpath supplied as its value, before the execution of the command.
12 years ago
Stephen Fromm 87b3e1ecdc Update git module to use module magic and other changes
Convert git module to module magic.
Drop cruft no longer needed.
Standardize indent to 4 spaces in methods switchLocalBranch, reset,
clone, and get_version.
Update is_local_branch to also handle '* branch' format.
Add is_current branch method()
Update pull() method to use is_current_branch()
12 years ago
Lorin Hochstein dcd214a631 Use standard argument names in PostgreSQL modules
passwd -> password
loginpass -> login_password
loginuser -> login_user
loginhost -> login_host

Add an example playbook that shows how to use the modules.
12 years ago
Lorin Hochstein a9c2e597ac Fix typo in apt error message: update-cache -> update_cache
The apt parameter changed from update-cache to update_cache, but
the error message still mentioned update-cache
12 years ago
Michael DeHaan ff82f0a168 Further service module tweaks 12 years ago
Michael DeHaan e9c4eb36d1 Service tweaks WIP 12 years ago
Nikhil Singh aca860df9c Standardizing the module 12 years ago
Mark Theunissen 7a67145ef4 Fixes for apt module 12 years ago
Michael DeHaan 487c826700 Tweak alias consistency a bit. 'package' has never been documented, but since it works, make it work in both places.
'name' is the preferred form.  Similarly, take 'name' for the 'guest' argument to the 'virt' module.
12 years ago
Michael DeHaan 4ecdd17caf Merge pull request #702 from lorin/postgresql-module
Add postgresql_db and postgresql_user module.
12 years ago
Michael DeHaan d55012e570 Merge pull request #704 from lorin/gitfix
git module: Don't pass rc as separate arg to fail_json
12 years ago
Lorin Hochstein 9253d89280 git module: Don't pass rc as separate arg to fail_json 12 years ago
Michael DeHaan 0c61d049a2 Merge pull request #690 from marktheunissen/mysql_default_password
Change modules to use credentials in my.cnf if they are available
12 years ago
Michael DeHaan ebfd7ec7e3 Merge pull request #695 from nix85/fix_apt_mod
Standardizing the apt module
12 years ago
Lorin Hochstein def1fa23f8 Add postgresql_db and postgresql_user module.
These modules are based on the mysql_db and mysql_user modules.

Currently, the postgresql_user module can only grant all permissions
on a database, fine-grained access has not been implemented yet.
12 years ago
Mark Theunissen 7395becf3a Check file exists instead of relying on the exception. Leave the exception catch in, in case the file is deleted or some other issue crops up 12 years ago
Mark Theunissen 888ac86d70 Woops, missed the rest of them 12 years ago
Mark Theunissen ac23c69bcc Making the passwd parameter consistent 12 years ago
Mark Theunissen 6afe3fd497 Changing to read from a file pointer instead so that an exception is thrown if the file doesn't exist 12 years ago
Nikhil Singh daf44331c4 Code review changes
1. Passing the module to the various functions so that they can use module.fail_json and module.exit_json methods inside.
2. Because of point 1, install and remove methods do not return anything. Instead, they use the module functions itself.
3. Move the import statement (for apt and apt_pkg) inside main function so on import error, we can use module.fail_json to print the error.
12 years ago
Nikhil Singh dd9e09dee6 Adding dict() for json.dumps 12 years ago
Nikhil Singh 4c8d949642 Standardizing the apt module 12 years ago
Stephen Fromm 1727bd3b7a Update git module to handle branches better
This drops the branch option.  The version option is overloaded
to mean either a sha1, branch, or tag.  This also adds the option
'remote' which defaults to 'origin'.
clone() was simplified by removing the checkout operation.  That
happens later when switch_version() is called.

Added the methods get_branches(), is_remote_branch(), and
is_local_branch().  get_branches() returns an array listing all
of the branches for the git repository.  is_remote_branch() checks
whether the arguments supplied correspond to a remote branch.
Similarly, is_local_branch() checks for a local branch.

The pull() method now checks to see if it is on the desired branch.
If not, it checks out the requested branch and then does a pull.
This should keep issue #604 still fixed.

switch_version(), formerly switchver(), looks to see if it is
checking out a branch.  If a branch, it checks it out with the --track
option.  This type of checkout was in pull() before.

Updated pull, clone, and switch_version to return (rc, out, err).
12 years ago
Michael DeHaan 2030f82bf2 Further standardize the yum module 12 years ago
Michael DeHaan 1584eda3f8 Merge pull request #684 from nix85/fix_yum_mod
Standardizing the yum module
12 years ago
Mark Theunissen 12979cf834 Change modules to use credentials in my.cnf if they are available 12 years ago
Stephen Fromm 40eaf282ea More cleanup in assemble module for module magic (tm) 12 years ago
Nikhil Singh b47bed9601 Standardizing the yum module 12 years ago
Michael DeHaan 772e241d1f shorten up the assemble module 12 years ago
Michael DeHaan f787cda7be Merge pull request #675 from jpmens/assemble1
convert sfromm's assemble to module-magic
12 years ago
Michael DeHaan f4a4649086 Port async_status to use the new common code. 12 years ago
Michael DeHaan 45354c6be5 Port command module over to new common code. Notice that this has to subclass AnsibleModule -- this should be the only
one that has to do that.
12 years ago
Michael DeHaan 2d1c297fb8 Merge pull request #674 from nix85/fix_facter_mod
Standardizing the module
12 years ago
Jan-Piet Mens f6fe9124b8 convert assemble to module-magic 12 years ago
Nikhil Singh 8bbcef6f13 Standardizing the module 12 years ago
Mark Theunissen 97cc259d8c Undefined variable error 12 years ago
Nikhil Singh 483f7fd625 Standardizing the mount module 12 years ago
Michael DeHaan 2cda36f7dc Merge pull request #664 from jpmens/a1
Fix file module to support = in args; remove superflous call in get_url
12 years ago
Christoph Seitz ab8a36686e Fixes locale problem with ifconfig in setup module 12 years ago
Jan-Piet Mens 628b289ab3 Fix file module to support = in args; remove superflous call in get_url 12 years ago
Michael DeHaan ec12cc4154 Save the transfer of the module file for new style modules, because we can inject the arguments into the modules.
Module consumers using the API don't have to know how this works.  base64 stuff is only there
because escaping a docstring inside a docstring was a bit of a challenge :)
12 years ago
Stephen Fromm f068bedfa1 Update user module to use new shared module code 12 years ago
Mark Theunissen 12e23a1a6c Upgrading MySQL user module to new format 12 years ago
Michael DeHaan 0b891fc8fb Tweaking daisychain internals to allow get_url to modify the path destination when downloading to a directory.
Minor module refactoring.
12 years ago
Michael DeHaan 46650cfcec Merge branch 'get_url3' of https://github.com/jpmens/ansible into devel 12 years ago
Stephen Fromm 1a9c54b1e1 Update group module to use new shared module code 12 years ago
Mark Theunissen efb60776f4 Upgrading to new shared module code 12 years ago
Michael DeHaan 9f149c9f1a imports not needed 12 years ago
Michael DeHaan d0f4358730 Port the copy module over to the new "common module" logic. 12 years ago
Jan-Piet Mens b8d7b5041b new module: get_url
get module (with new module-magic-code!)
	Usage: ansible -m get -a "url=http://xxxxxxx  dest=fileordirctory"
	all cleanups as per @mpdehaan's suggestions
	add daisychain
	added example playbook (get_url.yml) with URLencode example
12 years ago
Stephen Fromm 2a0dfba838 Skip get_ipv6_facts if socket.has_ipv6 is false 12 years ago
Stephen Fromm fd059a3df2 Fix for issue 604
Do not switch to master branch in pull()
Add --track to git checkout, when checking out a remote branch to track.
12 years ago
Michael DeHaan 70ef8e9ebb Merge pull request #637 from goozbach/git-mkdir
git mkdir causes problems with older git (can't c/o to existing directory)
13 years ago
Derek Carter f0f8eb3445 git mkdir causes problems with older git (can't checkout to existing directory) 13 years ago
Michael DeHaan b114a6075f Merge pull request #631 from sfromm/facts
Update setup module for facts derived from classes - take 2
13 years ago
Michael DeHaan d69e70db01 By defining a main function here, and including it ahead of the boilerplate insertion symbol, tracebacks are
now accurate with respect to the main function, but may include lines not in the original file.  A lot better
than before, where they were offset.
13 years ago
Stephen Fromm 0efc0bec89 Update LinuxNetwork to not use fcntl and ioctls
get_interfaces() updated to read /proc/net/dev.  This means it no
longer provides only interfaces that are up.

get_iface_hwaddr() updated to read from /sys/class/net/<iface>/address.

Added get_interface_facts() to pull in mac address and interface mtu.
Can be used later for additional interface-facts.

Added get_ipv6_facts(), which reads from /proc/net/if_inet6.

get_network_facts() renamed to get_ipv4_facts().  It still calls
ifconfig to determine ipv4 facts.
13 years ago
Stephen Fromm 162b78ea5c Check if CPU is QEMU via different mechanism
The processor fact doesn't exist in LinuxVirtual.  Read /proc/cpuinfo
and check if it is QEMU.
13 years ago
Stephen Fromm e3dd25b1b2 Add back erroneously deleted get_file_content() 13 years ago
Stephen Fromm 97c64f3632 Adjustments to behavior of Facts and subclass behavior
The Facts class and subclasses no longer take a dict argument for
instantiation.  populate() now returns self.facts.
Other changes:
- Facts.__init__() takes over most of the work from populate() so that
  subclasses can benefit from its knowledge.
- Drop setting unknown facts to 'NA' in __init__() in various
  subclasses.
- Check for presence of facts in get_virtual_facts()
- Update ansible_facts() to use facts.update(<classname>().populate())
13 years ago
Stephen Fromm ae1b2394ac Update setup module for facts derived from classes
This changes and organizes facts into a base class Facts and several
sub classes that implement the necessary functionality.  The classes
are:
- Facts: base class.  Implements basic facts that should be common to a
  number of platforms.  It is also where SSH keys and SELinux facts are
  set.
- Hardware: A subclass of Facts that should be further
  subclassed per platform for CPU, memory, and related facts.
  - LinuxHardware: subclass of Hardware for Linux platforms
  - SunOSHardware: subclass of Hardware for SunOS platforms
  - FreeBSDHardware: subclass of Hardware for FreeBSD
- Network: A subclass of Facts that that should be further
  subclassed per platform for IP, both IPv4 and IPv6, information.
  - LinuxNetwork: Currently only implementation for determining network
    facts.
- Virtual: A subclass of Facts that that should be further
  subclassed per platform to determine virtual environment facts.
  - LinuxVirtual: Currently only implementation for determining virtual
    facts.

If facts are needed for additional platforms, one of the above classes
(eg Network) can be further subclassed and implement the necessary
functionality.

In addition, it fixes get_network_facts() to work on Fedora17.  That
broke due to changes to ifconfig output.
13 years ago
Michael DeHaan a94ec130d2 Common module code upgrades 13 years ago
Michael DeHaan 9006d4557d Added code to allow insertion of boilerplate into modules to make them able to share lots of code, the result
should be a huge reduction of total ansible source, at a slight cost of difficulty in original module development.

We need to apply this now to all modules, but may need to have some exemptions to things like command, which should
subclass this module.
13 years ago
Peter Sankauskas 5e35cd6466 Pass through error message when repo not found 13 years ago
John Kleint ae665c15b3 Service module outputting extra data.
The service module was printing stuff to stderr, returning two
JSON dicts, not using consistent 'failed' values, had dead code
and unused variables.  Added detection for the case when service
status returns 'xxx is dead and pid file exists' and made the
code a bit easier to read.
13 years ago
Michael DeHaan 1a88a3362f add noninteractive to debian module per #602 13 years ago
Seth Vidal f6a09bc4c1 Squashed commit of the following:
commit ea14bbfb52587bf5b97b5577c0439b01cb0b4836
Merge: 82819a9 285aaf8
Author: Michael DeHaan <michael.dehaan@gmail.com>
Date:   Sun Jul 15 14:38:28 2012 -0400

    Merge branch 'devel' of https://github.com/skvidal/ansible into skvidal_mount

commit 285aaf836c
Merge: 634c117 32b6879
Author: Seth Vidal <skvidal@fedoraproject.org>
Date:   Mon Jul 16 12:42:21 2012 -0400

    Merge remote-tracking branch 'upstream/devel' into devel

    * upstream/devel: (52 commits)
      format fixes to make fetch more usable
      ...

commit 634c11748e
Author: Seth Vidal <skvidal@fedoraproject.org>
Date:   Thu Jul 12 01:16:00 2012 -0400

    fix a bunch of small bugs in mount module - test with bind and local mounts

commit fcfd73de71
Author: Seth Vidal <skvidal@fedoraproject.org>
Date:   Wed Jul 11 20:46:14 2012 -0400

    fix some obvious bugs pointed out by #ansible

commit 13c3080383
Author: Seth Vidal <skvidal@fedoraproject.org>
Date:   Wed Jul 11 19:35:34 2012 -0400

    mount/fstab editor
13 years ago
Michael DeHaan 64c51ade1e Change the way we do with_items to make them happen next to each other in runner, which eliminates the problem of with_items and vars_files sometimes not playing nice with each other.
(Also a fix for the user module error handling when the user
is not present at the time of the return.  This can only really be caused by multiple ansible executions).
13 years ago
Michael DeHaan 931f9f1a61 Setup module no longer saves to disk, as templates are mostly useful in playbooks and this allows lots of simplifications
around file pathing and removes occasional permissions conflicts depending on how things are used.
13 years ago
Mark Theunissen f47cc1693d The MySQL modules 13 years ago
Jeremy Smitherman e5a6627d10 Removed unused recurse option in file module. 13 years ago
Michael DeHaan fd7e96d33e Merge pull request #578 from jeremysmitherman/boolean_parameters
Removed boolean parameter setting from user module.
13 years ago
Michael DeHaan 626e4cb003 Merge pull request #572 from goozbach/devel
fixes #569 apt module problems on old versions of apt-python
13 years ago
Jeremy Smitherman ecacb67d31 Added yes/no to user options instead of False comparison for force and remove options for user module 13 years ago
Michael DeHaan 3f5c4772be Merge pull request #575 from jeremysmitherman/apt-force
Added cmd modifications to use a force-yes option for apt module
13 years ago
Michael DeHaan 949f8b8fc5 Merge pull request #571 from sfromm/group
Group module fixes
13 years ago
Jeremy Smitherman a35a0f885e Added cmd modifications to use a force-yes option for apt module 13 years ago
Derek Carter f38b9d1ca7 added filter for future warning 13 years ago
Stephen Fromm ac3341cc12 Minor fix to user module to further streamline setting 'changed' flag 13 years ago
Derek Carter e261d49acc fixes #569 apt module problems on old versions of apt-python (namely debian 5.0) 13 years ago
Stephen Fromm 3a5f2126a6 Fixes to group module for better error handling
Takes a lot of the fixes to the user module and applies them to the
group module: provide stdout/stderr in result if available and call
fail_json() if the attempted action fails.
13 years ago
Michael DeHaan 3235da074e Merge pull request #568 from sfromm/user
User modules fixes
13 years ago
Michael DeHaan 8bb41bc627 Merge pull request #566 from jeremysmitherman/service-no-pid
Added additional output to service status checker
13 years ago
Stephen Fromm 09f025b7a0 Fixes to user module for better error handling
The user module now returns the output, both stdout and stderr, from
useradd, usermod, and userdel.  This should help debug cases why one of
those commands fail.  In addition, the user module will now call
fail_json() when the attempted command failed so as to properly
communicate a failure in a playbook.
13 years ago
Seth Vidal 2f11350665 modify user module so that password is NEVER logged before the command runs 13 years ago
Jeremy Smitherman 7af3bdc89e Added additional output to service status checker 13 years ago
John Kleint 375a1eaf43 Use iterative MD5 hashing. 13 years ago
Dave Hatton 55694db7c3 switch to hashlib.md5 or md5 instead of OS md5 commands 13 years ago
Peter Sankauskas fed1e9870c Assigning to boolean first 13 years ago
Peter Sankauskas fced8cf6b0 Getting the apt module to accept and understand a 'install-recommends' parameter which allows running apt with --no-install-recommends 13 years ago
Dave Hatton ecaa794f7f copy always returned change=true 13 years ago
Dave Hatton 9d85a55434 switch to shutil.copy rather than os.system(cp) 13 years ago
Dave Hatton 263fcab594 md5 allow copy if file is missing 13 years ago
Jeremy Smitherman 3003aa2d47 Added IndexError catch for copy module, IndexError is thrown if a destination file doesn't exist 13 years ago
Dave Hatton d47de18b6c improve error trapping for md5 13 years ago
Brad Olson be9ff7ff46 Fixes ansible/ansible#522, no longer creates comment in ~/.ssh/authorized_keys, does not create directory or file if state==absent. 13 years ago
Brad Olson 756df550f8 Fixes ansible/ansible#523. Removed 'with:' blocks so module works with Python 2.4 for CentOS 5 support, courtesy of mcodd/ansible@29af24b732. 13 years ago
Derek Carter fc4ae3e270 remove UID/GID from output 13 years ago
Derek Carter a548769792 removed print from debug code of file module 13 years ago
Derek Carter 82832021e8 file when UID or GID doesn't exist 13 years ago
Michael DeHaan efac68b636 Remove the -D module debug flag, which no longer is functional due to sudo pty requirements, and replace with -v/--verbose.
This flag will show playbook output from non-failing commands.  -v is also added to /usr/bin/ansible, but not  yet used.

I also gutted some internals code dealing with 'invocations' which allowed the callback to know what module invoked
it.  This is not something 0.5 does or needed, so callbacks have been simplified.
13 years ago
Ludovic Claude daf858648b Add basic support for Solaris 13 years ago
Ingo Gottwald a42167ca73 Copy module: Extended error handling and fixed error messages 13 years ago
Ingo Gottwald 270266e920 Added to copy module: Error handling for missing permissions on the copy destination 13 years ago
Michael DeHaan 25083953fc Merge pull request #495 from nafeger/devel
make copy module implemented closer to other newer modules when returning results
13 years ago
Nathan A. Feger 26816b72ec attempt to make copy more idiomatic. 13 years ago
Ingo Gottwald abe33a5881 Enhanced the service state recognition in the service module:
- Added Upstart support
- Added an initial unknown state
- Prevented state changes when the current state is not recognized
- Changed the keyword recognition to a safer method
13 years ago
Fred Alger 80f402aa9b Remove unused md5sum function from file module 13 years ago
Fred Alger 834f6a216d Make shell outs to md5sum work on FreeBSD and OS X
Tested with OS X local connection and Linux remote. The paths to the
md5sum and md5 commands are hardcoded to the most common location. This
will definitely fail if the commands are elsewhere, or if the md5
command doesn't support the -q 'quiet' option.
13 years ago
Stephen Fromm 4a6a3fd305 Conditionally import hashlib (issue #471)
Import hashlib if it is there, otherwise import md5.  Adds method
file_digest that wraps the logic on which module to invoke.
13 years ago
Michael DeHaan 7926ab5b95 Merge pull request #469 from nafeger/devel
Add support for older version of python-apt
13 years ago
Nathan A. Feger 1d553830f2 Add support for older version of python-apt 13 years ago
Stephen Fromm 9cf182c225 Add assemble module
This adds a module that concatenates (ie. assembles) a file from
fragments in a directory in alphabetical order.  It chains the file
module afterward to fix up ownership and permission.  This also adds
tests for the assemble module with fragments in assemble.d.
13 years ago
Michael DeHaan 9ff59090c2 capture possible chown stderr output 13 years ago
Michael DeHaan 5a8e61a610 Fix parsing error in file module when returning errors. 13 years ago
Michael DeHaan 4886b26ea9 Merge pull request #426 from dagwieers/facts
Add BIOS information and fix VMware detection (supports both IDE and SCSI)
13 years ago
Michael DeHaan 960e7c331c Merge pull request #433 from bradobro/authorized_key
Renamed module, fixed idempotency, removed debug param.
13 years ago
Brad Olson ab55b1a412 Renamed module, fixed idempotency, removed debug param. 13 years ago
Stephen Fromm 3eef7a629b Update get_selinux_facts in setup module
This switches to using selinux library calls instead of parsing the
output of sestatus.  This fixes issue #428 where the output was slightly
different than expected on F17.  Tested against debian (non-selinux),
centos5, centos6, and fedora17.
13 years ago
Dag Wieers 50ef1bb93f Add BIOS information and fix VMware detection (supports both IDE and SCSI disks) 13 years ago
Michael DeHaan ecb944892d Tweaks on previous refactoring of playbook, version bump a 0.4 reference, remove some debug, etc 13 years ago
Michael DeHaan 8a687b77f8 Merge pull request #391 from cocoy/reload-feature
Feature: Add state=reloaded
13 years ago
Michael DeHaan 0db6d73523 Merge pull request #393 from bradobro/fix_usergroup
0.4 fix, Remove call to undefined debug() in module 'user'
13 years ago
Brad Olson 2b8bc789c2 Remove call to undefined debug() in module 'user'.
I think when we stopped using stderr for debugging modules because
paramiko didn't like it, many modules used the idiom of defining
a debug function that used standard error. The def's and calls were
removed.

This looks like a stray debug() that didn't get removed and didn't
show up unless you alter a user's groups. If it's hit, 'user' fails
with a global undefined function error.
13 years ago
cocoy 25f808de8f Add state=reloaded 13 years ago
Wes Johnson 5da7f2aff4 starting fresh, doing it 'right'
Lost commit history, but this way I'm not introducing crappy commit
history in RP
13 years ago
Michael DeHaan 54a56e478b add fake module for 'raw' 13 years ago
Michael DeHaan 45100f03b1 Default git module to master branch so branch= is not required. 13 years ago
Michael DeHaan e6416def6b update comment about branch support, now that supported 13 years ago
Michael DeHaan eb41bfd3c8 Allow service 'enable' parameter be 'enabled', which is what I'd personally try to use. 13 years ago
Cosmin Luță c37014083a Added a new fact: network address for an interface 13 years ago
Cosmin Luță 204bffa21e Added parameter to the apt-get install command to prevent interactive conflict resolution 13 years ago
Michael DeHaan d118cf3e31 Merge pull request #336 from sfromm/issue122
Issue122 - have all modules log to syslog
13 years ago
Michael DeHaan 0fe8e51cb5 Merge pull request #337 from ordrin/devel
Support for branches in git module
13 years ago
Stephen Fromm aea022b002 Apply logging of arguments to modules (issue #122)
The ohai and facter modules use /usr/bin/logger to log the fact that
they have been invoked.  I added 'import os' to the ping module
so that it could have the same syslog statements as the other modules.
I separated the condensed:
    shlex.split(open(argfile, 'r').read())
into two separate statements similar to the other modules.
13 years ago
felix 7ee6ae3663 removed unecessary branch addition from switchver 13 years ago
felix c9fafcecbe added in support for branches in git module (now takes optional "branch") 13 years ago
Stephen Fromm 73ffec9710 Move import of spwd under a try block
Resolves issue #333.  If spwd is not available, the password will
be set regardless.
13 years ago
Brendan Beveridge be32d3b00f Merge remote-tracking branch 'ansible-origin/devel' into devel
Conflicts:
	library/user
13 years ago
Michael DeHaan b460980d7d Merge pull request #324 from lcosmin/devel
Prevent facter stderr messages from confusing ansible
13 years ago
Michael DeHaan 9b1add8c40 Reverting to apply correct attribution. 13 years ago
Michael DeHaan 3a027c2749 Don't let facter spew things to stderr and confuse Ansible, which now blends stdout/stderr due to paramiko
pty usage.

(This commit from lcosmin, manually applied due to github crossup on my part -- MPD)
13 years ago
Brendan Beveridge 5059588b17 remove now useless append check in user_mod 13 years ago
Brendan Beveridge 2635195185 Fixes issue #315
This adds some logic when usings groups possibly in combination with append

  if just specifying groups and the current groups do not match the list
     set groups
  if specifying groups with append and any group thats not in the current groups
     set groups with -a
13 years ago
Peter Sankauskas d814136ec9 Code was adding '-a' even when the user was already in the desired groups causing usermod to fail since there was no '-G' option. This is duplicate code (3 lines) from the 'group' section, so could be improved, but it works. 13 years ago
Cosmin Luță fba4d9232d Prevent facter stderr messages from confusing ansible 13 years ago
Michael DeHaan 36559badd5 Merge pull request #316 from skvidal/devel
fix up service module to make it start processes that are listed to be
13 years ago
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
Seth Vidal 81418afbbb fix up service module to make it start processes that are listed to be
running and to report errors from starting them
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
Martijn Koster f936616f91 comment typos 13 years ago
Stephen Fromm 1e5d34ba35 Add selinux support to file module
This adds the options: seuser, serole, setype, and serange to the file
module.  If the python selinux module doesn't exist, this will set
HAVE_SELINUX to False and punt in the related modules.

This takes the options the user provides and applies those to the
default selinux context as provided from matchpathcon().  If there is no
default context, this uses the value from the current context.  This
implies that if you set the setype and later remove it, the file module
will rever the setype to the default if available.
13 years ago
Michael DeHaan ff5d329374 Yum package state defaults to installed 13 years ago
Michael DeHaan 8152e44efd Also allow the apt module to use package or name as an alias for 'pkg' 13 years ago
Michael DeHaan b418632a8d Allow yum module to use package or name as an alias for 'pkg' 13 years ago
Michael DeHaan 529a194950 Upgrade apt message if no python-apt to intercept potential user questions. 13 years ago
Michael DeHaan 62224271e9 Merge pull request #131 from mgwilliams/feature-fetch-module
Fetch Module
13 years ago
Matthew Williams 611e3fec4c fetch 'module' -- working with paramiko and local connections 13 years ago
Michael DeHaan 1d75a29ec9 Allow variables coming in from the playbook and the API to be expressed as dictionaries throughout their full life cycle
such that nested data can be made available in templates and playbooks.
13 years ago
Michael DeHaan 38c7f1db4d Added 'creates=filename' to the shell/command module, which can skip command execution if a file
already exists
13 years ago
Seth Vidal 254f98bdf5 handle incorrect commands w/o '=' slightly better 13 years ago
Michael DeHaan 594b16a78b Merge pull request #114 from jhoekx/module-vars
Introduce task local variables.
13 years ago
Seth Vidal 66f9a697ed edit comment to reflect real args 13 years ago
Seth Vidal 8a61794234 add idempotent and ='s separated parameters to virt module to make people happy 13 years ago
Seth Vidal 415f4baa15 add virt module for libvirt interaction/support 13 years ago
Jeroen Hoekx ab86726a15 Introduce per task variables and push them to templates. 13 years ago
Matthew Williams c819f1715e apt module bugfix 13 years ago
Michael DeHaan 02d5e831ce have apt module raise an error if apt cannot be imported 13 years ago
Michael DeHaan f92760de6c If missing state or name or list parameter on yum module, raise error explaining what is up. 13 years ago
Michael DeHaan 4792021f47 Fix syntax error in user patch 13 years ago
Michael DeHaan e5d5b072db Merge remote branch 'public/integration' 13 years ago
Michael DeHaan 105a43a316 Merge pull request #104 from mgwilliams/feature-apt
improvements to apt module
13 years ago
Matthew Williams 9fdd7a837e improvements to apt module: state=latest, update-cache=yes|no, purge=yes|no 13 years ago
Matthew Williams ae38ee0b3f protecting against replacing file or directory with link 13 years ago
Seth Vidal 08163c6251 catch all exceptions and emit sensible errors - if we have a config file error this lets us know about it 13 years ago
Matthew Williams 24f61f1583 "link" state in file module 13 years ago
Michael DeHaan 5764ccdb0e Eliminate possible race condition in async_wrapper where ansible deletes the argsfile while the module
is still kicking off.  Should not happen except in modules that are somewhat slow to load and probably
can be fixed better than the included sleep, i.e. some IPC communication that the process has
launched and is ok to exit.  This works pretty well for now though.
13 years ago
Michael DeHaan 2511992659 Surface module debug (-D) to /usr/bin/ansible also 13 years ago
Jeroen Hoekx 38a33c54a6 Make copy module idempotent.
Check md5sum before overwriting a file. Unconditionally copying changes the timestamp.
13 years ago
Michael DeHaan d86dad76ba Be more flexible about where the service binary lives for better cross platform support. 13 years ago
Jeroen Hoekx 12d01a3444 Fix except statement in template module.
Python 2.4 (RHEL 5) does not know 'as'.
13 years ago
Michael DeHaan 81e3496037 Added preliminary support for --sudo to ansible, playbook support and further testing pending. 13 years ago
Michael DeHaan a05b75dbbb Merge pull request #101 from sfromm/user-module
Supplementary group membership now in users module
13 years ago
Michael DeHaan 13df76d3d5 Merge pull request #100 from sfromm/group-module
Remove support for membership from group module
13 years ago
Christopher Johnston 509c330f53 add support for running and started - both will do the same thing 13 years ago
Stephen Fromm a379d58cdb Drop support of group membership in group module
Use the user module to define group membership.
13 years ago
Stephen Fromm 416eb36b9a Update user module to support supplementary group membership
This adds two options to the user module: groups and append.  groups is
a comma-delimited list of supplementary groups a user should belong to.
If a user is currently a member of a group not listed in groups, the
user will be removed from it.  To change this behavior, use append=yes.
This will append the user to the list of supplementary groups and *not*
remove the user from unlisted groups.
13 years ago
Stephen Fromm db677954ac Add group module to manage groups and group membership
This relies on groupadd, groupmod, groupdel, and gpasswd utilities on
the system.  You can optionally modify the gid for the group.  You can
also add/remove a user to/from a group with the option member.  Member
state is defined with the option memberstate.
13 years ago
Stephen Fromm 8592b3b40d Update user module to support group name
This changes the gid option to group.  One may provide a primary group
as either a gid or a name.  The module will then check to verify that
the group already exists.  If the group does not already exist, the
module will fail.
13 years ago
Seth Vidal 37f599efc3 make sure latest outputs an error if the thing you've listed as 'latest'
is not there at all or even updateable
13 years ago
Seth Vidal 1d04ec89b7 fix up latest so it behaves like latest should
if installed and updated available: apply update
if not installed and available: install
13 years ago
Seth Vidal a27be2651c make yum module work with older yum for rhel5 :( 13 years ago
Matthew Williams 3046f743d9 removed hack 13 years ago
Matthew Williams bf0f3eac1f catch jinja template errors in template module 13 years ago
Matthew Williams 9d9e3d8c56 resetting template.. previous commit not needed 13 years ago
Matthew Williams d9a464ee9d added format_advanced jinja filter to template module 13 years ago
Matthew Williams e2deb94e73 trimmed superfluous code from apt module 13 years ago
Matthew Williams e85355f054 cleaned up apt module style 13 years ago
Matthew Williams 90ba14d60e preliminary apt module 13 years ago
Michael DeHaan 6dda6f12dc Applying callback model to runner, and using that in playbooks, so output can be more immediate in playbooks.
(Runner still does not use callbacks for default output)
13 years ago
Michael DeHaan b213437bfa Added 'shell' to modules with a note that it doesn't really exist :) 13 years ago
Michael DeHaan 6aa10691c1 Merge pull request #93 from sfromm/user-module
User module
13 years ago
Stephen Fromm f4835477b0 Add user module to create, modify, and delete user accounts
This relies on useradd, usermod, and userdel utilities on the system.
The argument name is required; if state is not provided, present is
assumed.  Other options supported for creating or modifying an existing
account:  uid, gid, comment, home, shell, and password.  If managing the
password, it must already be encrypted.  When creating an account, you
can also provide the argument createhome to control whether the home
directory is created.  Arguments supported for deleting an account are:
force (remove account even if user is logged in) and remove (remove home
directory).
13 years ago
Michael DeHaan e6406fa5a7 Allow variable expressions to be stored as variables themselves, do some things to allow setup strings
to more easily contain spaces without being mangled, which is neccessary because of the above.
13 years ago
Michael DeHaan a5f4ca50b8 Ratchet up logging a few notches prior to controlling w/ verbosity settings 13 years ago
Michael DeHaan faa59e5ef1 Add the failtest module, primarily for easy development testing purposes. RPMs/etc need not ship this. 13 years ago
Michael DeHaan 60bf82d266 Remove comment about FIXME that is already resolved 13 years ago
Michael DeHaan 311b93995c Add some comments 13 years ago
Michael DeHaan 6874d853c9 Fix changed=True/False detection when specifying mode= 13 years ago
Michael DeHaan 4ad885111b Disable debug 13 years ago
Michael DeHaan 5004d21f10 Return file info about the file regardless of changes made 13 years ago
Michael DeHaan be55145a1e Initial crack at the file module 13 years ago
Michael DeHaan a735dd2b17 Added the 'test-module' script, useful for testing modules without running them in Ansible. 13 years ago
Michael DeHaan 4bde4926c3 Modules don't have to return JSON, key=value pairs is ok. 13 years ago
Michael DeHaan 40fd778e2c 'shell' is a magic module that executes the command module with shell=True 13 years ago
Michael DeHaan 696b67f935 Fix async to use the new argfiles method (wrapping brain around rock, really must write module development guide) 13 years ago
Michael DeHaan aeea46678d Fix the copy module to use the argsfile method 13 years ago
Michael DeHaan 917f929e86 Fix template module 13 years ago
Michael DeHaan 6b152c94b9 Correct the setup module 13 years ago
Michael DeHaan 3ea9174ed7 Split argsfile handling into subfunction, attempt to apply argsfile logic to setup 13 years ago
Seth Vidal 1f53c89b14 convert so they handle argsfiles rather than arguments 13 years ago
Seth Vidal a9a9e3af65 modify yum to be used with argsfile and fix a number of items with
how it handles "advanced" pkgspecs for the state= cases
13 years ago
Seth Vidal 0b94c78042 yum module
add state=latest and clean up the output cases
added some fixmes on verification
13 years ago
Michael DeHaan db7ba87111 Add polling logic in runner such that all actions get kicked off everywhere then polling
happens only on needed hosts, allowing some hosts to fail and drop out of the running.
13 years ago
Michael DeHaan 49a636d8a0 Fixed up async and polling logic. 13 years ago
Michael DeHaan 5be1a612d3 Add async polling logic to runner. Will add to playbook shortly, have to diagnose why paramiko
is not letting async_wrapper daemonize itself when it does work fine when directly executed.
13 years ago
Seth Vidal a99b491b32 touch up to yum module.
fix a couple of bugs
comment about state='latest'
13 years ago
Michael DeHaan 209760f8f6 Add manpage for ansible-playbook, since it is a command. More detailed docs will remain on the web site. 13 years ago
Michael DeHaan 1699013fbd Rename 'ensure' to 'state' so it lines up with the service module 13 years ago
Seth Vidal b576e389b1 runner buglet and yum module
runner: fix buglet causing logger output to include a u for the command
yum: add yum module:
   ensure=installed pkg=name/name.arch/name-ver-rel.arch
   ensure=removed pkg=name/name.arch/name-ver-rel.arch
   list=installed
   list=updates
   list=available
   list=pkgspec
   list=repos
13 years ago
Michael DeHaan 8d57ceecf1 Factoids and push variables via setup are now available to be templated in command args
as well as template files.  PLUS, variables are now expressed in playbooks without having
to know about the setup task, which means playbooks are simpler to read now.
13 years ago
Michael DeHaan cb5929dad7 Setup module tests 13 years ago
Michael DeHaan c71afe35d6 Async tests complete. Fixed bug in async_wrapper 13 years ago
Michael DeHaan c86b388812 Strip trailing newlines from command module, which happens in some shell commands 13 years ago
Michael DeHaan 6a0b793578 Remove debug comments 13 years ago
Michael DeHaan 8e07d83ad1 Async module, mostly operational, daemonizing/watch code may have bugs 13 years ago
Michael DeHaan 718e2930b2 async module now forks 13 years ago
Michael DeHaan 45c40524ef Time limit needs to be passed to async_wrapper. 13 years ago
Michael DeHaan a06d8859fa Added start of async_status script.
Parameters:
  jid=X
  mode=status|cleanup (default status)

status = returns results from the job
cleanup = deletes the job file, should also kill the job if still running (TODO)
13 years ago
Michael DeHaan eaa7714ff8 Laying the groundwork for async mode, async status script still needs to be done, and async_wrapper
still needs to daemonize.  Then, once done, playbook can be taught how to poll async within the
timing window.
13 years ago
Michael DeHaan e9a24cdad4 Extensive refactoring of bin/ansible, moving most output functions into lib/ansible/utils to
encourage readability and make things more maintainable.
13 years ago
Michael DeHaan 1420c49277 Still seeing some weirdness from ohai but we can probably simplify
this until we figure out what that is.
13 years ago
Michael DeHaan e6a1acf756 Let "all" be an alias for "*" in patterns, fix output bug on non-command execution, make clean now removes the build dir 13 years ago
Michael DeHaan c8b1bbc7ea make command module error when no -a more obvious as command is the default module and someone
may forget about -a.  The CLI already warns about no host pattern by pulling up usage.
13 years ago
Michael DeHaan 847846af0e -p has been replaced by a required option. Various docs changes. 13 years ago
Michael DeHaan 19fdb7305d have command module raise an error if no arguments are supplied 13 years ago
Michael DeHaan 281f96b8dd merge Seth's ansible-command script with ansible proper, so we can do nice output, one line output,
and treeish saving everywhere.

there are probably some quirks here we'll want to refine further later, for instance, we should
be able to do nicer things with "can't contact host tracebacks".
13 years ago
Michael DeHaan de1d0011bc Take darkened hosts out of the playbook rotation, fix error handling in template
module so that if a directory path is specified we get valid output
13 years ago
Michael DeHaan 7de661dd2c Add ansible command, fix import error in runner 13 years ago
Michael DeHaan be4cb64c92 Relicensing to GPLv3, all previous committers ok'd on mailing list. 13 years ago
Michael DeHaan 320ce8f5f1 If ohai is present, do the same with facter and make it available for the templating engine 13 years ago
Michael DeHaan 186dab4dff Include facter variables for free in setup JSON (prefix with 'facter'.
Also sort keys in JSON file and pretty print
13 years ago
Michael DeHaan ba4e36a9a9 Rename 'ensure' to 'state' because I think it's a bit cleaner and doesn't imply
all modules take a common parameter name.  But more or less we still work idempotently
in modules.
13 years ago
Michael DeHaan 228d1a0834 A really basic git module. Improvements welcome. 13 years ago
Seth Vidal 39f42cfd75 when it is an IOError or an OSError - return a normal error message instead of a traceback barf 13 years ago
Michael DeHaan 61d064d011 Fixed up KV munging in runner, misc fixes to copy, setup, and template modules 13 years ago
Michael DeHaan e5f62f20b1 make copy & template module take key/value parameters so we're consistent. Only the command
module works differently now

starter manpage for modules

allow template file location to be passed into template & setup modules
13 years ago
Michael DeHaan deb71da91e trim md5sum string so it does not contain the filename
also fix a bug/typo in the reporting from playbook
13 years ago
Michael DeHaan bfd93081ae Have to return the return code on failure, it's a rule! 13 years ago
Michael DeHaan d308254eae A basic service module with 'ensure' idempotence semantics. Playbook updated to use service
module vs command module for restarting.  May be some bugs and requires the service to implement 'status' -- and probably some better error handling (i.e. return JSON with "failed" element if failed).

Improvements welcome.
13 years ago
Michael DeHaan b44ae0af90 applying indentation patch from skvidal 13 years ago
Michael DeHaan 6cceaa5f6a Implment copy with an actual minion-side module such that we can get md5sum's and
onchange events like Puppet's file providers do.
13 years ago
Michael DeHaan 440bac4a95 Added remote templating engine using jinja2, see examples/playbook.yml for usage.
Cleanup is due in runner.py
13 years ago
Michael DeHaan 5d6b0280d5 Added stub for template execution, WIP. 13 years ago
Michael DeHaan 102385e4ad Added a setup module which can be used to place key-value JSON data
on the system for use in a later template module.   These values
could also be used for module-specific config.
13 years ago
Michael DeHaan 9e931f323c Update ohai module to run on older python clients. 13 years ago
Michael DeHaan f17c4ca4b2 Added an 'ohai' module. Some weird JSON hackage to get it to work. 13 years ago
Jeremy Katz 24e10dc2e8 Don't use a shell and thus avoid a whole class of problems 13 years ago
Jeremy Katz ef8ea13495 Fall back to standalone simplejson module
CentOS5 has python 2.4 which doesn't have a built-in json
module
13 years ago
Michael DeHaan a2a8deaeaa Added command module 13 years ago
Michael DeHaan 3807824c6d Added file copy support w/ readme updates 13 years ago
Michael DeHaan 631ac37843 Example facter module. Look how quick that was. 13 years ago
Michael DeHaan c4f6d493b3 Initial library directory 13 years ago