Commit graph

4383 commits

Author SHA1 Message Date
Toshio Kuratomi
135fa41e3a Update submodules refs 2015-07-07 10:54:36 -07:00
Marc Abramowitz
314bae2a9e Don't wrap text for AnsibleParserError
This allows not messing up the wonderful error reporting that is
carefully created. Instead of:

    $ ansible-playbook foo.yml
     [ERROR]: ERROR! 'foo' is not a valid attribute for a Task  The error appears
    to have been in '/Users/marca/dev/git-repos/ansible/foo.yml': line 4, column 7,
    but may be elsewhere in the file depending on the exact syntax problem.  The
    offending line appears to be:    tasks:     - name: do something       ^ here

we get:

    $ ansible-playbook foo.yml
    ERROR! 'foo' is not a valid attribute for a Task

    The error appears to have been in '/Users/marca/dev/git-repos/ansible/foo.yml': line 4, column 7, but may
    be elsewhere in the file depending on the exact syntax problem.

    The offending line appears to be:

      tasks:
        - name: do something
          ^ here

which is much nicer.
2015-07-07 09:31:00 -07:00
Brian Coca
a6aedbcc51 now correctly picks up old become password host vars 2015-07-06 23:24:00 -04:00
Toshio Kuratomi
49e17b8ff6 Get rid of an unused import so that we don't have circular imports 2015-07-06 14:19:13 -07:00
Toshio Kuratomi
5b0b1f8da6 unquote strings in the ansible config file 2015-07-06 14:12:10 -07:00
Toshio Kuratomi
f44f9569e1 Test unquote works as expected and fix two bugs:
* escaped end quote
* a single quote character
2015-07-06 13:16:42 -07:00
James Cammarata
1d8ccfb99f Fixing includes where the included file is "{{item}}" 2015-07-06 14:30:56 -04:00
James Cammarata
46b33152c8 Check for ansible_su*_pass as well as _password
Fixes #11500
2015-07-06 13:49:25 -04:00
Toshio Kuratomi
378c8fd549 Update submodule refs 2015-07-06 10:44:27 -07:00
Brian Coca
2c9d1257ba put type checking before looking against choices array to always get type comparrison correctly 2015-07-05 19:55:11 -04:00
Brian Coca
22a0aa016f pbrun not forced to use local daemon anymore 2015-07-05 15:51:12 -04:00
Brian Coca
2a0cc38922 Merge pull request #11494 from jonhadfield/add_iso8601_basic_datetime
Add facts for datetime 8601 basic and basic short.
2015-07-05 14:55:20 -04:00
Brian Coca
05be30168d return empty string when config file is not used 2015-07-05 12:51:05 -04:00
Jon Hadfield
82e00b1022 add facts for datetime 8601 basic and basic short. 2015-07-05 17:23:22 +01:00
Brian Coca
51efd765be Merge pull request #11415 from msabramo/remove_unnecessary_imports
Remove unnecessary imports
2015-07-05 01:09:28 -04:00
James Cammarata
9155af20e3 Make sure vars in debug tasks aren't templated too early
If the syntax var={{something}} is used, that can be templated too
early in the post_validation, leading the debug module to fail when it
tries to template the same value in turn.
2015-07-05 01:06:54 -04:00
James Cammarata
38cc54b717 Make 'vars' a copy to prevent recursion issues 2015-07-04 23:34:07 -04:00
James Cammarata
bddadc9565 Fix bug in relative path determination 2015-07-04 23:18:54 -04:00
James Cammarata
38c5da9d2a Revert "Backing out vars magic variable due to failed tests"
This reverts commit 388e46a485.
2015-07-04 22:48:20 -04:00
James Cammarata
388e46a485 Backing out vars magic variable due to failed tests 2015-07-04 22:44:45 -04:00
James Cammarata
76c5be3a31 Add 'vars' to magic variables 2015-07-04 21:28:28 -04:00
Marc Abramowitz
0676157897 Remove unnecessary imports 2015-07-04 17:41:36 -07:00
Brian Coca
552715f072 added validate and backup doc fragments 2015-07-04 17:58:23 -04:00
Brian Coca
5f791329ce now verbose mode shows config file used 2015-07-04 10:23:49 -04:00
James Cammarata
67671e328a Fix callback loading issue a slightly different way 2015-07-04 00:07:17 -04:00
James Cammarata
a51c165157 Revert "load callbacks on init again as they did not seem to load with new call from executor"
This reverts commit cf4ed9a556.
2015-07-03 23:52:59 -04:00
James Cammarata
2ddd83360a Revert "removed 2nd load_callbacks that was causeing dupe output"
This reverts commit de98dc2968.
2015-07-03 23:52:49 -04:00
Brian Coca
4d35d8bd31 properly booleanify copy field 2015-07-03 18:59:49 -04:00
Pierre-Louis Bonicoli
720e184f88 implement jinja2 header overrides 2015-07-03 22:27:49 +02:00
Brian Coca
de98dc2968 removed 2nd load_callbacks that was causeing dupe output 2015-07-03 14:28:10 -04:00
Brian Coca
bdccfa71a8 Merge pull request #11482 from verm666/issue-1627
facts: add aliases to ansible_all_ipv4_addresses on OpenBSD
2015-07-03 13:57:10 -04:00
Brian Coca
5122455db8 ported missing sequence updates from 1.9 2015-07-03 13:54:51 -04:00
Brian Coca
cf4ed9a556 load callbacks on init again as they did not seem to load with new call from executor 2015-07-03 13:01:21 -04:00
Brian Coca
9e37402cb7 added ramfs to selinux ignored filesystems
as reported in #11442
2015-07-02 17:25:05 -04:00
James Cammarata
31239f44cd Show failed result on a retry message
Fixes #10099
2015-07-02 10:33:41 -04:00
verm666
d91947ee96 facts: add aliases to ansible_all_ipv4_addresses on OpenBSD 2015-07-02 15:36:56 +03:00
James Cammarata
08ad05c83b Make sure callbacks are loaded in the tqm a bit earlier
Fixes #11463
2015-07-02 02:51:24 -04:00
Brian Coca
1b74102ab3 Merge pull request #11435 from hfinucane/ipwrap-generator
Treat generators like lists and tuples
2015-07-01 18:34:44 -04:00
Toshio Kuratomi
71f72b655e Merge pull request #11432 from sivel/splitext-filter
Add splitext filter
2015-07-01 13:17:56 -07:00
James Cammarata
9341148f04 Throw an error if with_first_found finds no files by default
Fixes #9976
2015-07-01 16:09:34 -04:00
Toshio Kuratomi
b11e69f3d0 Merge pull request #11452 from soarpenguin/devel
fix type error.
2015-07-01 12:41:05 -07:00
Brian Coca
13ac0ba1fe now setuptools will pull the data dir with templates that are used by galaxy init 2015-07-01 11:12:10 -04:00
Brian Coca
08e981b9f4 corrected api permissions 2015-07-01 11:12:10 -04:00
James Cammarata
cf51d0a790 Fixing up some check-mode stuff 2015-07-01 15:10:25 -04:00
James Cammarata
ad53b6f36a Merge pull request #11461 from pilou-/shell_removed
Fix "AttributeError: 'ActionModule' object has no attribute '_shell'"
2015-07-01 14:35:27 -04:00
James Cammarata
7fa37870c8 Merge pull request #9683 from justinwyer/logical-block-size-and-sectors-9549
Disk size for advanced drives over 2 TB is incorrect
2015-07-01 14:14:04 -04:00
James Cammarata
dcb9b5a69f Make --module-path work and expand tilde's in paths
Fixes #9937
Fixes #9949
2015-07-01 12:39:39 -04:00
Toshio Kuratomi
fffb65d45f Update submodule refs 2015-07-01 09:34:17 -07:00
James Cammarata
2e386deeae Make undefined variables in debug var=foo more obvious
Fixes #9935
2015-07-01 11:55:00 -04:00
James Cammarata
b6c52ce115 Allow role variables to be optionally kept in a private scope 2015-07-01 11:33:14 -04:00
Pierre-Louis Bonicoli
4d4512940d Fix "AttributeError: 'ActionModule' object has no attribute '_shell'"
'_shell' was removed with commit 2a5fbd8570
2015-07-01 17:22:09 +02:00
Brian Coca
dcb06ac7a8 Merge pull request #11445 from emonty/devel
Fix a tiny typo
2015-07-01 09:34:32 -04:00
Brian Coca
0a2a9557b8 now allows for users to use ^D to not input a password
fixes #11413
2015-07-01 05:22:49 -04:00
Benno Joy
4889d04fc6 fixes 11448 , yum with with_items 2015-07-01 10:02:54 +05:30
soarpenguin
c6ed1ff4ad fix type error. 2015-07-01 12:16:01 +08:00
James Cammarata
7c1d569a26 Make sure tags are pulled out of playbook includes properly
Fixes #9862
2015-06-30 16:09:04 -04:00
Toshio Kuratomi
54e7c8a3f7 Add python requirement to the documentation for openstack modules requiring shade 2015-06-30 12:51:20 -07:00
Monty Taylor
e89f1186e7 Fix a tiny typo 2015-06-30 14:46:43 -04:00
James Cammarata
ec4d1b11df Fix some more handler issues
* Only notify handlers when the task is changed
* Don't run handlers on hosts which have failed
2015-06-30 14:44:41 -04:00
James Cammarata
2576f480fd Restoring a state check to play_iterator, which otherwise broke block functionality 2015-06-30 13:57:47 -04:00
Matt Martz
65fdcf8b9d Check for name or pkg when templating squashed items. Fixes #11430 2015-06-30 10:15:25 -05:00
James Cammarata
0cfebb8760 Fixes a bug whereby tags are expected to be a set
Fixes #11424
Fixes #11429
2015-06-30 07:18:41 -04:00
Brian Coca
d149ea5222 ported timer.py callback to v2 2015-06-29 20:45:50 -04:00
Brian Coca
7416e00541 fixed condition for loading whitelisted callbacks 2015-06-29 20:45:50 -04:00
James Cammarata
9785e5397e Fix typo in SharedObjectLoader field basedirs 2015-06-29 22:51:53 -04:00
James Cammarata
927072546b Fixing up some issues with plugin loading 2015-06-29 22:49:25 -04:00
James Cammarata
2a5fbd8570 Winrm fixes for devel
* Include fixes for winrm connection plugin from v1 code
* Fixing shell plugin use
2015-06-29 22:49:25 -04:00
Henry Finucane
2d1cb7f328 Treat generators like lists and tuples 2015-06-29 14:55:11 -07:00
Toshio Kuratomi
8a76371a1c Merge pull request #11394 from dlundquist/ipaddr-slaac-filter
IPv6 SLAAC address computation filter
2015-06-29 14:23:50 -07:00
Matt Martz
4059904a18 Add splitext filter 2015-06-29 15:39:57 -05:00
Toshio Kuratomi
be6db1a730 Refactor the argspec type checking and add path as a type 2015-06-29 08:05:58 -07:00
James Cammarata
21c14363fd Allow callback plugins to be whitelisted 2015-06-29 10:56:28 -04:00
James Cammarata
24226646fc When loading the play hosts list, enforce some consistency
Fixes #9580
2015-06-28 01:00:32 -04:00
James Cammarata
9d9cd0c42c Handle getting the ds for Conditionals which may not be mixed in 2015-06-28 00:30:27 -04:00
James Cammarata
f433e709f2 Fix templating of hostvars values
Also adds play information into the hostvars creation, to assure the
variable manager used there has access to vars and vars_files

