Commit graph

28548 commits

Author SHA1 Message Date
Justin Mayer
fda131504b Support multiple vault passwords in keyring script
Allows users to specify a key name in a given project’s `ansible.cfg`
file and thus handle keyring integration with vaults with different
passwords. If no key name is specified, the original default `ansible`
key name will be used.

Other improvements:

* `username` is now optional; defaults to user that invokes the script
* change string interpolation to new `.format()` style
* clean up and expand upon documentation
* enforce PEP 8 compliance
2017-02-08 16:05:36 -05:00
stephane
1b8c2a2b0b Restore "skipping: no hosts matched" message
In 159aa26b36
the result of _get_serialized_branches when no hosts were matched
changed from [[]] to []. Thus, the v2_playbook_on_no_hosts_matched
callback would not fire. Change the check so we get the error message
again. Fixes #17706
2017-02-08 16:03:29 -05:00
Matt Clay
1293ec85dd Convert unit test yield to pytest parametrize. 2017-02-08 12:56:23 -08:00
jerry
bd19a9e847 removing unwanted variables and using to_native instead of str()
(cherry picked from commit c4b09cbcb4)
2017-02-08 15:53:58 -05:00
jeronimog
4f85e4831d Adding self.log() on IOErrors and OSErrros
(cherry picked from commit ef1ecfd2c2)
2017-02-08 15:53:58 -05:00
Brian Coca
300718e811 use new 'warn' method
this also prevents warnings from being lost
2017-02-08 15:53:58 -05:00
Matt Clay
46f9648aa1 Fix type() usage check in validate-modules.
This avoids false positives when 'if' or 'or' are in a string
preceding the use of type() on the same line.
2017-02-08 12:17:10 -08:00
Tim Rupp
43ae12757e Adds CLI classes for some F5 modules (#21119)
To support the _command module for F5 products, this class is needed.
2017-02-08 18:25:20 +00:00
Ralph Rodkey
b1f06f6555 [cloud] make ec2_asg honor 'wait_for_instances' on delete 2017-02-08 12:57:59 -05:00
Brian Coca
5f29117e59 become options dont qualify as new anymore 2017-02-08 11:51:15 -05:00
Matt Martz
c3fb4c837b Fix module validation errors for avi_api_session (#21154) 2017-02-08 10:32:13 -06:00
Pilou
4e5c9c3d0d default and minimal callback: display warnings in a consistent manner (#21144)
* default/minimal callback: don't display warnings twice

* minimal callback: display warnings raised by MODULE_NO_JSON modules
2017-02-08 10:58:39 -05:00
Marius Gedminas
2efb692cc4 known_hosts: support --diff (#20349)
* known_hosts: support --diff

* known_hosts: support --diff also without --check

* Add unit tests and fix incorrect diff in one corner case

Tests are good!

* Refactor for readability

* Python 3 compat

* More Python 3 compat

* Add an integration test for known_hosts

* Handle ssh-keygen -HF returning non-zero exit code

AFAICT this is a bug in ssh-keygen in some newer OpenSSH versions
(>= 6.4 probably; see commit dd9d5cc670):
when you invoke ssh-keygen with -H and -F <host> options, it always
returns exit code 1.  This is because in ssh-keygen.c there's a function
do_known_hosts() which calls

  exit (find_host && !ctx.found_key);

at the end, and find_host is 1 (because we passed -F on the command line),
but ctx.found_key is always 0.  Why is found_key always 0?  Because the
callback passed to hostkeys_foreach(), which is known_hosts_hash(),
never bothers to set found_key to 1.

* This test does not need root

* Avoid ssh-ed25519 keys in sample known_hosts file

Older versions of OpenSSH do not like them and ssh-keygen -HF
aborts with an error when it sees such keys:

  line 5 invalid key: example.net...
  /root/ansible_testing/known_hosts is not a valid known_hosts file.

* Fix Python 3 errors

Specifically, the default mode of tempfile.NamedTemporaryFile is 'w+b',
which means Python 3 wants us to write bytes objects to it -- but the
keys we have are all unicode strings.
2017-02-08 09:56:03 -05:00
Brian Coca
d0bc98bddb added url and metadata 2017-02-08 09:48:59 -05:00
Brian Coca
82337cf52a remove warning/deprecation keys after usage 2017-02-08 09:47:10 -05:00
Brian Coca
942ed146c3 errors to stderr 2017-02-08 09:47:10 -05:00
Gaurav Rastogi
798972c72a Avi Networks Ansible modules. (#20415)
* Avi Networks Ansible modules.
Avi Version: 16.3.4

* Fixed Review comments
1. Changed description to be full sentences
2. Fixed Pep8 warnings.
3. Fixed comments and descriptions.

* 1. Fixed descriptions and messages as per review comments.
2. Added descriptions for the missing parameters.

* Fixed the shippable break due to the incorrect description format

* Removed the extra modules so that there is a single module for the first commit

* Updated license to BSD based on review comments

* updated comments based on review feedback

* Refactored code to handle POST and PUT scenarios where playbook does not need to check whether object is present.
Moved ansible helper utilities to module_utils as now roles can be patched with module_utils as well.

* fixed pep8 warnings
2017-02-08 09:47:18 -05:00
Thomas Krahn
9f3870ddcd IPA: Remove duplicated code and fix a bug that occurs if empty lists were passed and IPA didn't know the value before (#19210)
* ipa: Add method get_diff and modify_if_diff to class IPAClient

* ipa_*: Use method get_diff and modify_if_diff from class IPAClient
2017-02-08 14:16:44 +00:00
Kevin Kuhls
534dbb094b adding support for no candidate config (#20821)
commit fails for devices with no candidate config, such as when configuraion is written to running-config store.  Commit is set to True in main's call of netconf_edit_config.  The simple edit is to add the additional logic around sending the commit.  Otherwise you could change commit could be set to (if ":candidate" in m.server_capabilities) in the call of netconf_edit_config.  Either way would work.  I'll defer for the decision of which.
2017-02-08 08:58:23 -05:00
Robert Simmons
b7e78656ac [cloud] gce_net fix for unsetting firewall rule properties in the project. (#20483) 2017-02-08 08:49:04 -05:00
Ricardo Carrillo Cruz
64ed9bcfd7 Add unit tests for ios_facts module (#21114) 2017-02-08 12:24:25 +01:00
René Moser
a6f887ce6e cloudstack: cs_portforward: implement vpc support (#19044)
* cloudstack: cs_portforward: implement vpc support

* cloudstack: cs_portforward: add vpc and network to returns

* cloudstack: cs_portforward: networkid must not be used for rule listing

* cloudstack: fail for get_network when vpc but no network name

This seem to be a global pattern for get_network, we want to enforce a
network name to be set if a vpn param is given.

This is used for cs_portforward.

* cloudstack: cs_portforward: doc: fix defaults for vpc, network
2017-02-08 07:57:36 +01:00
Marius Gedminas
577d0e43ba apt_repository: check for enabled repositories correctly
Fixes #20754.

Details: UbuntuSourcesList.add_source() had a quick check for PPAs being
already present in the source lists.  The check was looking for the PPAs
URL to be present in self.repo_urls, which should contain all valid and
enabled repositories.

The enabled check in repo_urls was incorrect.  It was checking the tuple's
2nd item (which means "valid") and ignoring the 3rd item (which means
"enabled").

self.files contains tuples (line_number, valid, enabled, source_line,
comment_text).  Ideally it would be using named tuples instead of
indexing, to avoid bugs like that, but Python 2.4 didn't have named
tuples, so we can't do that (yet).
2017-02-07 18:42:57 -08:00
Matt Clay
f16ee2841b Add retries to Shippable CI scripts. (#21108)
* Add retry.py for auto-retry in CI scripts.
* Add retries to other and units CI scripts.
2017-02-07 16:33:45 -08:00
Dag Wieers
4f96ee5e27 Add missing iteritems definition (#21106)
Also moved most imports out of try-except block.
2017-02-07 18:31:40 -05:00
Toshio Kuratomi
a3eab4fc48 Add 2.3.0 entries for module_utils via pluginloader, selectors, and py3 (#21019)
* Add 2.3.0 entries for module_utils via pluginloader, selectors, and py3

* Add roadmap-2.3 updates and an item for roadmap-2.4
2017-02-07 15:27:14 -08:00
Matt Clay
189fee4853 Fix vyos unit tests. 2017-02-07 15:21:34 -08:00
Ryan S. Brown
d12e9f5748 Convert error to the native text type before writing to stderr
Fixes #20588
2017-02-07 18:01:58 -05:00
René Moser
c00604210c cs_instance: fix ssh keys not found in projects (#21104)
Follow up of 5475f3ee64
2017-02-07 22:14:43 +01:00
s-hertel
cdfa583235 Two added AWS modules for ElastiCache 2017-02-07 15:52:28 -05:00
Ricardo Carrillo Cruz
0adca6b7d4 Set block indentation to 1 on iosxr templates (#21105)
Network devices in the lab have by default an indentation of 1 for
sub-sections, and so does the netcfg.NetworkConfig constructor
indent param.
This will fix reported issue 21055, and make the integration tests
to pass.

Fixes #21055
2017-02-07 21:13:20 +01:00
bverschueren
3b64bff7a5 fix missing ident in provider dict assignment (#21089)
Thanks @bverschueren!
2017-02-07 10:54:49 -08:00
John R Barker
9ddc94d0e9 Update ROADMAP_2_3.rst 2017-02-07 18:47:36 +00:00
Adrian Likins
174961b945 Fix action test (#21102)
* update _parse_returned_data for no _ansible_parsed

_parse_returned_data no longer adds _ansible_parsed

* pep8 cleanups
2017-02-07 13:35:51 -05:00
Matt Davis
764e1cc630 update azure roadmap items 2017-02-07 10:09:12 -08:00
Adrian Likins
7278308ca2 Redhat subscription (#20729)
* Make unused redhat_subscriptions do something

rhsm_baseurl/server_insecure were module params that were
never used previously. Hook them up for register options.

* pep8/style cleanups
* Set a module scope SUBMAN_CMD before we ref it as a global
* move ansible imports to top, remove '*' imports
* remove redhat_subscriptions from pep8 legacy
2017-02-07 12:07:01 -05:00
Nathaniel Case
530701b398 Vyos system module (#21060)
* vyos_system tests

* Merge vyos_system fixture with vyos_config fixture
2017-02-07 12:04:14 -05:00
Adrian Likins
5766689dd5 More unit tests for plugins/action/ (#20887) 2017-02-07 11:42:03 -05:00
John R Barker
54a2be9e2e formatting 2017-02-07 16:35:32 +00:00
Adrian Likins
a5d3b186ba update ansible-ssh in roadmap 2017-02-07 11:27:45 -05:00
John R Barker
965fe80f1a formatting 2017-02-07 16:27:01 +00:00
Jason McKerr
6a6f13a5bd Update ROADMAP_2_3.rst 2017-02-07 11:20:14 -05:00
Jason McKerr
64a3c8f9de Update ROADMAP_2_3.rst 2017-02-07 11:19:26 -05:00
Jason McKerr
31fbc6e203 Update ROADMAP_2_3.rst 2017-02-07 11:18:27 -05:00
Matt Martz
5942de603d Legacy pep8 clean fixes for contrib and hacking (#21081) 2017-02-07 09:49:55 -06:00
Ryan Brown
0de96d68f6 Update roadmap for cloud work 2017-02-07 10:44:29 -05:00
Abdul Anshad A
b30942787b Add guest shutdown/reboot (#20564) 2017-02-07 10:33:13 -05:00
John R Barker
b773b99136 developing_module status 2017-02-07 15:12:19 +00:00
Craig Francis
3e003b10fa Reminder that lookup(‘file’) can be used (#20649)
* Reminder that lookup(‘file’) can be used

Sometimes the block of text does not easily fit into a playbook, so this acts as a reminder (or a prompt for anyone who hasn't used this before) that the content could be stored in an separate file.

I've also included `backup: yes` as I think this is a good example of where a backup might be needed.

* Correct the not so "smart quotes"

* Update blockinfile.py

Replace – with an an ASCII -
2017-02-07 13:57:49 +00:00
Jiri Tyr
5d9dd5934a Making the decoration more clear (#20931) 2017-02-07 11:07:41 +00:00