Commit graph

554 commits

Author SHA1 Message Date
Michael DeHaan
1bd9ea6440 Merge pull request #1062 from dagwieers/wait_for-fix
Fix on older python versions, plus various improvements
2012-09-19 06:36:56 -07:00
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
2012-09-19 15:19:59 +02:00
Michael DeHaan
4cd3262f50 Merge pull request #1054 from jpmens/geturl_doc1
First attempt at standardizing DOCUMENTATION string
2012-09-19 06:09:39 -07:00
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.
2012-09-18 21:04:42 -04:00
Jan-Piet Mens
e041c2e2cd First attempt at standardizing DOCUMENTATION string (new DICT) 2012-09-18 14:04:43 +02:00
Michael DeHaan
d77be4eecf Merge pull request #1052 from romeotheriault/add-SunOSVirtual-facts
Adding SunOSVirtual facts
2012-09-17 17:27:43 -07:00
Romeo Theriault
d72eaa3fc5 Adding SunOSVirtual facts 2012-09-16 23:14:06 -10:00
Stephen Fromm
65fe7b7003 Update package manager fact innards to a list of dicts 2012-09-16 21:42:55 -07:00
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.
2012-09-16 21:42:54 -07:00
Michael DeHaan
7df0e5259f Merge pull request #1038 from bcoca/atomic_copy2
Atomic copy2
2012-09-14 15:53:49 -07:00
Ali Asad Lotia
c0aac03b0c url_get module returns dest
The url_get module now includes the destination in the returned JSON.
2012-09-14 08:34:41 +01:00
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.
2012-09-14 08:02:30 +01:00
Daniel Hokka Zakrisson
56b1a8ceed Invoke is_installed correctly from rpm path 2012-09-13 12:34:52 +02:00
Brian Coca
88d1285f33 time is what i wanted, not gmtime
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2012-09-12 14:52:54 -04:00
Brian Coca
06b914c5b3 small fix to prevent temp file from living past its succesful usage
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2012-09-12 14:47:06 -04:00
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>
2012-09-12 14:42:51 -04:00
Michael DeHaan
565f336182 lineinfile should use 'search' everywhere 2012-09-08 14:53:34 -04:00
Michael DeHaan
14a9c3ab9e Line in file regexep should match a portion of the line, not the whole line! 2012-09-07 21:03:59 -04:00
Michael DeHaan
5b57011152 Merge pull request #1027 from mcodd/setup_bug_python24
setup not python24 compatible in 0.7
2012-09-08 05:24:09 -07:00
Michael DeHaan
335f136e71 Merge pull request #1023 from lorin/postgres-user-fix
Fix postgresql_user bug
2012-09-08 05:23:29 -07:00
Matt Coddington
c0638842d8 make this python24 compatible 2012-09-07 22:47:03 -04:00
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.
2012-09-07 16:24:00 -04:00
Seth Vidal
9d88b3eedd add import sys to virt module b/c it needs it if the libvirt python
module is missing
2012-09-07 16:05:42 -04:00
Michael DeHaan
4280e00d56 Merge pull request #1000 from mavimo/patch-1
Add support to removes control param
2012-09-06 17:52:02 -07:00
Michael DeHaan
7ef3e7dccb Merge pull request #1003 from bladypirat/devel
added support for custom port definition for postgresql_* modules
2012-09-06 17:51:35 -07:00
Michael DeHaan
49bef3f6c2 Merge pull request #1005 from dagwieers/cmdline
Add /proc/cmdline information to the default facts
2012-09-06 17:51:19 -07:00
Jan-Piet Mens
b36aa61237 Add support for RSA/DSA SSH host key detection in setup module for OS/X
s/<8spaces>/<4spaces>/g
2012-09-06 20:40:21 +02:00
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).
2012-09-06 09:35:33 +02:00
Piotr Kweclich
8360f9f46c added support for custom port definition 2012-09-05 18:18:30 +02:00
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
```
2012-09-05 14:06:47 +03:00
Michael DeHaan
eed031cd82 Check for ipv6 2012-09-04 21:22:47 -04:00
Michael DeHaan
aa704a6111 backuplocal => backup_local for API standardization reasons 2012-09-04 19:49:49 -04:00
Michael DeHaan
b97e2a6f5a Merge branch 'backup-common' of https://github.com/dhozac/ansible into devel 2012-09-04 19:45:39 -04:00
Michael DeHaan
c69c3d6e18 Merge pull request #995 from mattupstate/devel
Use `get_bin_path` properly for supervisorctl module
2012-09-04 16:44:22 -07:00
Daniel Hokka Zakrisson
a5d63532d3 Add backup to assemble 2012-09-04 16:04:53 +02:00
Daniel Hokka Zakrisson
2a8b92954f Add backups to lineinfile 2012-09-04 16:04:53 +02:00
Daniel Hokka Zakrisson
dfcb9d3c2d Move backup to module_common 2012-09-04 16:04:53 +02:00
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.
2012-09-04 14:22:53 +10:00
willthames
d4c4a51866 Subversion dest should allow ~ expansion
Used os.path.expanduser on dest to allow e.g. ~/svn/repo as
a destination
2012-09-04 10:15:13 +10:00
Michael DeHaan
8f220a4f77 Always pipe stderr in the setup module to avoid JSON interference. 2012-09-02 12:34:28 -04:00
Matt Wright
d52f1d969b Use get_bin_path properly 2012-08-31 15:03:26 -04:00
Matt Wright
a092eadbbb Fix supervisorctl module after merge issue 2012-08-31 11:03:14 -04:00
Michael DeHaan
8e02b165f1 chmod +x 2012-08-30 19:43:14 -04:00
Michael DeHaan
b0ac7e07b0 Merge branch 'binpath' of https://github.com/sfromm/ansible into devel
Conflicts:
	library/supervisorctl
2012-08-30 19:24:09 -04:00
Michael DeHaan
a454db5345 Merge pull request #970 from mattupstate/devel
Improve apt_repository and supervisorctl
2012-08-30 16:21:47 -07:00
Michael DeHaan
90f051f818 Merge pull request #971 from sfromm/seboolean
Add seboolean module
2012-08-30 16:10:30 -07:00
Michael DeHaan
092bd8e3da make parameter required 2012-08-30 19:09:02 -04:00
Michael DeHaan
4da4c31dfb Merge pull request #974 from goozbach/add_selinux_module
add selinux module
2012-08-30 16:02:16 -07:00
Derek Carter
2aa760a3fc add selinux module 2012-08-30 15:29:59 -04:00
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.
2012-08-30 11:01:37 -07:00