Commit graph

320 commits

Author SHA1 Message Date
Toshio Kuratomi
fdf51e9a96 Use class.mro() instead of custom base_class finder code 2015-03-23 16:14:34 -07:00
James Cammarata
79cf7e7292 Modifying sample for test_become to show more test cases 2015-03-23 15:22:34 -05:00
Toshio Kuratomi
095990b4d8 Moving from getattr to properties for the v2 base class 2015-03-23 15:19:13 -05:00
Toshio Kuratomi
7115d37933 Merge pull request #10518 from pilou-/file_mode_v2
Port #10258 to v2
2015-03-22 19:56:03 -07:00
Pierre-Louis Bonicoli
5942144868 Port #10258 to v2 2015-03-23 01:25:18 +01:00
James Cammarata
bda83fdf84 Fixing bug in v2 dynamic include code, pointed out by apollo13 2015-03-22 19:17:25 -05:00
Brian Coca
c5d5ed17ea added tag resolution mirroring updated v1 2015-03-22 02:05:27 -04:00
Brian Coca
ca540ef9f8 added vault password to dataloder creation 2015-03-21 01:33:10 -04:00
Brian Coca
08896e2cfd enabled vault password file and fixed prompting for connection password on local 2015-03-21 01:23:28 -04:00
Brian Coca
edb1bd25dd added password prompting and become/sudo/su collapsing 2015-03-21 01:19:07 -04:00
Brian Coca
9d3a63945d moved pipeline check to class var that was previouslly added 2015-03-21 00:48:38 -04:00
Brian Coca
b370728439 several fixes to cli tools
- fixed issue with previous commit with bad constants vs C ref on become
- added list-tags
- rearranged common options to utils/cli.py
- added generic validate for both vault and become conflicts
- removed dupes and conflicting options
2015-03-21 00:40:24 -04:00
James Cammarata
93c9803818 Removing some leftover debug prints and cleaning up test sample 2015-03-20 23:25:21 -05:00
Brian Coca
cf96c7719e added become_method list and pipeline support to connection class methods
added generic method to check supported become methods for the connection plugin
2015-03-20 23:48:52 -04:00
Brian Coca
c7c8425856 fixed command line PE options to be the same as in 1.9 2015-03-20 23:12:16 -04:00
James Cammarata
393246fdd3 Make v2 playbook class attributes inheritable
Also fixing some other become-related things
2015-03-20 14:15:12 -05:00
Toshio Kuratomi
b186676e38 Clean up jsonify and make json_dict_*to* more flexible at the same time. 2015-03-20 11:35:19 -07:00
James Cammarata
3473a3bbec Changes to become cmd formatting, per a47c132 2015-03-17 10:50:41 -05:00
James Cammarata
316284c56b Making blocks support become, and cleaning up sudo/su references 2015-03-17 10:35:46 -05:00
Toshio Kuratomi
caf2a96ef9 Merge pdksh fix to v2 2015-03-15 13:22:07 -07:00
James Cammarata
22304afd1d More fixing of become stuff in v2 2015-03-13 15:31:20 -05:00
Toshio Kuratomi
70f56c135c Port #10357 to v2 2015-03-13 11:44:58 -07:00
James Cammarata
070c7c319f Started implementing become in v2 2015-03-13 11:58:00 -05:00
James Cammarata
b1d78a61fc Initial support for vault in v2
TODO:
* password prompting needs to be implemented, but is being worked on
  as part of the become privilege escalation changes
2015-03-12 12:14:57 -05:00
Toshio Kuratomi
ee831e1071 Fix v2 for #10426
Note: In v1 we fix this by transforming into unicode just before we use
it (when we send it to jinja2) because jinja2 cannot handle non-ascii
characters in str.

In v2 our model is that all text values need to be stored as unicode
type internally.  So we transform this to unicode when we read it from
the inventory file and save it into the internal dict instead.
2015-03-11 21:28:45 -07:00
Brian Coca
5f6db0e164 preliminary privlege escalation unification + pbrun
- become constants inherit existing sudo/su ones
- become command line options, marked sudo/su as deprecated and moved sudo/su passwords to runas group
- changed method signatures as privlege escalation is collapsed to become
- added tests for su and become, diabled su for lack of support in local.py
- updated playbook,play and task objects to become
- added become to runner
- added whoami test for become/sudo/su
- added home override dir for plugins
- removed useless method from ask pass
- forced become pass to always be string also uses to_bytes
- fixed fakerunner for tests
- corrected reference in synchronize action plugin
- added pfexec (needs testing)
- removed unused sudo/su in runner init
- removed deprecated info
- updated pe tests to allow to run under sudo and not need root
- normalized become options into a funciton to avoid duplication and inconsistencies
- pushed suppored list to connection classs property
- updated all connection plugins to latest 'become' pe

