Commit Graph

5145 Commits (c83f51b7f2e4ebf318174c320b8861dd985b31e9)

Author SHA1 Message Date
Brian Coca f6b6ed530b added file tests 9 years ago
Brian Coca cd4a0c70b0 isnotanumber is not needed as jinja2 has builtin number test 9 years ago
Brian Coca fe06577ac2 fixed mandatory test 9 years ago
Abhijit Menon-Sen 599ad9cb51 Remove unused (copied) _before_comment method
This was copied from inventory/ini.py, but the rewritten version doesn't
use it, and shows that it isn't needed.
9 years ago
Toshio Kuratomi b5a078a385 update submodule refs 9 years ago
Abhijit Menon-Sen 745ecd4845 Sanitize IPv6 hostname/port handling
Now we accept IPv6 addresses _with port numbers_ only in the standard
[xxx]:NN notation (though bare IPv6 addresses may be given, as before,
and non-IPv6 addresses may also be placed in square brackets), and any
other host identifiers (IPv4/hostname/host pattern) as before, with an
optional :NN suffix.
9 years ago
Abhijit Menon-Sen 74aab6f726 Use a self._raise_error helper and avoid passing the lineno around
Based on a patch by @Richard2ndQuadrant.
9 years ago
Abhijit Menon-Sen 9133cd409c Make _parse take an array of input lines as an argument
(There's no compelling reason to do this right now, but should be parser
need to be called multiple times in future, this makes it easier.)
9 years ago
Abhijit Menon-Sen 98a1905796 Rename 'section' to 'groupname' to better reflect its purpose 9 years ago
Abhijit Menon-Sen 1284c49bd7 Rewrite the INI InventoryParser
The new code parses INI-format inventory files in a single pass using a
well-documented state machine that reports precise errors and eliminates
the duplications and inconsistencies and outright errors in the earlier
three-phase parsing code (e.g. three ways to skip comments). It is also
much easier now to follow what decisions are being taken on the basis of
the parsed data. The comments point out various potential improvements,
particularly in the area of consistent IPv6 handling.

On the ornate marble tombstone of the old code, the following
inscription is one last baffling memento from a bygone age:

-    def _before_comment(self, msg):
-        ''' what's the part of a string before a comment? '''
-        msg = msg.replace("\#","**NOT_A_COMMENT**")
-        msg = msg.split("#")[0]
-        msg = msg.replace("**NOT_A_COMMENT**","#")
-        return msg
9 years ago
Jon Hawkesworth a46b500851 Add win_splitdrive filter for windows users 9 years ago
Toshio Kuratomi 4f32a61504 Merge pull request #10957 from feanil/feanil/retain_nonetypes
Don't convert nulls to strings.
9 years ago
Brian Coca e8b86f448d fix issue with improper connection override in delegation 9 years ago
Feanil Patel 892e230514 Don't convert nulls to strings.
This change is similar to https://github.com/ansible/ansible/pull/10465

It extends the logic there to also support none types.  Right now if you have
a '!!null' in yaml, and that var gets passed around, it will get converted to
a string.

eg. defaults/main.yml
```
ENABLE_AWESOME_FEATURE: !!null # Yaml Null
OTHER_CONFIG:
  secret1: "so_secret"
  secret2: "even_more_secret"

CONFIG:
  hostname: "some_hostname"
  features:
    awesame_feature: "{{ ENABLE_AWESOME_FEATURE}}"
  secrets: "{{ OTHER_CONFIG }}"
```

If you output `CONFIG` to json or yaml, the feature flag would get represented in the output
as a string instead of as a null, but secrets would get represented as a dictionary.  This is
a mis-match in behaviour where some "types" are retained and others are not.  This change
should fix the issue.

I also updated the template test to test for this and made the changes to v2.

Added a changelog entry specifically for the change from empty string to null as the default.

Made the null representation configurable.

It still defaults to the python NoneType but can be overriden to be an emptystring by updating
the DEFAULT_NULL_REPRESENTATION config.
9 years ago
Brian Coca 22a69e2498 fixes to delegation code 9 years ago
Brian Coca 36cbd771a4 changed fixme to deprecated 9 years ago
Brian Coca 961bee00d5 centralized the definition of 'localhost' 9 years ago
Rene Moser d16429b59c cloudstack: rename returns for consistency 9 years ago
Abhijit Menon-Sen 2641f70e47 Reset self._groups_cache in refresh_inventory 9 years ago
Harald Laabs 73d6da757f Make get_group run in O(n*log(n)) instead of O(n^2) by using a cache 9 years ago
Brian Coca 1b810e3101 Merge pull request #12000 from bcoca/local_action_connect
changed local_action to alias to connection=local vs delegate_to=locahost
9 years ago
Will West b8865314ec improve ansible start up time for very large inventory
first off, we add an oddly slow basic test of 10k item inventory

Before:
```
Ran 229 tests in 13.214s

OK

real    0m13.403s
user    0m12.106s
sys 0m1.155s
```

After:
```
Ran 230 tests in 21.328s

OK

real    0m21.516s
user    0m20.099s
sys 0m1.275s
```

since that seems like a bit long for the test to add to runtime, lets profile

`python -m cProfile -s time ./bin/ansible all -i test/units/inventory_test_data/huge_range --list-hosts`

Before:
```
         1272607 function calls (1259689 primitive calls) in 8.497 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
    10000    4.393    0.000    4.396    0.000 __init__.py:395(_get_host)
    20000    2.695    0.000    2.697    0.000 __init__.py:341(__append_host_to_results)
    40369    0.113    0.000    0.113    0.000 {posix.lstat}
    50006    0.102    0.000    0.153    0.000 __init__.py:1490(combine_vars)
    40008    0.089    0.000    0.202    0.000 __init__.py:1546(_load_vars_from_path)
    20195    0.088    0.000    0.088    0.000 {posix.stat}
    10011    0.087    0.000    0.087    0.000 {posix.getcwd}
```

The top two lines are promising optimization targets

- populate Inventory's host cache more in _get_host, as we are looping
  over all the groups anyways.

- eliminate duplicate check of whether we've already included a host
  in the construction around __append_host_to_results we can infer
  presence of a host in the results list implies the presence of its
  name in the hostnames set, allowing us to only to the less expensive
  of the two checks

After:
```
         1252610 function calls (1239692 primitive calls) in 1.320 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
    40369    0.105    0.000    0.105    0.000 {posix.lstat}
    50006    0.094    0.000    0.141    0.000 __init__.py:1490(combine_vars)
    40008    0.081    0.000    0.184    0.000 __init__.py:1546(_load_vars_from_path)
    10011    0.080    0.000    0.080    0.000 {posix.getcwd}
    20195    0.074    0.000    0.074    0.000 {posix.stat}
    10002    0.069    0.000    0.261    0.000 __init__.py:1517(load_vars)
```
9 years ago
Brian Coca 7a4a156d91 changed local_action to alias to connection=local vs delegate_to=localhost
fixes #11998, but still leaves issue of delegate_to: localhost not working
9 years ago
Brian Coca f2c6785897 Merge pull request #11989 from bcoca/osx_queue_fix
changed check to avoid OS X broken sem_getvalue()
9 years ago
Brian Coca 26ed50ecdf fixed indent 9 years ago
Brian Coca 2198f48f54 changed check to avoid OS X broken sem_getvalue()
fixes #11988
9 years ago
Brian Coca e081a73aa1 make new inventory config take precedence over old hostfile config
fixes #11907
9 years ago
Brian Coca 17b4b1f85c added ability to limit in ansilbe pull
refactored the options a bit, new inventory_opts made sense to always group
fixes #7917
9 years ago
Brian Coca 1acb29ff9b sequence will now run once for start=end, added test to suite
fixes #11979
9 years ago
Brian Coca ee21ebaffc Merge pull request #11975 from mutemule/become_doas
Add become support for OpenBSD doas
9 years ago
Damian Gerow 1c5611100e Add become support for OpenBSD doas 9 years ago
Alphadelta14 77b60a1a67 Support any Mapping for with_dict lookup.
This resolves 3939348286 breaking `with_dict: hostvars`.
9 years ago
Brian Coca c419cacb04 check if host task is none before continuing
fixes #11982
9 years ago
James Cammarata e7b2308b66 Performance improvements
* Speed up serialization of hostvars by simply using the internal
  dictionary used for cached lookups