Fixes #9501
Fixes #8213
Fixes #7844
2015-06-27 21:04:16 -04:00
James Cammarata
8ef28253e3 Properly catch and report conditional test failures 2015-06-27 15:37:10 -04:00
James Cammarata
0eb1c880dd Use itertools instead of set for tags, as the data may not hash well
The tags field may contain bad data before it is post_validated, however
some methods assumed it would be a simple list or string. Using itertools
gets us around the problem of the data potentially not being hashable

Fixes #9380
2015-06-27 15:19:44 -04:00
Brian Coca
af49944ab2 Merge pull request #11398 from resmo/for-ansible
cloudstack: fixes and updates
2015-06-27 13:28:37 -04:00
James Cammarata
bb8d87ceb6 Allow field attributes which are lists to validate the type of the list items
Starting to apply this for tags too, however it is not correcting things
as would be expected.
2015-06-27 01:01:51 -04:00
James Cammarata
f68223b9ed Don't add module args into variables at all
Getting recursive errors otherwise, so this is probably not something
we want to do. This most likely only worked in v1 due to the fact that
module args were templated earlier than the point in Runner() when
they were fed into the templating engine.
2015-06-27 01:01:51 -04:00
Brian Coca
e153f76c95 now validate that we do get a vault password 2015-06-27 00:02:24 -04:00
Uli Martens
25fc0c7e1b Fixing bug in failed_when results introduced by c3c398c 2015-06-26 16:55:06 -04:00
James Cammarata
b723f9a09a Allow squashed loop items to use name=foo-{{item}}
Fixes #9235
Fixes #11184
2015-06-26 13:56:45 -04:00
Rene Moser
7952723530 cloudstack: fix domain name is not unique, use full path 2015-06-26 09:25:26 +02:00
Rene Moser
b9b1e294d7 cloudstack: add get_or_failback() 2015-06-26 09:25:26 +02:00
Dustin Lundquist
cf7744f2f1 IPv6 SLAAC address computation filter
Jinja2 filter to compute SLAAC address.