- includes fixes from feedback (including typos)
- added draft docs
- stub of become_exe, leaving for future v2 fixes
2015-03-10 18:42:36 -04:00
Monty Taylor
8758ba08bd Update common OpenStack requests-related parameters
Also, update docs related to earlier changes in this stack.
2015-03-06 18:20:45 -05:00
Toshio Kuratomi
983b617fb7 Update the modules 2015-03-04 18:56:50 -08:00
James Cammarata
ca4c5a14bb Fixing bug related to dynamic includes + with* loops 2015-03-04 13:52:32 -06:00
James Cammarata
d0cfcdbc4d Getting dynamic includes working a bit better on v2 2015-03-04 13:52:31 -06:00
James Cammarata
f12695f287 Add run_once/BYPASS_HOST_LOOP feature in v2 2015-03-04 13:52:31 -06:00
James Cammarata
4af2d0a907 Reworking v2 play iterator and fixing some other bugs
Still not working quite right:
* dynamic includes are not adding the included tasks yet
* running roles with tags not quite working right
2015-03-04 13:52:31 -06:00
Brian Coca
618722ddee fixed function call to proper number of params 2015-03-04 09:43:13 -05:00
Toshio Kuratomi
07a7353a2c Port changes from #10372 fixing checksumming on csh and backslashes in filenames to v2 2015-03-02 16:08:08 -08:00
Brian Coca
893f1326fc Merge pull request #10114 from bcoca/v2_url_lookup
v2: added draft url lookup
2015-02-26 23:53:07 -05:00
Brian Coca
5a64b2e269 Merge pull request #10305 from bcoca/cartesian
Cartesian
2015-02-26 23:25:33 -05:00
Toshio Kuratomi
825dd25d43 Update module pointers 2015-02-26 13:52:10 -08:00
Monty Taylor
0b8773fc99 Remove state from central argument list
There is an old PR that shows a great use case for having a different
set of states for the server module. Before the other modules start
being in real use, pull this out so that we don't get ourselves into a
pickle.
2015-02-26 11:35:29 -05:00
Toshio Kuratomi
affb66416f Port fix for #10300 to v2 2015-02-25 11:26:43 -08:00
Alvaro Lopez Ortega
2dc910bd14 Fixes bug #10225 - Runtime error
Prevents an exception from raising in some corner cases where SSH might
be misconfigured. It seems not to fix a specific problem, although it
makes the method a little bit more solid.
2015-02-21 22:36:03 +01:00
Brian Coca
5d946ec4f2 adds cartesian product lookup 2015-02-20 09:04:00 -05:00
Toshio Kuratomi
77731440f3 Optimize the plugin loader.
We have been caching the paths to the plugins but before we would only
cache the specific plugin that we were looking for.  This meant that we
might search through all of the plugin directories before finding the
specific module we were interested in.  The next plugin we needed we
might again search through all the plugin directories before finding the
plugin we wanted.

This new code will cache all the potential plugins in each directory
searched.  For a play that only uses one plugin we'll only search
through directories until we encounter the directory that has the proper
plugin.  For a large playbook with many plugins used we'll search
through each directory at most once each.

From v1: 68e86de26f
         730c2ba403
2015-02-18 08:12:01 -08:00
Toshio Kuratomi
55e26db290 Support nested modules with ANSIBLE_LIBRARY env var
From v1: 4c2d06d2fe
2015-02-18 08:07:57 -08:00
Alexey Shamrin
b950a38e30 fix links to ansible-devel in documentation pages 2015-02-17 14:30:31 +03:00
Monty Taylor
d06a277b50 Port openstack module_utils changes to v2 branch 2015-02-13 10:42:21 -05:00
Toshio Kuratomi
9d605171a7 Didn't port isbasestring/isunicodestring from kitchen so switch to isinstance 2015-02-12 13:55:27 -08:00
Toshio Kuratomi
740bd8fbde Update to fix logentries issues 2015-02-12 12:58:36 -08:00
Toshio Kuratomi
dd484e8211 Update modules 2015-02-12 12:16:31 -08:00
James Cammarata
995aa8e24b Making task includes dynamic and fixing many other bugs
Dynamic task includes still need some work, this is a rough first version.
* doesn't work with handler sections of playbooks yet
* when using include + with*, the insertion order is backwards
* fix potential for task lists to be unsynchronized when using the linear
  strategy, as the include conditional could be predicated on an inventory
  variable