* Use blocking gets/puts on queues instead of spin locking
* Merge sequential implicitly created blocks
9 years ago
Brian Coca 4068598c15 Merge pull request #11977 from resmo/for-ansible
cloudstack: add more common returns
9 years ago
Rene Moser 2913d2b44d cloudstack: add more common returns 9 years ago
Brian Coca 6058eaa92f removed unused poller 9 years ago
Brian Coca 9b61cf5840 implemented async tasks in adhoc v2 9 years ago
Brian Coca ee2e31b37a now passes the test of skipping list when dict attribute is undefined, added deprecation warning as this seems like bad behaviour 9 years ago
Brian Coca 950622cebd made sure they all look in files/vars/template dirs also when executed in play and not only from task 9 years ago
Brian Coca 861fdfc5ba updated callbacks to properly test diff no matter if dict or list 9 years ago
Brian Coca 79ea6d3a1e copy now passes a list of diffs 9 years ago
Brian Coca c3372936aa diff can now be a list 9 years ago
Brian Coca 13c91ef9d4 actually use the read source contents for the diff 9 years ago
Brian Coca 45cebd283f added remote_src to copy, now allows copying to be done on the target server 9 years ago
Brian Coca 1b7369cc8d added diff to assemble for remote_src=false 9 years ago
Brian Coca f048aca5f6 runas placeholder 9 years ago
Brian Coca 49eb95e2d1 some fixes to become/sudo
* now it uses -n to get immediate error if no password is supplied and one is needed,
   this should fix the issue with sudo hanging waiting for input.
 * made -k configurable, this can break changing become_users in play if left out,
   but opens up the possiblity of OTP support.
9 years ago
James Cammarata 4836641683 Use ansible_python_interpreter value for remote checksums
Fixes #11968
Fixes #11969
9 years ago
Brian Coca 7a51836530 check for failure in fact gathering 9 years ago
Brian Coca 1edae51e05 added generic service module, step #1 to separating services to their own modules
falls back to current service module and requries service mgr facts and new service modules
9 years ago
Brian Coca 172e0c328c fixed adhoc fact gathering 9 years ago
Brian Coca 0381923333 fixed call to setup module 9 years ago
Brian Coca 92e2f54228 fixed issues with utf-8 encoding in docs, moved pager to use display class instad of bare prints 9 years ago
Brian Coca 245e0dd4b7 made returns from next task consistent to avoid typeerrors, also linear now checks for none
fixes #11965
9 years ago
Brian Coca 9f5e4c0ef6 lookup plugin that does no flattening 9 years ago
Abhijit Menon-Sen 8f231ec469 Tweak deprecation warning, and apply it to --limit also 9 years ago
James Cammarata 4714cbeec8 Override post validation of environment to allow bare variables
Also prints a deprecated warning if a bare variable is detected, so
that we can remove this in a future version.

Fixes #11912
9 years ago
James Cammarata 4dba30ccd0 Cleanup missed merge conflict sections 9 years ago
Abhijit Menon-Sen d41db8edd6 Don't accept undocumented "p1;p2" patterns; note in changelog
The correct (and now only) way to say p1 OR p2 is "p1:p2".
9 years ago
Abhijit Menon-Sen 1437b8e120 Introduce _split_pattern to parse an "x:y:z" pattern
This function takes a string like 'foo:bar[1:2]:baz[x:y]-quux' and
returns a list of patterns ['foo', 'bar[1:2]', 'baz[x:y]-quux'], i.e.
splits the string on colons that are not part of a range specification.
9 years ago
James Cammarata 32034feec5 Add deprecation warning regarding host patterns 9 years ago
Abhijit Menon-Sen 6bf6b9fdbb Rename some internal functions, clarify what they do
get_hosts → used externally, not changed
_get_hosts → _evaluate_patterns (takes a list, evaluates ! and &)
__get_hosts → _match_one_pattern (takes one pattern only, ignores !&)
9 years ago
Abhijit Menon-Sen eff33bac49 Don't accept undocumented "p1;p2" patterns; note in changelog
The correct (and now only) way to say p1 OR p2 is "p1:p2".
9 years ago
Abhijit Menon-Sen 8aaa06dd50 Introduce _split_pattern to parse an "x:y:z" pattern
This function takes a string like 'foo:bar[1:2]:baz[x:y]-quux' and
returns a list of patterns ['foo', 'bar[1:2]', 'baz[x:y]-quux'], i.e.
splits the string on colons that are not part of a range specification.
9 years ago
Abhijit Menon-Sen baf637b9ae Remove dead code: Inventory.also_restrict_to/lift_also_restriction
This was used earlier to implement serial, but that's now done using
restrict_to_hosts() (whose docstring is also suitably adjusted here)
and there are no more callers.
9 years ago
James Cammarata 6c036c3633 Template parent include file paths
Fixes #11955
9 years ago
Brian Coca b905f51341 fixed typo 9 years ago
Brian Coca 8af0ff4a58 Merge pull request #11567 from lekum/shelvefile_lookup
Add shelvefile lookup plugin
9 years ago
Brian Coca fbc7224066 Merge pull request #11643 from bcoca/meta_inventory_and_fixes
Meta inventory and fixes
9 years ago
James Cammarata eb381bd522 Add one more search path to path_dwim_relative 9 years ago
Brian Coca c6733cc1a7 Merge pull request #9225 from qvicksilver/aix_unprivileged
AIX unprivileged facts collection
9 years ago
Brian Coca 5027f66562 Merge pull request #11864 from jhawkesworth/win_path_filters
add win_basename and win_dirname filters
9 years ago
James Cammarata a498876bec Make sure playbook includes use unique var dictionaries before modification 9 years ago
Brian Coca 5fec11f513 capture parsing exceptions and give nice error and location 9 years ago
Brian Coca 621b18c6ef fixed source path discovery for unarchive in roles
fixes #11943
9 years ago
Brian Coca 70d024ffce show errors when missing vars file or when there is syntax issue in the file
fixes #11945
9 years ago
Brian Coca 3d9875773b Merge pull request #11947 from resmo/for-ansible
cloudstack: refactor get_result()
9 years ago
Brian Coca 2c34a5bdbd pass list correctly to lookup 9 years ago
James Cammarata dd67b1e4d6 Adjust relative include searches when roles are involved
Fixes #11895
9 years ago
Rene Moser 4f3c863b42 cloudstack: refactor get_result()
* A commen dict of keys has been defined, which we look in results returned from the API.
* self.returns dict can be use in subclass to extend this dict.
* Optionally the key name can be replaced with a new key name, often used to make the return keys identical to the arguments passed.
* Use new style class
9 years ago
James Cammarata d9833f227f Make sure cached data from file loads isn't impacted by modifications
Fixes #11893
9 years ago
Brian Coca 6bceee9a93 now lvs/vg facts are only attempted if binary found 9 years ago
James Cammarata c7dde72aa0 Default listify to converting bare variables again
Since we explicitly set convert_bare=False in the template lookup
code, but still want individual looks that call listify directly to
convert bare variables if needed.
9 years ago
James Cammarata ac66e4001c Fix for variable precedence with tasks/includes
Fixes #11881
9 years ago
Brian Coca 2688edb32b Merge pull request #11940 from alxgu/fix_lvm_facts
bugfix: missing path for lvm facts
9 years ago
Brian Coca 39f81a8fa5 removed unused imports 9 years ago
Brian Coca c27978fa93 minor fixes to pull 9 years ago
Brian Coca 9f29e39dea give more matching options for ansible-pull 9 years ago
Brian Coca e46b1e8d2b adjusted tree to work more like v1, also now skips when dir not supplied 9 years ago
Alexander Gubin 1ea1b9fb13 bugfix: missing path for lvm facts 9 years ago
Brian Coca 49d88cef9c meta: refresh_inventory and several inventory fixes 9 years ago
Brian Coca 8e30e3791e Merge pull request #11811 from amenonsen/fixme-range
FIXME in host range parsing
9 years ago
Brian Coca ae9d264b86 Merge pull request #11762 from amenonsen/9795-rebase
Add LVM facts to setup module
9 years ago
James Cammarata 829a88b906 Disable undefined error failures during conditional templating
This allows us to properly catch the 'is defined' and 'is undefined'
checks and return the correct boolean result.