Usage:
    {{ '2db8::/64' | slaac(ansible_eth0.macaddress) }}
2015-06-25 13:20:21 -07:00
Toshio Kuratomi
9911a947ed Vendorize match_hostname code so that ansible can push it out to clients along with the code that uses it. 2015-06-25 08:17:58 -07:00
Toshio Kuratomi
00aed57295 Update submodule refs 2015-06-25 07:13:46 -07:00
Toshio Kuratomi
160e71e2cf Some flake8 cleanup 2015-06-25 07:13:37 -07:00
James Cammarata
332ca927d9 Fix parent attribute lookup
Using 'value is None' instead of 'not value', in order to account
for boolean values which may be false

Fixes #11232
2015-06-24 20:57:53 -04:00
James Cammarata
256a323de5 Submodule update 2015-06-24 15:03:34 -04:00
Toshio Kuratomi
548a7288a9 Use BUFSIZE when putting file as well as fetching file. 2015-06-24 01:00:22 -07:00
Toshio Kuratomi
270be6a6f5 Fix exec_command to not use a shell 2015-06-23 22:27:45 -07:00
Toshio Kuratomi
a1a7d6c462 Fix forwarding the user-given params from fetch_url() to open_url() 2015-06-23 15:17:26 -07:00
Toshio Kuratomi
e461241d7b Fix fetch_file() method 2015-06-23 14:45:44 -07:00
James Cammarata
d0d9be30d5 Correctly compile handler blocks for dependent roles 2015-06-23 15:48:48 -04:00
James Cammarata
0b16580567 Add in playbook_dir magic variable 2015-06-23 14:29:39 -04:00
James Cammarata
4c6adcf143 Submodule pointer update 2015-06-23 13:32:50 -04:00
Hugh Saunders
4246777759 Re-implement the ssh connection retry, originally added in 2df690 2015-06-23 12:14:14 -04:00
James Cammarata
006391eb83 Add the improved exception reporting to the minimal callback plugin 2015-06-23 12:14:14 -04:00
Toshio Kuratomi
6aae500a2c Documentation fix 2015-06-23 08:58:26 -07:00
Toshio Kuratomi
125e6f49a1 Update submodule refs 2015-06-23 08:49:01 -07:00
James Cammarata
72d4b40a26 Don't allow empty (none) loop values
Fixes #8593
2015-06-23 10:42:33 -04:00
James Cammarata
24d2202591 Make sure role parsing can handle a few more types in includes/defs 2015-06-23 10:20:09 -04:00
James Cammarata
aa53212a9b Don't use all task params for vars, just the module args 2015-06-23 10:20:09 -04:00
Toshio Kuratomi
952166f48e Fix problem with chroot connection plugins and symlinks from within the chroot. 2015-06-22 20:08:08 -07:00
Toshio Kuratomi
61e367f549 Better error messages when the file to be transferred does not exist. 2015-06-22 20:08:08 -07:00
James Cammarata
7490044bbe Implement play_hosts magic variable (and ansible_current_hosts)
Fixes #8073
2015-06-22 21:03:55 -04:00
James Cammarata
cb5f630f33 Don't post_validate vars and vars_files on Play objects
Fixes #11343
2015-06-22 11:23:23 -04:00
James Cammarata
ff251a0dcc Catch runtime errors due to recursion when calculating group depth
Fixes #7708
2015-06-22 02:06:07 -04:00
James Cammarata
97954ff658 Minor tweak to potentially speed the linear strategy up
* Don't fetch vars for the task unless we're going to use them
2015-06-22 00:53:34 -04:00
Benno Joy
f17bdc4d61 Set the ansible_ssh_port variable instead of saving it internally for Host
Fixes #11330
2015-06-22 00:38:41 -04:00
Brian Coca
b34b606fcf fixed and/or grouping 2015-06-21 01:51:28 -04:00
Brian Coca
68325dbfe2 fixed remote tmp creation when becoem user is not root and '~/' instead of $HOME is the default 2015-06-21 01:43:35 -04:00
Brian Coca
102de96ebf avoid password handling when no password is supplied 2015-06-21 01:24:35 -04:00
Brian Coca
3bad03d57a cleaned up and optimized become handling paths 2015-06-21 01:13:22 -04:00
Benno Joy
be81b650e8 fixes issue 11286 where role handlers are not run 2015-06-21 00:36:37 -04:00
James Cammarata
fc5be30c2f Change the use of a mutable arg for a default value for locals 2015-06-19 23:04:35 -04:00
James Cammarata
0d92599d18 Make exception printing a bit smarter 2015-06-19 22:59:12 -04:00
Toshio Kuratomi
a77b58e351 Bumpt the BUFSIZE to 64k for better performance 2015-06-19 11:52:06 -07:00
Toshio Kuratomi
0777d02505 Fix problem with jail and zone connection plugins and symlinks from within the jail/zone. 2015-06-19 11:09:48 -07:00
Toshio Kuratomi
ca2f2c4ebd Fix problem with jail and zone connection plugins and symlinks from within the jail/zone. 2015-06-19 09:41:48 -07:00
Toshio Kuratomi
f0777d9c4e Update submodule refs 2015-06-19 09:08:57 -07:00
James Cammarata
18a9eff11f Properly use local variables from templates including other templates
Fixes #6653
2015-06-18 16:10:21 -04:00
James Cammarata
c0dfa8d512 Make sure task names are templated before callbacks are sent 2015-06-18 14:27:20 -04:00
James Cammarata
98fee172ee Fix bug in async action plugin 2015-06-18 13:49:34 -04:00
James Cammarata
270eb4274c Make sure we safe_eval booleans too
Fixes #5779
2015-06-18 11:12:46 -04:00
Brian Coca
4d5a98d8d9 Merge pull request #11307 from dagwieers/patch-6
Change syslog (priority) level from LOG_NOTICE to LOG_INFO
2015-06-18 10:29:16 -04:00
Brian Coca
7bb2a7aa87 actually no password to handle, this should return false 2015-06-18 10:23:37 -04:00
Brian Coca
87a0ccc354 fixed typo 2015-06-18 10:12:04 -04:00
Brian Coca
aede9f08db fixed case in which prompt was None 2015-06-18 10:05:23 -04:00
Dag Wieers
4ca4d36ae6 Change syslog (priority) level from LOG_NOTICE to LOG_INFO
If you look at the meaning of the different syslog levels, NOTICE means that the event may need someone to look at it. Whereas INFO is pure informational.