2015-02-12 18:17:16 +00:00
Paul Geraghty
0d82b846cc Correct typos 2015-02-11 02:24:12 +00:00
Toshio Kuratomi
c31831f028 Move from using inspect to __file__ in order to find the path to the
module snippets
2015-02-10 14:41:15 -08:00
Toshio Kuratomi
01a6081b49 First swing at making module_common.py more v2-ish 2015-02-10 12:36:23 -08:00
James Cammarata
0e834509c8 Fix in v2 for bare variable conversion 2015-02-10 11:28:04 -06:00
Toshio Kuratomi
7c86db3187 Add KSH compat
cherry picked from https://github.com/ansible/ansible/pull/6899
2015-02-09 15:37:35 -08:00
James Cammarata
31dd75de59 Fixing many bugs in v2
* delegate_to rudimentary support (still needs much more work)
* lots of other things
2015-02-09 16:56:38 -06:00
Toshio Kuratomi
402a6d0533 Explicitly close files opened by facts
Fixes #10157
2015-02-09 14:30:06 -08:00
Toshio Kuratomi
9db17afc85 Update modules 2015-02-09 11:00:57 -08:00
Toshio Kuratomi
4902c06304 Obfuscate passwords in more places where it is displayed 2015-02-09 10:13:13 -08:00
Toshio Kuratomi
8f06ba2bc1 Port https://github.com/ansible/ansible/pull/10162 (py-2.4 compat fix) to v2 tree 2015-02-04 09:46:25 -08:00
Toshio Kuratomi
019f74dced Update modules 2015-02-03 09:02:46 -08:00
Toshio Kuratomi
cea2f2a7cf remove broken nad commented unicode conversion -- in v2, this is done when the data first enters ansible. 2015-02-02 19:08:10 -08:00
Toshio Kuratomi
d50089ca9f Add a function to change output from a str to unicode 2015-02-02 18:28:47 -08:00
Toshio Kuratomi
c655e91436 For now throw an exception if decoding a non-utf8 extra var 2015-02-02 14:14:18 -08:00
Toshio Kuratomi
1ed1af6cb4 Make extra_vars into unicode string type early
Fixes v2 for #10106
2015-02-02 13:58:21 -08:00
Toshio Kuratomi
97438f0039 Update the modules 2015-02-02 10:25:59 -08:00
Toshio Kuratomi
b2c7b911bc v2/plugins/filter is now a symlink as it does not differ between v1 and v2 2015-02-02 10:25:09 -08:00
Toshio Kuratomi
03e213a272 Change the v2 filter plugins into a symlink to v1 as the plugins are the same for both 2015-02-02 10:25:09 -08:00
Toshio Kuratomi
e702a28496 Comment for why we have checksum and checksum_s 2015-02-02 10:25:09 -08:00
Toshio Kuratomi
4b89eb293f port fix for https://github.com/ansible/ansible/pull/10129 to v2 2015-01-30 07:51:19 -08:00
Toshio Kuratomi
ca35d138f1 Update modules 2015-01-30 07:46:36 -08:00
Toshio Kuratomi
747cc26ae1 Update modules 2015-01-29 18:31:15 -08:00
James Cammarata
c978c77796 Fixing more v2 bugs 2015-01-29 16:44:01 -06:00
Brian Coca
c73254543a made env var also consistent 2015-01-29 13:32:00 -05:00
Brian Coca
4fd760467b made inventory consistent in config file, deprecated old config hostfile 2015-01-29 13:28:33 -05:00
James Cammarata
171a67cfef Tweaking role path searching in v2 to be a bit more like v1 2015-01-29 10:56:04 -06:00
Toshio Kuratomi
556d4f0025 Update core modules 2015-01-28 16:31:08 -08:00
Toshio Kuratomi
b3d5f82d29 copy to_bytes and to_unicode functions from kitchen for use in v2 2015-01-28 14:51:33 -08:00
James Cammarata
181dd058eb Fix roles_path loading in v2 2015-01-28 16:08:41 -06:00
James Cammarata
ed05db52ba Fixing playbook includes in v2 where included paths are relative 2015-01-28 15:03:06 -06:00
James Cammarata
b07ab41994 Fix directory loading of host/group vars in v2 2015-01-28 14:06:10 -06:00
James Cammarata
4d9bf37afa Fixing some v2 inventory bugs 2015-01-28 13:21:52 -06:00
James Cammarata
b6a34518ad Fixing checkmode support and some other things in v2 2015-01-28 13:21:52 -06:00
Toshio Kuratomi
0aac6360e4 Update core modules 2015-01-28 10:38:36 -08:00
Brian Coca
2fa9a0958a v2: added draft url lookup 2015-01-27 18:29:16 -05:00
Toshio Kuratomi
418e24cc6c Merge changes from v1 env-setup into v2/env-setup 2015-01-27 11:54:35 -08:00
Toshio Kuratomi
975b547aaa Update core modules 2015-01-27 09:47:20 -08:00
Toshio Kuratomi
a63e4c595f Another place that needs to be json_dict_bytes_to_unicode 2015-01-26 22:04:51 -08:00
Toshio Kuratomi
0f6b87d33e Revert "Fix import statements" -- those impotrt statements were right
before... something else is fishy

