Commit Graph

619 Commits (81ee2412a4f9a7eed6462b23dc1323386b43bcbb)

Author SHA1 Message Date
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.
2015-08-15 12:17:40 -04:00
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
2015-08-14 00:33:36 -04:00
James Cammarata 6c036c3633 Template parent include file paths
Fixes #11955
2015-08-13 13:01:45 -04:00
James Cammarata a498876bec Make sure playbook includes use unique var dictionaries before modification 2015-08-12 23:38:47 -04:00
James Cammarata dd67b1e4d6 Adjust relative include searches when roles are involved
Fixes #11895
2015-08-12 17:15:52 -04:00
James Cammarata ac66e4001c Fix for variable precedence with tasks/includes
Fixes #11881
2015-08-12 10:49:45 -04:00
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
2015-08-12 07:37:03 -04:00
James Cammarata adb9d7e461 Track role execution per-host, not overall in the role
Fixes #11863
Fixes #11878
2015-08-11 16:34:58 -04:00
James Cammarata 169d316704 Fixing bugs in include + loops
Fixes #11872
2015-08-11 01:33:43 -04:00
James Cammarata e7d0c9f820 Re-add vars to Base and standardize var processing
Fixes #11779
2015-08-07 00:06:30 -04:00
Brian Coca dbe7a9fe2f Merge pull request #11857 from quinot/bug/playbook-init-comment
Minor comment fix
2015-08-06 23:39:08 -04:00
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
2015-08-06 17:21:02 -04:00
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
2015-08-05 13:54:00 -04:00
Thomas Quinot 5d3cb636ad Minor comment fix 2015-08-05 11:30:26 +02:00
James Cammarata 61e76fd707 Allow conditionals on PlaybookInclude statements
Fixes #11852
2015-08-04 15:24:28 -04:00
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
2015-08-04 12:25:53 -04:00
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
2015-08-04 01:12:27 -04:00
Brian Coca 015b922c1f fix quoting for become commands
fixes #11808
2015-08-03 18:49:23 -04:00
James Cammarata 8279557e8f Allow role names to be templated
Fixes #10858
2015-08-03 16:26:13 -04:00
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
2015-08-03 12:04:31 -04:00
Abhijit Menon-Sen a9b020d6de Remove TODO: the play already overrides options 2015-08-01 20:09:02 +05:30
Abhijit Menon-Sen 7b3cb2126c Remove outdated FIXME; ROLE_CACHE is already implemented below 2015-08-01 09:34:32 +05:30
Toshio Kuratomi d1933accc3 Fixes for synchronize with delegate_to 2015-07-31 17:41:41 -07:00
Brian Coca fa8043c0ba corrected typo 2015-07-31 13:49:48 -04:00
Brian Coca f16b745f17 now properly uses default port if defined 2015-07-31 12:01:58 -04:00
James Cammarata efcad3aa6d Re-allow vars on tasks, specifically for includes 2015-07-30 14:14:49 -04:00
James Cammarata 782c2f75df Make sure role deps inherit conditionals/tags specified via params
Fixes #7353
2015-07-29 14:49:08 -04:00
James Cammarata 71867f9480 Remove vars attribute from base
Fixes #11779
2015-07-29 09:45:30 -04:00
Brian Coca cc85473c1e show role search path when not finding a role
fixes #9770
2015-07-28 19:07:47 -04:00
James Cammarata 42cfacf83b Switch up the task/host overrides for PlayContext to use the compiled vars dict
Fixes #11436
2015-07-28 16:25:44 -04:00
Brian Coca 0b6fadaad7 started implementing diff
diff now works with template
also fixed check mode for template and copy
2015-07-26 12:22:22 -04:00
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
2015-07-23 15:45:36 -04:00
James Cammarata 37ed756d66 Make sure role names are strings
Fixes #10497
2015-07-23 15:26:31 -04:00
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
2015-07-23 12:13:45 -07:00
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
2015-07-22 11:21:38 -04:00
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
2015-07-22 07:45:03 -04:00
James Cammarata 975172c1ef Make sure role name doesn't end up in task name more than once
Fixes #11691
2015-07-22 07:28:25 -04:00
James Cammarata 66a8864ae9 Fix environment setting and inheritence
Fixes #11401
2015-07-21 13:57:30 -04:00
James Cammarata 91519d1696 Don't filter include tasks based on tags
Fixes #11320
2015-07-21 12:37:22 -04:00
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
2015-07-21 12:13:50 -04:00
James Cammarata 5347db2952 Also check the play basedir for the role
Fixes #11328
2015-07-20 14:47:38 -04:00
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.
2015-07-20 14:37:20 -04:00
Pierre-Louis Bonicoli 8c392a94b7 Play.get_name: remove prefix, return name only 2015-07-20 12:41:39 +02:00
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.
2015-07-17 13:05:00 +05:30
James Cammarata 86a83c16b8 Remove some dead code from the base load_data method
Was causing an odd error which threw off the error detection code
when the datastructure was a string corresponding to a variable.
2015-07-16 15:10:41 -04:00
James Cammarata 052f3c2ece Fixing allow_duplicate and variable resolution bugs
Fixes #11205
2015-07-16 11:39:40 -04:00
James Cammarata 9fe0f21f6a Allow omit to be used on Playbook-level fields
Fixes #11173
2015-07-15 13:53:59 -04:00
James Cammarata f40b66d841 Make sure the basedir is unicode
Fixes #10773
2015-07-12 16:40:00 -04:00
James Cammarata c5c1dc2f11 Removing tags/when from role param hash calculation 2015-07-11 21:49:35 -04:00
James Cammarata f8ddf2eb04 Move role cache into the play to avoid roles crossing play boundaries 2015-07-10 02:43:53 -04:00