Since module invocations are in fact requested (deliberate) actions, they shouldn't need any additional post-processing, and therefore should not be logged as NOTICE.

This may seem like hairsplitting, but correctly categorizing system events helps weeding through the noise downhill.

According to Wikipedia: https://en.wikipedia.org/wiki/Syslog

5 	Notice 		notice 	Events that are unusual but not error conditions .
6 	Informational 	info 		Normal operational messages -no action required. Example an application has started, paused or ended successfully.
2015-06-18 11:00:10 +02:00
Brian Coca
7c65f3ddd7 partial become support for local connection plugin 2015-06-18 01:46:43 -04:00
Brian Coca
671118ba71 fixed become password handling with paramiko 2015-06-17 23:31:55 -04:00
Brian Coca
744ec2bbad put hostkey locking into function (still needs fixing)
implemneted become handling here, cannot generalize well enough in base class
2015-06-17 23:31:54 -04:00
Brian Coca
d6672ad285 removed unused import 2015-06-17 23:31:54 -04:00
Brian Coca
5cfd0f82a0 moved away from generic function for become 2015-06-17 23:31:54 -04:00
Brian Coca
3fab516d3d fixed detection of incorrect password 2015-06-17 23:31:54 -04:00
Brian Coca
faed1b2d05 better error reporting when doc parsing fails 2015-06-17 23:31:54 -04:00
James Cammarata
87ca475704 Exclude the all/ungrouped groups from pattern matching results
Fixes #5375
2015-06-17 16:25:58 -04:00
James Cammarata
90445ee67d Add ::1 where we see 127.0.0.1, for better ipv6 support
Fixes #5764
2015-06-17 16:03:19 -04:00
James Cammarata
c3c398cffe Cleaning up some task failure detection problems
* fixed a bug in which failures from a with_* loop were not being
  caught correctly, leading to tasks continuing when they should stop