Fixes #11892
9 years ago
James Cammarata e0b074000e Merge pull request #11764 from lpirl/devel_v2
fixes remote code execution for su/sudo with strict remote umasks
9 years ago
James Cammarata 38eb53de1d Fix bug in vars using correct temp value for vars
Fixes #11877
9 years ago
Brian Coca 4d853a5d3c implemented for v2, missing --tree option for adhoc 9 years ago
Brian Coca 79a1bca010 avoid circular import 9 years ago
Brian Coca a83b8220ef added import back 9 years ago
Brian Coca 6e825e8c22 fixed listify for lookups, made sure convert_bare is only on with_ 9 years ago
James Cammarata adb9d7e461 Track role execution per-host, not overall in the role
Fixes #11863
Fixes #11878
9 years ago
Rene Moser e62fbf5fba cloudstack: add get_result() in utils to return common results 9 years ago
James Cammarata f904acbd14 Fixing bug related to listify changes 9 years ago
James Cammarata 169d316704 Fixing bugs in include + loops
Fixes #11872
9 years ago
Brian Coca 7666bde666 updated hashi_vault to new listify, added to changelog 9 years ago
Brian Coca 4399ddc7da Merge pull request #11674 from defionscode/hashi_vault_lookup
Hashicorp Vault lookup Plugin
9 years ago
Jonathan Davila 175068fdae Hashicorp Vault lookup Plugin 9 years ago
Brian Coca 7e7b546c34 reinstated listify 9 years ago
Brian Coca 3e5dbd045f fixed ref to removed var 9 years ago
Brian Coca 5c1d850fbb now fixed to actually work 9 years ago
Brian Coca ee365c881f fixed typo 9 years ago
Brian Coca c08305a31f set script command itself to be sudable and not use the chmod sudoable settings as it can
ignore sudo settings for script when become_user is not root
fixes #11902
9 years ago
Toshio Kuratomi d35b956900 listify lookup plugin terms when they're specified as "{{ lookup(terms) }}"
Before this, they were not listified there but they were listified when
specified like this:

with_lookup: terms
9 years ago
Brian Coca dbab703265 fine tuned password handling as we were getting false positives, probably caused by other changes up the stack that now call these functions in more cases. 9 years ago
Brian Coca 6fcfebd21d made sure we need becoem before we format the command, added debug entry also 9 years ago
Brian Coca df768e0db4 fixed debug statement 9 years ago
Brian Coca 177499476b fixed warning 9 years ago
Toshio Kuratomi 3ef49844db Update core submodule ref 9 years ago
Brian Coca 8f106c9a58 Merge pull request #11078 from Yannig/devel
New lookup plugin : ini
9 years ago
Yannig Perré 07fcb50b9b Porting ini lookup plugin against ansible v2. 9 years ago
Toshio Kuratomi f1144752c4 Pull in docs fix from core modules 9 years ago
James Cammarata e7d0c9f820 Re-add vars to Base and standardize var processing
Fixes #11779
9 years ago
Brian Coca dbe7a9fe2f Merge pull request #11857 from quinot/bug/playbook-init-comment
Minor comment fix
9 years ago
Brian Coca 3c57018a10 Merge pull request #11778 from Ensighten/add_credstash_plugin
add credstash lookup plugin
9 years ago
Brian Coca d47d0b1d7f now continue/abort mode allows ignoring other input 9 years ago
Brian Coca a555a0652e allow for vars_prompt and pause prompt to be skipped in non interactive settings
ansible-pull users rejoice
9 years ago
Toshio Kuratomi ce52fdebe8 Pull in get_url checksum change 9 years ago
Brian Coca 29cd72b7d8 even simpler condition tree for pause 9 years ago
Brian Coca dc80bc8929 now pause behaves like v1 pause 9 years ago
Brian Coca f7707d8850 brought user_input back to pause 9 years ago
Toshio Kuratomi 00b1a2c865 Restore ValueError in md5 method and change finding the available hash algorithms so we only have to do it once 9 years ago
Brian Coca 15a20e814b added tags back to ansible-pull 9 years ago
Brian Coca 5f0359c119 keep banners at 79 9 years ago
Brian Coca 25e67bb716 text wrap now adapts to terminal 9 years ago
Toshio Kuratomi 80cb69214b Merge pull request #11840 from muffl0n/module_utils_hash_algorithms
Add get_available_hash_algorithms()
9 years ago
James Cammarata d44daf53cc Allow wrapped text in deprecated messages 9 years ago
James Cammarata 5eb092b331 Handle top-level vars for include tasks to match v1 syntax
The "streamlined" syntax will be deprecated at some point in the future.