This reverts commit 8ab536fbf2.
2015-01-26 22:01:52 -08:00
Toshio Kuratomi
8ab536fbf2 Fix import statements 2015-01-26 21:49:09 -08:00
Toshio Kuratomi
d3666f3265 Make py2.4 remote checksum large-file-enabled as well 2015-01-26 21:44:42 -08:00
James Cammarata
bbd08cd0e2 Fixing more v2 issues with integration tests 2015-01-26 23:41:19 -06:00
Toshio Kuratomi
6f5d18a20e Merge pull request #10087 from axos88/devel
fix checksum calculation for large files
2015-01-26 21:40:09 -08:00
Toshio Kuratomi
335cf2f05f Update module repos 2015-01-26 20:39:53 -08:00
Toshio Kuratomi
915d232d5f jinja2 cannot handle byte strs with non-ascii. So we need to transform potential byte str into unicode type. This fix is for dynamic inventory.
Fixes #10007
2015-01-26 20:39:09 -08:00
James Cammarata
455423aafb Updating submodule reference for v2 2015-01-26 11:34:33 -06:00
James Cammarata
71e774e8bf Implementing playbook-level includes and getting includes integration test working 2015-01-26 11:30:30 -06:00
Akos Vandra
03fa421f3f do not use with, it is not supported all the way down to 2.4 2015-01-25 18:42:59 +01:00
Akos Vandra
e8144b3b90 fixes #10086 2015-01-25 14:51:01 +01:00
Toshio Kuratomi
53a3644ecd Update the modules 2015-01-22 23:17:58 -08:00
James Cammarata
45212394ca Adding in hostvars to v2 and getting more integration tests working 2015-01-22 22:50:21 -05:00
James Cammarata
f9d451eb9c Adding post-validation method to connection info object 2015-01-22 22:49:04 -05:00
Toshio Kuratomi
364f772cc5 Fix quoting of shell parameters used in remote_checksum and add integration test to detect the error
Fixes #682
2015-01-22 12:33:06 -08:00
Toshio Kuratomi
f2b1a289ed Update modules to pull in fixes 2015-01-22 10:27:50 -08:00
Toshio Kuratomi
2a04663255 Port forward lmacken's fix for 9886 to v2 2015-01-20 12:41:02 -08:00
James Cammarata
115684d235 Minor tweak to stub code for v2 ansible-playbook 2015-01-20 01:21:17 -06:00
James Cammarata
eae9a406ad Fixing v2 code for test_yum and added capability to squash items 2015-01-20 01:16:19 -06:00
James Cammarata
5addbe7956 V2 submodule update 2015-01-19 21:18:24 -06:00
James Cammarata
c60c295ada Adding more fixes for integration testing under v2 2015-01-19 16:18:46 -06:00
Toshio Kuratomi
2e0472e03b Allow ansible-playbook to determine if an invalid limit is specified 2015-01-19 13:39:45 -08:00
Brian Coca
23783a5228 Merge pull request #10014 from bcoca/inventory_script_errorhandle
ansible now captures returncode errors on inventory scripts
2015-01-19 15:17:56 -05:00
Brian Coca
976f51e5f5 Merge pull request #9968 from bcoca/v2_play_env
V2: added environment to play
2015-01-19 15:17:15 -05:00
Toshio Kuratomi
46e486ba41 Update modules to fix docs build and unittests 2015-01-19 09:43:30 -08:00
Toshio Kuratomi
01be9f4399 Update modules to latest 2015-01-19 09:07:49 -08:00
Brian Coca
78e1a7ed93 Revert "Fix: Add support for SSL protocol version configuration option" 2015-01-19 08:36:17 -05:00
Toshio Kuratomi
365af69c3e More quotes and reimplement without pushd/popd 2015-01-18 08:17:37 -08:00
Brian Coca
832b3ebea2 adds to v2 the ability to run with empty inventory (implicit localhost),
which is now a warning and not an error.
2015-01-16 18:31:58 -05:00
Brian Coca
9ccabbb95e Merge pull request #9808 from swimlappy/sslconfig
Fix: Add support for SSL protocol version configuration option
2015-01-16 10:25:48 -05:00
James Cammarata
a7615c4a6f Updating v2 submodule pointer again, after updating from devel 2015-01-15 17:00:32 -06:00
James Cammarata
6e5fb3de59 Updating submodule pointer for v2 core modules 2015-01-15 16:58:18 -06:00
James Cammarata
a6d6a89ad1 More work on v2, fixing bugs and getting integration tests running 2015-01-15 16:57:19 -06:00
Toshio Kuratomi
dde32a826f Set default values for shell variables that we use
Fixes #9991
2015-01-15 11:08:00 -08:00
Brian Coca
6b3d0f4788 now captures returncode errors on inventory scripts 2015-01-15 13:38:25 -05:00
James Cammarata
02bc014bcd More work on getting integration tests running for v2 2015-01-15 01:14:22 -06:00
Toshio Kuratomi
6326daa34e Update modules for unarchive handling user,group,mode and add integration test for the same 2015-01-14 19:23:12 -08:00
Toshio Kuratomi
6e6d291f59 Disable egg generation in a way that works on bash 2015-01-14 12:55:25 -08:00
Toshio Kuratomi
67c988411b Comment out egg generation for now as we don't yet have a setup.py for v2 2015-01-14 09:29:35 -08:00
Toshio Kuratomi
5f8d63dd57 Sync changes to v2 env-setup 2015-01-14 09:28:19 -08:00
Toshio Kuratomi
4add30c96e Optimize away a string replacement :-) 2015-01-14 09:16:09 -08:00
James Cammarata
4010f79441 Updating v2 submodule sha 2015-01-14 10:07:22 -06:00
James Cammarata
2aeb79f45f Starting work on getting integration tests working on v2
This is incomplete work, and requires some minor tweeks to the integration
tests which are not included in this commit.
2015-01-12 16:07:01 -06:00
James Cammarata
b0486f7a20 Updating submodule pointer for v2 2015-01-09 14:28:02 -06:00
Brian Coca
b250e138d3 added environment to play and made both it and no_log inhertiable by
task
2015-01-09 12:39:49 -05:00
James Cammarata
1544dde932 Moving over all lookup plugins to v2 2015-01-09 09:37:45 -06:00
James Cammarata
63c2d616e7 Starting to move over lookups and fixing some bugs related to that 2015-01-08 10:52:14 -06:00
James Cammarata
0823fb2cd9 fixing bug with role paths 2015-01-07 13:54:09 -06:00
James Cammarata
fd67a20787 Fixed "until" loop support, and cleaned up the async_wrapper/polling a bit 2015-01-07 11:44:52 -06:00
James Cammarata
065733ad93 Moving more action plugins over and fixing some bugs with role loading 2015-01-07 10:48:33 -06:00
James Cammarata
7f7e9914aa Changing tag evaluation method to match when conditional method 2014-12-29 23:30:37 -06:00
James Cammarata
62d79568be Creating playbook executor and dependent classes 2014-12-29 10:46:47 -06:00
Jason Holland
eedc51f213 Add support for SSL protocol version configuration option. Also fix 2 places where the SSL version was not being set properly. 2014-12-13 21:20:33 -06:00
Toshio Kuratomi
b6c3670f8a Mark some inventory methods that I'm thinking should go away (and their
replacements)
2014-12-09 13:52:47 -06:00
Toshio Kuratomi
b4dfcc2d28 Start laying out how the pieces of code that parse inventory information into ansible will work 2014-12-09 13:52:42 -06:00
Toshio Kuratomi
bdf42104cd Add some more comments from jimi-c and mpdehaan 2014-12-09 13:52:39 -06:00
Toshio Kuratomi
74f48ed79d Inventory with docstrings and notes on how to change 2014-12-09 13:52:35 -06:00
Veres Lajos
bf5d8ee678 typofixes - https://github.com/vlajos/misspell_fixer 2014-12-04 22:23:35 +00:00
James Cammarata
a1d990a673 Minor tweaks to v2 playbook iterator to support executor testing 2014-11-14 10:25:37 -06:00
James Cammarata
24bebd85b4 Adding v2 task/block iterator and some reorganizing 2014-11-08 01:44:21 -06:00
Toshio Kuratomi
f1267c0b05 Move from md5 to sha1 to work on fips-140 enabled systems 2014-11-06 21:28:04 -08:00
James Cammarata
229d49fe36 Adding new playbook objects for v2
* Playbook
* TaskInclude
2014-11-05 21:13:47 -06:00
James Cammarata
0ed9746db3 Adding Play class for v2 2014-11-04 15:16:53 -06:00