Commit graph

565 commits

Author SHA1 Message Date
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.
2012-09-26 23:51:59 -04:00
Michael DeHaan
af8f11e3f7 Merge pull request #1096 from sfromm/issue1067
Ignore failure of stop command if start succeeds with state=restarted
2012-09-26 04:02:02 -07:00
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.
2012-09-25 22:51:13 -07:00
Stephen Fromm
f52624f6d2 Give nice error message if destination directory doesn't exist (issue #1048) 2012-09-25 14:57:32 -07:00
Michael DeHaan
2f97afb634 Merge pull request #1071 from dhozac/git-expanduser
User-expand the destination path of the git module
2012-09-23 10:21:04 -07:00
Michael DeHaan
0b3e05d9a4 Merge pull request #1066 from jpmens/doc3_lineinfile
Added DOCUMENTATION to lineinfile module
2012-09-23 10:20:08 -07:00
Michael DeHaan
4e6d89b5b5 Merge pull request #1073 from dcoutu/devel
Added cases for 'dead but subsys locked' status
2012-09-23 10:19:19 -07:00
Dave Coutu
9bb83067bc Added cases for 'dead but subsys locked' status 2012-09-21 14:55:59 -04:00
Daniel Hokka Zakrisson
f6af88fe9f User-expand the destination path of the git module 2012-09-21 19:20:05 +02:00
Jan-Piet Mens
5a75433ce9 Added DOCUMENTATION to lineinfile module 2012-09-19 22:29:11 +02:00
Jan-Piet Mens
60e0410298 Tweak DOCUMENTATION YAML as per latest 991 2012-09-19 16:09:26 +02:00
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 61e9b27df25c36015c2b1b4a58155ccfdfb993a0
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 3f6f3291dffefa2a802def25a1e8bd38de0cba75
Author: Aleksej Romanov <alopropoz2@yandex.ru>
Date:   Thu Sep 13 20:41:31 2012 +0700

    'force' option for 'file' module.

commit 6223bba94160c60153448655803d084f7eaa5168
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