Fixes #11882
9 years ago
Toshio Kuratomi e16b24c01e Update submodule ref 9 years ago
Toshio Kuratomi e8452c864e Restore the relative path handling portion of #11865 9 years ago
James Cammarata 26d5a17b59 Make sure inventory loads files with non-relative paths
This is a slightly different fix than we originally committed, but fixes
the problem in a less invasive way (and I believe it's generally better
that we don't deal with relative paths internally past this point)

Fixes #11789
9 years ago
Brian Coca b9433650d1 Revert "Path of group_vars and host_vars were getting the basedir added twice."
in view of simpler solution incomming from james
This reverts commit bae7a02be5.
9 years ago
Brian Coca 9f156e5550 updated submodule refs 9 years ago
Brian Coca 7bea04141b Merge pull request #11865 from ansible/fix-group_vars_path
Path of group_vars and host_vars were getting the basedir added twice.
9 years ago
Brian Coca 08e6c1d82b avoid possible errors with new broadcast handling in linux 9 years ago
Brian Coca cb2cfaebda started porting chroot to v2 9 years ago
Brian Coca 262c75c253 Merge pull request #10971 from mightydok/debbraoadcastfix
Add missed broadcast address to linux network facts.
9 years ago
Scott Cunningham 87ef53c962 credstash lookup plugin: python 2.6-compatible string.format() 9 years ago
Scott Cunningham c4629b72e0 credstash lookup plugin: error out in run function when credstash not installed, not at module scope 9 years ago
Toshio Kuratomi bae7a02be5 Path of group_vars and host_vars were getting the basedir added twice.
Fix inventory so this won't happen and fix DataLoader so that it will
test relative paths relative to self._basedir

Fixes #11789
9 years ago
Toshio Kuratomi e7b5cb8782 Fix synchronize source path with roles and local connection
Fixes #8261
9 years ago
Toshio Kuratomi dd7fa07038 Update submodule refs so synchronize plugin works 9 years ago
Toshio Kuratomi 308bf80055 Cleanups to synchronize including:
* Better comments
* Reorganize code so related settings are close to each other
* Add ::1 to the "localhost" patterns we look for
* Make the dest_port parameter override the ansible_ssh_port setting
* Fix dest_port (wasn't being set)
* more complete detection of delegate_to
* Fix set_remote_user (wasn't being looked for in parameters)
* Instead of removing mode here, have the ansible module accept it
  (better documents the parameters doing it htat way)
9 years ago
James Cammarata 37e38924de Allow field attributes to have priorities
So that roles are loaded ahead of all other play fields, meaning any
plugins contained within the roles are loaded first before tasks.

Fixes #11858
9 years ago
Jon Hawkesworth f69da544f7 add win_basename and win_dirname filters 9 years ago
James Cammarata fad44862a5 Implementing includes in the free strategy 9 years ago
Brian Coca 2b9b3a08a1 make sure you only update pci data if there is a match 9 years ago
Yannig Perré 09d257e637 Porting ini lookup plugin against ansible v2. 9 years ago
Thomas Quinot 5d3cb636ad Minor comment fix 9 years ago
Yannig Perré 47db352725 Merge remote-tracking branch 'ansible/devel' into devel 9 years ago
Yannig Perré 733d40a77c When value does not exist, return default value instead of stopping ansible with an exception. 9 years ago
James Cammarata faf4c3bb6c Merge pull request #11816 from amenonsen/ssh-ipv6
Fix ssh connections to IPv6 addresses
9 years ago
James Cammarata dbd755e0f4 Fix jinja2 template search pathing
Fixes #9933
9 years ago
Scott Cunningham 934ce86d35 update credstash lookup plugin to use Python 2.4-compatible exception catching 9 years ago
James Cammarata 61e76fd707 Allow conditionals on PlaybookInclude statements
Fixes #11852
9 years ago
James Cammarata b6c3e5d797 Validate variable names given in set_fact
Fixes #11851
9 years ago
James Cammarata 5266679964 Use templar all the way down
Fixes bugs related to creating Templar() objects on the fly, where
the shared loader objects (serialized to TaskExecutor) aren't used
so information loaded into plugin loaders after forking is lost.

Fixes #11815
9 years ago
muffl0n 8d6d711a5c move get_available_hash_algorithms() from get_url 9 years ago
James Cammarata c3ce140dd2 Exclude loop_args from post_validation for tasks
This field is templated specially during the TaskExecutor's loop
calculation, so there's no need to post validate it again.

Fixes #11481
9 years ago
Brian Coca 015b922c1f fix quoting for become commands
fixes #11808
9 years ago
Toshio Kuratomi ca941ec632 style cleanup because -ECANNOTUNDERSTAND without it 9 years ago
Toshio Kuratomi f86245dcb0 Add a warning about python3 in the synchronize plugin 9 years ago
Toshio Kuratomi f0431eaea9 Make ansible_python_interpreter work with synchronize
Fixes #11836
9 years ago
James Cammarata 8279557e8f Allow role names to be templated
Fixes #10858
9 years ago
James Cammarata ed603f7030 Fix free strategy only running first play in a multi-play playbook
Fixes #11839
9 years ago
James Cammarata c2435fab7e Inject the play context vars into the variables used for loop item templating 9 years ago
James Cammarata bcbcfc79be Fix relative paths for included files
Also modifies the Play class to not include become* fields in the
post-validation step.

Fixes #11353
9 years ago
James Cammarata 2673eb0afb Add option to fail on undefined variables to listify
And use it in the call to get the loop items for a task.
9 years ago
James Cammarata a586c74967 Merge pull request #11838 from cchurch/stringify_powershell_unquote_value
Fix for PowerShell unquote method when passed None.
9 years ago
James Cammarata f6d1b5e233 Merge pull request #11835 from cchurch/raw_is_not_raw_enough
Raw is not raw enough
9 years ago
James Cammarata 7b9aee7077 Merge pull request #11832 from amenonsen/zeroforks
Disallow --forks 0
9 years ago
Chris Church cafc35fd5b Fix for PowerShell unquote method when passed None. 9 years ago
Abhijit Menon-Sen 7d9689c1c5 Slice ascii_letters directly instead of using 'for x in range()' 9 years ago
Abhijit Menon-Sen bfe708a189 Make host range parsing errors issue better messages
Now we always say "host range must …specific thing…"
9 years ago
Abhijit Menon-Sen 1413496292 Implement step for alphabetic ranges: [a:e:2] => a,c,e 9 years ago
Abhijit Menon-Sen 72715c6add Fix ssh connections to IPv6 addresses
We can unconditionally wrap remote_addr in square brackets for scp and
sftp (both of which require them for IPv6 addresses), but not wrap them
at all for ssh (which doesn't accept them). This way, we don't have to
detect and treat IPv6 addresses specially. This works for hostnames,
IPv4 addresses, and IPv6 addresses.

The earlier code seemed to intend to wrap all IPv6 addresses in square
brackets, which would have broken ssh, but it actually made no attempt
to detect IPv6 addresses at all (so it broke only with IPv6 addresses
for scp and sftp).

Based on a review of PR #11677 by @JuiceBoxSingularity
9 years ago
Chris Church 6969b5ac8b Make sure raw doesn't eat key=value arguments. 9 years ago
Abhijit Menon-Sen 861da614cc Make 'pause: prompt=…' print the prompt
In stable-1.9, the prompt string is passed to raw_input(), which prints
it without an extra \n. Here we're just print()ing it, so the \n would
be doubled.
9 years ago
James Cammarata 9936c5f9f6 Fixing the pause module for devel 9 years ago
Abhijit Menon-Sen 8de70fa657 Disallow --forks 0
Without at least one worker process, things break:

Traceback (most recent call last):
  File "/home/ams/extern/ansible/ansible/lib/ansible/executor/process/result.py", line 103, in run
    result = self._read_worker_result()
  File "/home/ams/extern/ansible/ansible/lib/ansible/executor/process/result.py", line 69, in _read_worker_result
    (worker_prc, main_q, rslt_q) = self._workers[self._cur_worker]
IndexError: list index out of range
9 years ago
Toshio Kuratomi cf35bdbdf9 Merge pull request #11827 from amenonsen/trivial-fixmes
Remove TODO: the play already overrides options
9 years ago
Abhijit Menon-Sen a9b020d6de Remove TODO: the play already overrides options 9 years ago
Abhijit Menon-Sen 1f2adb5e14 Show a better message when ansible.cfg is not found
Earlier we would say «Using  as config file» if we didn't find one.
9 years ago
Abhijit Menon-Sen 2cb7cd8379 Remove outdated FIXME; _compute_delegate is called below 9 years ago
Abhijit Menon-Sen 7b3cb2126c Remove outdated FIXME; ROLE_CACHE is already implemented below 9 years ago
Toshio Kuratomi 91a77b8603 Fix potential bug in parameter passing 9 years ago
James Cammarata 13b8a57d3d Undo previous travis/tox fixes and fix underlying issue 9 years ago
Toshio Kuratomi 0d72be3953 become protection for local connections no longer needed 9 years ago
Toshio Kuratomi d1933accc3 Fixes for synchronize with delegate_to 9 years ago
Toshio Kuratomi 3939348286 Fix HostVars to support containment tests 9 years ago
Chris Church 74df17de29 Add an option for PowerShell modules to indicate support for check mode, skip running module if check mode is not supported. 9 years ago
Chris Church e87cf4a3cc Fixes for WinRM/PowerShell support in v2.
- Add support for inserting module args into PowerShell modules.  Fixes #11661.
- Support Windows paths containing spaces.  Applies changes from #10727 to v2.  Fixes #9999.  Should also fix ansible/ansible-modules-core#944 and ansible/ansible-modules-core#1007.
- Change how execution policy is set for running remote scripts.  Applies changes from #11092 to v2.  Also fixes ansible/ansible-modules-core#1776.
- Use codepage 65001 (UTF-8) for WinRM connection instead of default (CP437), convert command to UTF-8 and results from UTF-8.  Replaces changes from #10024.  Fixes #11198.
- Close WinRM connection when task completes.
- Use win_stat, win_file and win_copy modules instead of stat, file and copy when called from within other action plugins (only when using WinRM+PowerShell).
- Unquote Windows path arguments before passing to win_stat, win_file, win_copy and slurp modules (only when using WinRM/PowerShell).
- Check for win_ping module to determine if core modules are missing (only when using WinRM/PowerShell).
- Add stdout_lines to result from running low level commands (so stdout_lines is available when using raw/script).
- Update copy action plugin to use shell functions for joining paths and checking for trailing slash.
- Update fetch action plugin to unquote source path when using Windows paths.
- Add win_copy and win_template action plugins that inherit from copy and template.
- Support running .bat and .cmd scripts using default system encoding instead of UTF-8.
- Always send PowerShell commands as base64-encoded blobs to allow for running simple PowerShell commands via raw.
- Support running modules on Windows with interpreters other than PowerShell.
- Update integration tests to support above changes and test unicode fixes.
- Add test for win_user error from ansible/ansible-modules-core#1241 (fixed by ansible/ansible-modules-core#1774).
- Add test for additional win_stat output values (implemented by ansible/ansible-modules-core#1473).
- Add test for OS architecture and name from setup.ps1 (implemented by ansible/ansible-modules-core#1100).

All WinRM integration tests pass for me with these changes.
9 years ago
Brian Coca fa8043c0ba corrected typo 9 years ago
Brian Coca f16b745f17 now properly uses default port if defined 9 years ago
Brian Coca 496186f5de makes ssh plugin resilient against invalid entries in hosts file
fixes #10238
9 years ago
Mark Chance 437d4deffc change ec2 util to create only requested objects 9 years ago
Toshio Kuratomi e349004325 Update submodule ref to pull in apt_repo fixes 9 years ago
Jonathan Süssemilch Poulain 02294c52ce Typo 9 years ago
Jonathan Süssemilch Poulain 4614a574ea Allows network network interface facts collection as an unprivileged user and adds more facts 9 years ago
Jonathan Süssemilch Poulain e181bcf62b Allows to fetch machine architecture as an unprivileged user 9 years ago
Brian Coca 9aa4214417 fixed delegate_to ref in syncronize 9 years ago
Brian Coca 8a00dff989 updated submodule refs 9 years ago
Brian Coca 07e5e98cbf removed jinaj2 override restrictions 9 years ago
Brian Coca 113f709eac brought up to date with default 9 years ago
Brian Coca 51de207197 Merge pull request #11805 from amenonsen/trivial-fixmes
A series of trivial FIXMEs for devel
9 years ago
Scott Cunningham 193e857bc4 credstash lookup plugin: raise AnsibleError when credstash library not installed 9 years ago
James Cammarata 222f04e387 Submodule pointer update 9 years ago
Abhijit Menon-Sen 807079ec2f Remove outdated FIXME; HostVars is imported and used below 9 years ago
Brian Coca d05c4b82aa Merge pull request #11803 from amenonsen/prompt_encrypt
Uncomment encrypt handling for vars_prompt
9 years ago
Abhijit Menon-Sen 845784b572 Remove outdated FIXMEs; all use combine_vars already 9 years ago
James Cammarata efcad3aa6d Re-allow vars on tasks, specifically for includes 9 years ago
James Cammarata 0ad52a403f Merge pull request #11804 from amenonsen/fixme
Easy FIXMEs
9 years ago
Abhijit Menon-Sen 1541e331c9 Also fix UTF-8 handling in vars_prompt 9 years ago
James Cammarata 549c204051 Submodule pointer update 9 years ago
Abhijit Menon-Sen 694d2103b1 Remove outdated FIXME code
This is already handled in PlayContext.set_options.
9 years ago
Abhijit Menon-Sen ff2d160fff Correct invalid reference to global display 9 years ago
Abhijit Menon-Sen 10def3aa54 Uncomment encrypt handling for vars_prompt 9 years ago
Brian Coca b2dc66c7ea now check stderr also on become for ssh plugin for the cases where sudo or su do not want to prompt/echo on stdin
fixes #11796
9 years ago
Brian Coca 17f659a143 added some debug to galaxy 9 years ago
Brian Coca 29bc8f51d7 made tags display closer to v1 9 years ago
Brian Coca b37be236d9 Merge pull request #11475 from nibalizer/cfacter_support
Use cfacter instead of facter if possible
9 years ago
Abhijit Menon-Sen 3d581e5306 Don't stat None
Fixes #11794, regression introduced by #11010
9 years ago
Brian Coca 527ae360b0 Merge pull request #10652 from vodik/nspawn
Support querying systemd container information
9 years ago
Brian Coca 4b8e368039 Merge pull request #11010 from sillydong/devel
Add judgment to to fix path0 if ANSIBLE_CONFIG is set to a dir
9 years ago
Brian Coca 0e77871426 fixed non ignore errors path to actually interrupt
fixed cases where missing/inaccessible file gave exception, now you get nice error
9 years ago
Brian Coca 8153c34abf now returns false on bad role_data 9 years ago
Brian Coca e81ec32719 made galaxy more resilient with bad yaml files and comments/spaces in non yaml files
fixes #10641
9 years ago
Joseph Callen 2f5ced8856 Moving VMware Utilites module
Moved `vmware.py` from v1 to `lib/ansible/module_utils/vmware.py`.

No other changes has been made since these two PRs:
https://github.com/ansible/ansible/pull/10812
https://github.com/ansible/ansible/pull/10760
9 years ago
Brian Coca ced93d35ca adjusted list hosts across adhoc and playbook cli 9 years ago
James Cammarata 3a50c08c01 Merge branch 'pluggable_jinja_tests' of https://github.com/quixoten/ansible into quixoten-pluggable_jinja_tests 9 years ago
James Cammarata 782c2f75df Make sure role deps inherit conditionals/tags specified via params
Fixes #7353
9 years ago
Brian Coca bedfe00de8 Merge pull request #11336 from saada/patch-1
Update Vault rekey() in vault.py to validate files passed before input
9 years ago
Toshio Kuratomi 4f1d365a25 Merge pull request #11783 from ansible/synchronize-fix
Synchronize in wasn't running on localhost in the default case which …
9 years ago
Toshio Kuratomi 088682f518 Synchronize in wasn't running on localhost in the default case which meant that rsync was run on the wrong host.
Fixes #11649
9 years ago
Mahmoud Saada ddd46f6599 Update rekey() in vault.py to validate files passed exist before prompting for password 9 years ago
Brian Coca 0784fa1765 removed import q 9 years ago
Brian Coca 96bcf50a94 implemented requirements file in v2
fixes #11179
9 years ago
James Cammarata 71867f9480 Remove vars attribute from base
Fixes #11779
9 years ago
Scott Cunningham 695e456cb0 add credstash lookup plugin 9 years ago
Brian Coca 132c14eb57 indented hosts 9 years ago
Brian Coca c0c094c413 now all --list options are working! 9 years ago
Brian Coca 884435a1aa minor cosmetic changes to list options 9 years ago
Brian Coca 056602c424 rearranged --list- options, now they are consolidated when used toghether, less loops, more concise output
list-hosts works
list-tasks works, but needs better task naming (missing role info)
list-tags only shows play tags
9 years ago
Brian Coca cc85473c1e show role search path when not finding a role
fixes #9770
9 years ago
James Cammarata 42cfacf83b Switch up the task/host overrides for PlayContext to use the compiled vars dict
Fixes #11436
9 years ago
Brian Coca a8b2b5b0c9 avoids printing blank diffs
fixes #10147 fixes #9471
9 years ago
James Cammarata 5cf2781528 A little more cleanup regarding _compute_environment_string 9 years ago
James Cammarata 467432bef5 Fix incorrect module path for AnsibleError in action plugin base 9 years ago
Brian Coca f4a997db49 added back but stderr, which was the original itnention 9 years ago
Brian Coca 3b9282fb90 fixed dupe output in raw/command cases 9 years ago
Brian Coca a78fdde32c better handling for weird doc corner cases (abscense of options, bad text objects, etc)
also updated extras to get some docfixes on the module side
9 years ago
Brian Coca 17103dd4cc update submodule refs 9 years ago
Brian Coca 6cdee94c33 added missing skipped item function to base 9 years ago
Brian Coca 6f93d228f6 made item output closer to v1 9 years ago
Brian Coca 4f9d719b14 removed debug 9 years ago
Brian Coca d78c2fc212 now reports per task item 9 years ago
James Cammarata 2d90cbf78b Properly fail results with rc != 0
Fixes #11769
9 years ago
Brian Coca 787a0c4e04 fixed indent issues 9 years ago
Vilmos Nebehaj 58cccce384 Use PBKDF2HMAC() from cryptography for vault keys.
When stretching the key for vault files, use PBKDF2HMAC() from the
cryptography package instead of pycrypto. This will speed up the opening
of vault files by ~10x.

The problem is here in lib/ansible/utils/vault.py:

    hash_function = SHA256

    # make two keys and one iv
    pbkdf2_prf = lambda p, s: HMAC.new(p, s, hash_function).digest()

    derivedkey = PBKDF2(password, salt, dkLen=(2 * keylength) + ivlength,
                        count=10000, prf=pbkdf2_prf)

`PBKDF2()` calls a Python callback function (`pbkdf2_pr()`) 10000 times.
If one has several vault files, this will cause excessive start times
with `ansible` or `ansible-playbook` (we experience ~15 second startup
times).

Testing the original implementation in 1.9.2 with a vault file:

In [2]: %timeit v.decrypt(encrypted_data)
1 loops, best of 3: 265 ms per loop

Having a recent OpenSSL version and using the vault.py changes in this commit:

In [2]: %timeit v.decrypt(encrypted_data)
10 loops, best of 3: 23.2 ms per loop
9 years ago
Brian Coca 77fc3ce759 removed unused import 9 years ago
Lukas Pirl d9aa14feea fixes remote code execution for su/sudo and strict remote umasks
* temporarily changes umask for creating temporary directories
    * otherwise parent directories may not get chmod'ed and end up
      unreadable
refs #9902
9 years ago
Brian Coca 80ecab5317 Merge pull request #11761 from amenonsen/9843-rebase
Add pciid to LinuxNetwork interface fact
9 years ago
Hugh Saunders f344ec463f Add LVM facts to setup module
This commit adds LinuxHardware.get_device_facts() and calls that from
.populate().

LVM facts are only gathered if the setup module is running as root and
the lvm utilities are available (tested by searching for 'vgs').

If the conditions are met, facts are set for each volume group and
logical volume.

Example:

Test LVM Data:
$ sudo vgs
  VG   #PV #LV #SN Attr   VSize VFree
  test   1   2   0 wz--n- 5.00g 2.00g
$ sudo lvs
  LV      VG   Attr      LSize Pool Origin Data%  Move Log Copy%  Convert
  testlv  test -wi-a---- 1.00g
  testlv2 test -wi-a---- 2.00g

Facts Returned:
$ ansible localhost -i /tmp/inv -m setup -a 'filter=ansible_lvm'
localhost | success >> {
    "ansible_facts": {
        "ansible_lvm": {
            "lvs": {
                "testlv": {
                    "size_g": "1.00",
                    "vg": "test"
                },
                "testlv2": {
                    "size_g": "2.00",
                    "vg": "test"
                }
            },
            "vgs": {
                "test": {
                    "free_g": "2.00",
                    "num_lvs": "2",
                    "num_pvs": "1",
                    "size_g": "5.00"
                }
            }
        }
    },
    "changed": false
}

Test as non-root:
$ ansible localhost -i /tmp/inv-user -m setup -a 'filter=ansible_lvm'
localhost | success >> {
    "ansible_facts": {},
    "changed": false
}

Test without lvm utilities available
$ sudo mv /sbin/vgs{,.bk}
$ ansible localhost -i /tmp/inv -m setup -a 'filter=ansible_lvm'
localhost | success >> {
    "ansible_facts": {},
    "changed": false
}
9 years ago
Brian Coca 5f8db9cd4b changed verbose_override to the new _ansible_verbose_override to keep in line with previous changes
output now defaults back to having indent=4
9 years ago
Trapier Marshall 250620f2ab Add pciid to LinuxNetwork interface fact
This commit adds pciid to the LinuxNetwork fact object.

pciid is gathered if the symlink /sys/class/net/*/device exists.

Example [>>>> emphasis <<<<]:

$ readlink /sys/class/net/eth0/device
../../../0000:01:00.0

$ ansible localhost --ask-pass -i /tmp/hosts -m setup -a "filter=ansible_eth0"
SSH password:
localhost | success >> {
    "ansible_facts": {
        "ansible_eth0": {
            "active": false,
            "device": "eth0",
            "macaddress": "0c:d2:92:5d:6e:8e",
            "module": "alx",
            "mtu": 1500,
       >>>> "pciid": "0000:01:00.0", <<<<
            "promisc": true,
            "type": "ether"
        }
    },
    "changed": false
}
9 years ago
Brian Coca 8746e692c1 changed check to allow for powerpc
fixes #11528
9 years ago
Brian Coca 0c21196633 moved openvz inventory script to new home 9 years ago
Brian Coca 164092a835 optimized module docs 9 years ago
Brian Coca 2575e1540a Merge pull request #11740 from amenonsen/8602-rebase
Encrypt the vault file after editing only if the contents changed
9 years ago
Toshio Kuratomi d2346fd2e2 Python2.4 compat fix 9 years ago
James Cammarata d6cafff2f9 Additional changes to fix fileglob relative path lookups 9 years ago
Toshio Kuratomi 6a68be4e28 Handle quoting of values in dict parameters 9 years ago
James Cammarata cb262449c7 Reworking internal result flags and making sure include_vars hides vault data
Fixes #10194
9 years ago
James Cammarata eebf437d87 Submodule pointer update 9 years ago
Brian Coca b2b19a1dc4 Merge pull request #11751 from amenonsen/playwithoutbook
A better error message for «ansible playbook.yml»
9 years ago
James Cammarata 49a6601856 Further cleanup of internal use of ansible_ssh_host 9 years ago
James Cammarata ee835ff7ad Add a base-level get_basedir method for lookup plugins and fix relative lookups
Fixes #11746
9 years ago
Abhijit Menon-Sen 65d62090c2 A better error message for «ansible playbook.yml»
This is a very conservative change: we add the hint only if we're
definitely going to die already.
9 years ago
James Cammarata 3a4dd523d3 Fix bug where we calculated the relative path of recurisive copies wrong
Fixes #11470
9 years ago
James Cammarata a1a8997e89 Merge pull request #11663 from whereismyjetpack/fix_ansible_ssh_host
only set ansible_ssh_host if not already set
9 years ago
Brian Coca a56ff7ae54 now it really is oneline 9 years ago
Brian Coca 5d1d9f1505 fixed diff output to be as it was in 1.x, copy and template now use the same
functions to do difs.
9 years ago
James Cammarata c56a304ad9 Merge pull request #9195 from reedloden/add-dns-facts
Add several DNS-related facts by parsing /etc/resolv.conf
9 years ago
James Cammarata ccb7fb3b4c Submodule pointer update 9 years ago
James Cammarata 034c766439 Fixing logic in template.py to not assume 'changed' is in the result 9 years ago
James Cammarata a78ed39f93 Merge pull request #11743 from renard/regex_escape-filter
Regex escape filter
9 years ago
James Cammarata db4b3544d7 Fix syntax error in action plugin template.py 9 years ago
Reed Loden eb1fb41576 Add several DNS-related facts by parsing /etc/resolv.conf
Facts include nameservers, domain, search path, sortlist, and options.
9 years ago
Sébastien Gross 36534668f0 Change name from re_escape to regex_escape to fit existing function names. 9 years ago
Sébastien Gross c1e4085251 Add regular expression escaping filter. 9 years ago
Brian Coca 0b6fadaad7 started implementing diff
diff now works with template
also fixed check mode for template and copy
9 years ago
Pablo Figue f8bf2ba1bd Encrypt the vault file after editing only if the contents changed 9 years ago
James Cammarata 73aa5686cc Remove octal escapes from unicode escape handling
Fixes #11673
9 years ago
Brian Coca 5be384bab0 Merge pull request #11733 from amenonsen/csvfile
v2 breakage: lookupfile should lookup the given file=xxx
9 years ago
Brian Coca b19eb0f4dc minor improvements to display 9 years ago
Abhijit Menon-Sen 8737061a8f lookupfile should lookup the given file=xxx
(Earlier it used to lookup the pre-split term.)
9 years ago
James Cammarata eca88d4253 Merge pull request #11732 from amenonsen/9212-rebase
Forbid copy: content="" with a directory destination
10 years ago
Mario de Frutos 4ed664f4d0 Forbid copy: content="" with a directory destination
Fixes #9107, closes PR #9212
10 years ago
Brian Coca b9710b4a34 wrapped new system ssh key lookup in case file does not exist 10 years ago
Patrick Michaud e4df8c3d36 Have paramiko use /etc/ssh_known_hosts
Fixes an issue with a confusing error: "paramiko: The authenticity of host '[host]' can't be established" when ssh on the command line doesn't complain

Closes PR #7730
10 years ago
Brian Coca 0858d97c44 also captures typeerrors for when not getting a proper string in output 10 years ago
Toshio Kuratomi 8ee3b7384d Guard the PROTOCOL setting so that we work on older pythons 10 years ago
Toshio Kuratomi 36382face9 Add a warning about mode being octal 10 years ago
James Cammarata eccfb7e0b5 Adding initial support for includes in handlers
Fixes #11694
10 years ago
Brian Coca 7215470c6f implemented galaxy list in v2 10 years ago
Will Thames 9abd9a8f57 Make ansible-galaxy work with galaxy.ansible.com
Now works with role files that use Ansible Galaxy roles
Still work to do on making this work with internal roles
10 years ago
Brian Coca cff77de917 added todo for future of feature 10 years ago
Brian Coca 0089eb8102 reimplemented logging based on log_path var 10 years ago
James Cammarata ff49c5adac Make sure we're actually looping before looking at 'results' in TaskResult
Fixes #11696
10 years ago
James Cammarata 0fcd53e887 Make sure the command is sudoable before checking for the become password
Fixes #11714
10 years ago
James Cammarata e526743b4f Allowing `args: "{{some_var}}"` for task params again
This is unsafe and we debated re-adding it to the v2/2.0 codebase,
however it is a common-enough feature that we will simply mark it
as deprecated for now and remove it at some point in the future.

Fixes #11718
10 years ago
Brian Coca 681eab1158 fix adhoc that broke with assuming step is always in options 10 years ago
Brian Coca 88e1ef8c9b implemented --step in v2 10 years ago
Brian Coca 3bf1edfd96 Merge pull request #11591 from defionscode/boto3
Connection function for boto3
10 years ago
James Cammarata 7bc789ba64 Properly template task names
Also fixes in the correct way the bug in which the role name was
incorrectly showing up twice in the task name.

Fixes #10347
10 years ago
James Cammarata 698479a623 Add config file info to --version output
Fixes #10348
10 years ago
James Cammarata 37ed756d66 Make sure role names are strings
Fixes #10497
10 years ago
Toshio Kuratomi f8e4aff4c1 Cleanups:
* Don't reference __class__ when we can use the instance itself
* use isdisjoint() as it can stop once a match is found
* Remove a condtional that was taken care of in the conditonal just above
10 years ago
Brian Coca 4e3f5e3be6 Merge pull request #11708 from bcoca/display_me
adding display to plugins and start moving debug to display
10 years ago
Brian Coca 78df37db8a updated submodule refs 10 years ago
Brian Coca a6ba149c49 implemented simplified output for adhoc adn command modules as in v1 10 years ago
James Cammarata 65ae9780fa Merge pull request #11079 from amegianeg/fix_broad_except_in_inventory
Avoid too broad except in Inventory
10 years ago
Toshio Kuratomi e7733a7d3a Update submodule refs 10 years ago
Brian Coca 851ed45bbf adding display to plugins and start moving debug to display 10 years ago
Toshio Kuratomi b06353791c Don't pass mode from synchronize action plugin to the ansible module
Fixes https://github.com/ansible/ansible-modules-core/issues/1783
10 years ago
Brian Coca b678b9828c simplified and normalized lookup search path behaviour 10 years ago
James Cammarata 857f584ebf Merge pull request #11699 from ahamilton55/ah/delegate_variable
v2: Fixing delegate_to when using a variable
10 years ago
Brian Coca b9050ecf18 fixed file lookup pathing in dwim functinos, now does specific paths and priorities and is commented
fixes #11672 as cwd is now not part of thos paths:
if full path is supplied, used that
10 years ago
Andrew Hamilton 7254b22bf4 Fixing delegate_to when using a variable 10 years ago
James Cammarata d412bc72ef Fall back to paramiko if the smart detection fails to run ssh
Fixes #11695
10 years ago
James Cammarata dfcf6a2016 Skip hosts with no state while iterating tasks in the linear strategy
Fixes #11693
10 years ago
James Cammarata 206ef27268 Add flag to template() so data is not converted to a datastructure
Fixes #11641
10 years ago
James Cammarata 7a9916422a Fixing up error handling for fetch_file ops in connection plugins
* enable batch mode (configurable with a config option, on by default)
  for sftp transfers, so we can catch errors more easily
* general cleanup in the local connection plugin and fetch action plugin

Fixes #11612
10 years ago
James Cammarata 4b6525fb58 Fix handler flushing to match how v1 worked
Also adds meta tasks to the list of tasks excluded from tag filtering

Fixes #11574
10 years ago
Toshio Kuratomi d0dcf73716 Update module refs 10 years ago
James Cammarata 135404738e Fix a couple start-at-task issues
* added pattern matching to match v1 functionality
* check the task name, not the task+role name for matches
* make sure the input is unicode

Fixes #11692
10 years ago
James Cammarata 975172c1ef Make sure role name doesn't end up in task name more than once
Fixes #11691
10 years ago
James Cammarata b09f1f8e0b Account for filters in bare variable conversion
Fixes #11530
10 years ago
Jeff Widman 52716c4dc7 Remove mention of 'apache example'
Removed explicit mention of 'apache'
10 years ago
ZviRackover 628925a77d Fix: add missing import 'locale' 10 years ago
James Cammarata 4c733fe4b7 Fix issues with vars_prompt and vars_files
* Prompt had to be moved up, as it needed to be done before the first
  templating of the play occurs, otherwise vars_files won't be templated
  properly
* Fixed a bug related to an earlier fix of vars_files incorporating
  extra vars to do the templating of the file name

Fixes #11404
10 years ago
Toshio Kuratomi 491a4f2a25 Update extras module pointer for docs fix 10 years ago
James Cammarata adf1d4d9b9 Submodule pointer update 10 years ago
James Cammarata 66a8864ae9 Fix environment setting and inheritence
Fixes #11401
10 years ago
James Cammarata 91519d1696 Don't filter include tasks based on tags
Fixes #11320
10 years ago
James Cammarata e64989beb4 Moving ConnectionInformation -> PlayContext
Also making PlayContext a child class of the Playbook Base class,
which gives it access to all of the FieldAttribute code to ensure
field values are correctly typed after post_validation

Fixes #11381
10 years ago
Brian Coca 827b0443c8 now dataloader checkis that you get at least a valid string as a file name 10 years ago
James Cammarata 7124504ccf Incorporate extra vars when templating vars_files
Fixes #11377
10 years ago
James Cammarata b8b206005c Generalize extra variable parsing and loading
Fixes #11352
10 years ago
Dann Bohn 3e79bfa2d6 only set ansible_ssh_host if not already set 10 years ago
James Cammarata 3de6f264dd Fix bug where spaces in the $HOME directory broke things
Fixes #11332
10 years ago
James Cammarata 91a4b866b0 Fix ssh pipelining 10 years ago
Toshio Kuratomi ddec06ccfe Detect the old python-json library
Fixes #11654
10 years ago
James Cammarata 5347db2952 Also check the play basedir for the role
Fixes #11328
10 years ago
James Cammarata dca36c1d16 Reestablishing the use of tags/when for role duplication detection
Not figuring these in can cause problems with "diamond" pattern relationships,
even though this is still not quite optimal.
10 years ago
Toshio Kuratomi a0a6d12b05 Merge pull request #11603 from ansible/get_url-tls-compat
Have openssl autonegotiate tls protocol on python < 2.7.9
10 years ago
Brian Coca 03d7c8d7ca fixed new HPUX networking facts 10 years ago
Brian Coca 80eb7a20ca Merge pull request #11469 from pilou-/local_variable
Fix pyflakes error: use 'msg' variable
10 years ago
Brian Coca 91f2acb029 Merge pull request #10203 from pdelared/devel
Add HP-UX network facts
10 years ago
Pierre-Louis Bonicoli 8c392a94b7 Play.get_name: remove prefix, return name only 10 years ago
Pierre-Louis Bonicoli fda8fa77ab Fix pyflakes error: use 'msg' variable
Error was: local variable 'msg' is assigned to but never used
10 years ago
Brian Coca a09ce4bd87 added callback that skipts 'skipped' 10 years ago
Brian Coca 171c95672e fixed gathering expression as it was triggering when gather_facts was no 10 years ago
Brian Coca f66ba92745 now vault prompts for password if no password file was given, as in 1.x 10 years ago
Brian Coca a8ba9cac3f fixed ansible pull bad options ref, removed print in favor of display 10 years ago
Brian Coca f8905013cd now executes fact search when needed 10 years ago
James Cammarata 2c98b271c8 Make paramiko password detection logic match ssh connection 10 years ago
James Cammarata 3d77723e3d Cleaning up some stuff related to the connection info/become/executable change 10 years ago
James Cammarata 1c185b68be Rearranging some become stuff in relation to action/connection plugins
Moving the make_sudo_cmd() calls back up to the action level so that connection
plugins don't have to know about it at all, and moving some of the become data
(prompt and success_key) into the ConnectionInformation object so they don't
need to be passed around needlessly.
10 years ago
James Cammarata 7a9b5b6fe8 Remove unnecessary make_become_cmd from paramiko exec_command
Fixes #11611
10 years ago
Brian Coca 9dc5607730 Merge pull request #11519 from bcoca/human_readable
new human_readable filter to transform bits and bytes into cake
10 years ago
Brian Coca 115dce028d Merge pull request #11604 from bcoca/faf_deprecated_fixes
fixed first_available_found for template
10 years ago
Brian Coca 4f98fac494 Merge pull request #10914 from bcoca/non_posix_file_copy_fix
hack to prevent tempalte/copy errors on vagrant synced folders
10 years ago
Indrajit Raychaudhuri 4553a41ab5 Add homebrew to package managers' list 10 years ago
James Cammarata 271a7f3281 Cleaning up some of the notify/facts logic added earlier to fix problems 10 years ago
Brian Coca 1aa4155266 generalized warning handling, added it to adhoc also 10 years ago
James Cammarata d4ac73a1bc Adding back capability to display warnings contained in results
Fixes #11255
10 years ago
James Cammarata 5abdd3b821 Handle notifications when coupled with a loop
Fixes #11606
10 years ago
Serge van Ginderachter 8d1549900c fix AnsibleError object name in subelements plugin
fixes #11624
10 years ago
Brian Coca bc5a7fce79 Merge pull request #11616 from halberom/ssh_port
fixes 11607, override ansible_ssh_port in group/host_vars
10 years ago
Gerard Lynch a6c8d30f3e callbacks require a version constant or the v2 code doesn't pass the display param and it gives an error 10 years ago
Brian Coca 6ba706f753 minor doc reformatting
now version_added < 1.3 does not get shown, up from 1.0
option's version_added is also now filterd against this threshold
module version_added is more prominent
exaples now uses pure rst instead of intermingled with html formatting
aliases now shown in description for options
bad version fields now throw warnings instead of exceptions
ansible-doc errors now show traceback in very very verbose mode, for easier debugging
10 years ago
Brian Coca da890f9328 Merge pull request #11622 from amenonsen/gathering
devel breaks «gathering=explicit» setting in ansible.cfg
10 years ago
Brian Coca a09f6236a5 adapated to v2 10 years ago
Brian Coca 10e5c2b46d fixed var scope 10 years ago
Tom Paine 097ed1f17b Add plugin that profiles playbook tasks
Resubmission of https://github.com/ansible/ansible/pull/11270 to
correct v2 file location.

[Description and console output
demonstration](https://github.com/aioue/ansible-plugin-profile/blob/mast
er/README.md#features).

Provides per-task timing, ongoing playbook elapsed time and ordered
list of top 20 longest running tasks at end.
10 years ago
Abhijit Menon-Sen 28e2eae902 Make gathering=explicit work again
There was a confusion between the valid values for defaults.gathering
(explicit/implicit/smart) and a play's gather_facts setting (boolean),
which resulted in gathering=explicit being ignored.
10 years ago
Gerard Lynch d23ab261e1 fixes 11607, allows ansible_ssh_port to be overridden from group or host_vars 10 years ago
Brian Coca 978390693b changed to default 'auto' as it better describes the use= option 10 years ago
James Cammarata 94fa741f96 Make sure files loaded by template action are decoded properly
Fixes #11247
10 years ago