Commit graph

227 commits

Author SHA1 Message Date
Toshio Kuratomi
dc9b36ccb0 Some notes on optimizing module_replacer 2015-03-30 19:15:41 -07:00
Toshio Kuratomi
0ec1b025a9 Update the module pointers 2015-03-26 11:59:53 -07:00
Toshio Kuratomi
ea2d00c558 v2 equivalent for https://github.com/ansible/ansible/pull/8564
Looks like there's currently no code for the ansible_*_interpreter but
modified the note abouot adding it
2015-03-26 11:57:27 -07:00
Toshio Kuratomi
60f972dfe4 Fix the command module handling of non-ascii values.
We can't depend on the args being unicode text because we're in module
land, not in the ansible controller land
2015-03-25 13:57:48 -07:00
Toshio Kuratomi
38892e986e Convert exceptions to unicode using to_unicode rather than str. that stops unicode errors if the string has non-ascii text 2015-03-25 13:56:46 -07:00
Toshio Kuratomi
131683523b Add some comments to explain how the property code for Attributes works 2015-03-23 23:16:06 -07:00
Brian Coca
8a0b8629e8 readded -u option 2015-03-24 00:18:04 -04:00
Toshio Kuratomi
bc69ad8147 Rename munge methods to preprocess_data.
Remove the call to preprocess_loop data from playbook_include as
includes can't be used with loops.
2015-03-23 18:42:28 -07:00
Toshio Kuratomi
6ba24e9fa1 Remove comment on changing Base.munge => it's used by become.py 2015-03-23 17:41:02 -07:00
Toshio Kuratomi
63c54035de Get rid of iteritems usage when we only care about the keys 2015-03-23 16:38:51 -07:00
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
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
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