* when ignore_errors is enabled, the failure will no longer count
  towards the number of failed tasks
2015-06-17 15:40:04 -04:00
Marc Abramowitz
a385744426 Add inventory file to "Unable to find" error msg
E.g.:

    $ ansible gabriel -m ping -i ssh_config.py
    ERROR! Unable to find an inventory file (ssh_config.py), specify one with -i ?
2015-06-17 11:00:13 -07:00
James Cammarata
daa319881f Make sure registered variable message is sent before other messages
Avoids a race condition where previously the registered variable message
was being sent after the 'host_task_ok' message, meaning the next task
may be started before the var is registered, leading to an undefined
variable error
2015-06-17 12:42:47 -04:00
Benno Joy
0d5b7ae669 fixes 11296 where the groups does not have all the groups 2015-06-17 19:18:19 +05:30
James Cammarata
ff998b6022 Make sure the templar is using the right vars when evaluating conditionals 2015-06-17 00:10:11 -04:00
Brian Coca
d7fcd9456a Merge pull request #11288 from kstrauser/aixfixes
Don't panic if AIX's uname doesn't support -W
2015-06-16 19:02:50 -04:00
Kirk Strauser
eb820837ac Don't panic if AIX's uname doesn't support -W
The current code expects "uname -W" on AIX to always succeed. The AIX 5
instance I have doesn't support the -W flag and facts gathering always
crashes on it.

This skips some WPAR handling code if "uname -W" doesn't work.
2015-06-16 15:26:02 -07:00
Kirk Strauser
935da01068 Fixes for FreeBSD get_memory_facts
- swapinfo on FreeBSD 6 (maybe 7 too?) doesn't support the "-m" flag for
  fetching amounts in megabytes. This patch fetches amounts in kilobytes
  and divides by 1024 (and also returns the result as an int instead of
  a string).

- When no swap is configured, swapinfo prints a header line and nothing
  else:

    $ swapinfo
    Device         1K-blocks     Used    Avail Capacity

  The old version unexpectedly parsed that header line and emitted
  nonsense values like:

    "ansible_swapfree_mb": "Avail"
    "ansible_swaptotal_mb": "1K-blocks"

  This version emits those items altogether.
2015-06-16 14:35:36 -07:00
Brian Coca
3b1b95b916 moved ipv6 handling to init
fixed become password handling
2015-06-16 15:48:10 -04:00