Commit Graph

1096 Commits (8e0f95951dd9e2095891ac4ba5eec67f1ca9c14b)

Author SHA1 Message Date
Brian Coca abb964a5a0
move extravars and option vars loading into VM (#51070)
* move extravars and option vars loading into VM

  also safedir setting, all these are intrinsic to VM
  avoid uneeded and inefectual shallow copy
  remove setters/getters as VM now does most of the work in init
  updated and added tests

* feedback + fixes

* keep extra_vars property for vars_prompt

* pass values not objects
2019-01-30 16:25:36 -05:00
Brian Coca 4ac0c23db6
added unsafe toggle to vars_prompt (#49219)
* added unsafe toggle to vars_prompt

	fixes #47534
2019-01-30 15:01:13 -05:00
Brian Coca 96b3ef5553
Doc fragments to plugins (#50172)
* promote doc_fragments into actual plugins

  change tests hardcoded path to doc fragments
  avoid sanity in fragments
  avoid improper testing of doc_fragments
  also change runner paths
 fix botmeta
 updated comment for fragments
 updated docs
2019-01-23 20:03:47 -05:00
Matt Martz 8c08d03989
Fieldattribute inheritance with defaults (#50891)
* Add tests for check_mode at play and task level

These test inheritance of check_mode from the various levels (command
line, as a play attribute and as a task attribute) so they will be
useful for checking that the change to fieldattribute inheritance with
defaults works

* Add a sentinel object

The Sentinel object can be used in place of None when we need to mark an
entry as being special (usually used to mark something as not having
been set)

* Start of using a Sentinel object instead of None.

* Handle edge cases around use of Sentinel

* _get_parent_attribute needs to deal in Sentinel not None

* No need to special case any_errors_fatal in task.py any longer

* Handle more edge cases around Sentinel

* Use Sentinel instead of None in TaskInclude

* Update code to clarify the vars we are copying are class attrs

* Add changelog fragment

* Use a default of Sentinel for delegate_to, this also allows 'delegate_to: ~' now to unset inherited delegate_to

* Explain Sentinel stripping in _extend_value

* Fix ModuleArgsParser tests to compare with Sentinel

* Fixes for tasks inside of roles inheriting from play

* Remove incorrect note. ci_complete

* Remove commented code
2019-01-23 11:40:07 -06:00
Brian Coca 960388143f
faster config loading (#48333)
* faster config loading

  - used already loaded module var instead of doc functions
  - add preload to populate config defs cache
  - avoid debug work when not in debug
  - generators, force consumption
2019-01-23 12:06:54 -05:00
aaronk1 0d97629e4d Update vmware.py minor typo (#51047)
"supported added" changed to "support added"
2019-01-21 13:52:26 +05:30
Johannes Brunswicker c6d404cbe9 Add optional headers to utm modules (#49856)
* removed info declaration from documentation fragment as this is not implemented
* added optional headers for POST and PUT requests
* updated documentation
* added missing headers field decalaration
* removed info choice from state field
* added tests for the new utm_utils function
* fixed class invocation
* added missing required params
* fixed the pytests
2019-01-17 19:06:50 +05:30
Dag Wieers a79441ca30
Rename MSC modules to MSO nomenclature (#50959)
* msc_tenant: improve docs

* Rename MSC modules to MSO

* Rename MSC-related objects to MSO nomenclature

* Add missing doc fragments
2019-01-16 14:53:38 +01:00
Abhijeet Kasurde 4817dcd0fc Minor typos (#50371)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-15 11:37:00 +00:00
Dag Wieers 67b455a8ac
Update documentation notes, copyright and license (#50927) 2019-01-15 12:24:34 +01:00
Sumit Jaiswal 3f70518257
Support for NIOS modules to use environment variables in provider (#49056)
* env var username/paswd support

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* including all env vars of nios doc

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing default wapi version in doc-s

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* review statement fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-01-14 23:25:24 +05:30
Abhijeet Kasurde 85dd0a7e74
VMware: vcenter_license fixes (#50794)
* Updated document fragment
* Used PyVmomi Helper class
* Added check for vcenter server

Fixes: #50752

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-14 21:50:21 +05:30
Hideki Ikemoto 6995e04b1e Fix: lxca_nodes misspelled in the lxca_common.py (#50734)
misspelled "requirements" to "requirement".

https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_documenting.html
2019-01-10 02:57:32 -06:00
Abhijeet Kasurde 17bb4f4932 default: callback plugin allow unreachable task to stderr (#50533)
Provide toggle flag to allow display of unreachable task to stderr
using default callback plugin.

Fixes: #48069

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-09 11:43:59 -05:00
Richlv 73ffe683b2 Update documentation for mysql_db notes (#50444)
* Simplify the requirement section to avoid duplicating info already in mysql_document_fragment.
* Package installation section simplified, mentioned RHEL; a typo fix in "than".
* added dnf for Fedora
2019-01-04 08:40:57 +05:30
Toshio Kuratomi 27c7d5bb01 Move the arguments module into cli/ and context_objects into utils
* Note: Python2 is not as intelligent at detecting false import loops as
  Python3.  context_objects.py cannot be added to cli/arguments because it
  would set up an import loop between cli/__init__.py,
  cli/arguments/context_objects.py, and context.py on Python2.

ci_complete
2019-01-03 18:12:23 -08:00
Toshio Kuratomi afdbb0d9d5 Save the command line arguments into a global context
* Once cli args are parsed, they're constant.  So, save the parsed args
  into the global context for everyone else to use them from now on.
* Port cli scripts to use the CLIARGS in the context
* Refactor call to parse cli args into the run() method
* Fix unittests for changes to the internals of CLI arg parsing
* Port callback plugins to use context.CLIARGS
  * Got rid of the private self._options attribute
  * Use context.CLIARGS in the individual callback plugins instead.
  * Also output positional arguments in default and unixy plugins
  * Code has been simplified since we're now dealing with a dict rather
    than Optparse.Value
2019-01-03 18:12:23 -08:00
Dag Wieers 14b03ac15f
MSC: Various bugfixes and features enhancements (#50200)
* MSC: Various bugfixes and features enhancements

This PR includes:
- Lookups of roles, labels and domains
- Auto-create new labels
- Improvements to comparing complex datastructures
- Force removal of sites
- Support non top-level queries
- Document internal functions
- Add parameter types to modules
- Fix documentation examples
- Improvements to idempotency wrt. returning changed
- Support site locations
- Update permission list
- Various improvements to integration tests

* Fix Ci issues
2018-12-20 18:18:46 +01:00
Dag Wieers ee29ba5d4f plugin_formatter.py: Improve the output when processing docs (#46541)
* Improve the output when processing files

* Update docs/bin/plugin_formatter.py

Co-Authored-By: dagwieers <dag@wieers.com>

* Show progress indicator.

* Don't pp.pformat() huge structures when they aren't used anyway.

This saves ~10 seconds on my machine.

* Only show ASCII spinner if stdout is a TTY.

* Fix: E722 do not use bare 'except'
2018-12-18 11:23:49 -06:00
Dag Wieers 15d39f9108 Sanity fixes in various modules (#50080) 2018-12-18 09:53:46 -06:00
Dag Wieers c1ac87794e
ACI: Fix module parameters (#50051)
* Fix parameter type of private_key

* Fix parameters of various ACI modules
2018-12-18 09:30:28 +01:00
Dag Wieers 244c4c893d Add types to files fragment (#49996) 2018-12-17 17:16:35 -05:00
Dag Wieers d4ee599fe9 Add types to common url parameters (#50000) 2018-12-17 11:26:07 -06:00
Dag Wieers 00a83035f2 Meraki: Add types to common parameters (#49998) 2018-12-17 11:24:43 -06:00
Dag Wieers 0eb2924380 MSC: Add type to common module parameters (#49999) 2018-12-17 11:23:51 -06:00
Dag Wieers e8885ee4e8 ACI: Add types to modules and doc fragment (#49997)
* ACI: Add types to module doc fragment

* Add types to ACI modules too
2018-12-17 11:23:10 -06:00
Dag Wieers b3f062b5ca Clean up backup doc fragment (#49995) 2018-12-17 10:41:43 -06:00
Dag Wieers 3bcc0c0498 Add types to vmware REST client/VCA doc fragments (#50001) 2018-12-17 10:33:40 -06:00
Dag Wieers ba573777ba Add types to docker module fragments (#50002) 2018-12-17 11:55:31 +00:00
Toshio Kuratomi 3fba006207 Update bare exceptions to specify Exception.
This will keep us from accidentally catching program-exiting exceptions
like KeyboardInterupt and SystemExit.
2018-12-16 15:03:19 -08:00
Dag Wieers baf0ad2309 Docs: Add a "seealso" section to the module docs (#45949)
* Docs: Add a separate  "seealso" section to the module docs
to list related modules and/or related references. This clears up the notes
section for things that are actual notes.

So you can add a section in your module documentation and four types of
references are possible.

    seealso:

    # Reference by module name
    - module: aci_tenant

    # Reference by module name, including description
    - module: aci_tenant
      description: ACI module to create tenants on a Cisco ACI fabric.

    # Reference by rST documentation anchor
    - ref: aci_guide
      description: Detailed information on how to manage your ACI infrastructure using Ansible.

    # Reference by Internet resource
    - name: APIC Management Information Model reference
      description: Complete reference of the APIC object model.
      link: https://developer.cisco.com/docs/apic-mim-ref/

This PR also includes:

- Implements ansible-doc support
- Implements schema support for the seealso options
- Updates to the development documentation
- Rename filter convert_symbols_to_format to rst_ify, cfr the existing html_ify and tty_ify filters
  - This makes the existing template a lot easier to read and fixes the confusion I had myself rereading the template (again).
- We fixed the possible suboption types (which was limited to 'bool' only)

* Use latest stable instead of devel docs
2018-12-12 14:19:58 -06:00
Nathaniel Case 02432565cd
Remove cliconf from httpapi connection (#46813)
* Bare minimum rip out cliconf

* nxapi changeover

* Update documentation, move options

* Memoize device_info

* Gratuitous rename to underscore use of local api implementation

Fixup eos module_utils like nxos

* Streamline version and image scans

* Expose get_capabilities through module_utils

* Add load_config to module_utils

* Support rpcs using both args and kwargs

* Add get_config for nxos

* Add get_diff

* module context, pulled from nxapi

We could probably do this correctly later

* Fix eos issues

* Limit connection._sub_plugin to only one plugin
2018-12-11 16:26:59 -05:00
David Lassalle 935fa51143 Fix spelling error in Display.banner description (#49790)
wit h -> with
2018-12-11 15:00:15 -06:00
Felix Fontein 270b6a2ee2 docker_*: hint at DOCKER_CONFIG environment variable (#49689)
* Hint at DOCKER_CONFIG environment variable directly supported by docker-py.

* Adjust wording.
2018-12-10 13:40:29 +00:00
Sorin Sbarnea cba3290621 Record host specific messages to log files (#28661)
Fixes #28660

Change-Id: I0028f16320fd63c6ee0fa3be942fc88c555e4dcb
Signed-off-by: Sorin Sbarnea <ssbarnea@redhat.com>
2018-12-07 11:11:17 -05:00
Ken Dreyer 8e05d8e329 docs: link to openstacksdk (#49521)
We use the openstacksdk library for OpenStack client configuration now.
Update the doc fragment so we point users at the correct place.
2018-12-05 14:06:20 -05:00
Naval Patel 880390ca0a Added new module lxca_nodes for Lenovo XClarity Administrator (#46767)
* Added new module lxca_nodes
2018-12-05 10:18:36 +00:00
Abhijeet Kasurde bc3e7bbeba
E325 Removal - Part II (#49196)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-11-28 13:55:52 +05:30
Felix Fontein be55abafe1 Mention docker[tls]. (#49095) 2018-11-26 14:11:24 +00:00
Matt Martz 9773a1f289
Add a Singleton metaclass, use it with Display (#48935)
* Add a Singleton class, use it with Display

* update six import

* Move remaining failes to display singleton

* Fix rebase issues

* Singleton improvements

* Add code-smell for 'from __main__ import display'. ci_complete

* s/self/cls/g

* Add docs for no-main-display

* Address linting issues

* Add changelog fragment. ci_complete

* Implement reentrant lock for class instantiation in Singleton

* Add Display singleton porting guide
2018-11-20 17:06:51 -06:00
Chris Archibald 50808ffa8f Add common files for ONTAP and SOLIDFIRE unit tests (#48739)
* And unit test files

* Changes to netapp.py

* Matt's changed, and pep8 change for test_netapp.py
2018-11-19 14:43:32 +00:00
Bojan Vitnik b0cc240665 New module: xenserver_guest - manages XenServer VMs (#41041)
* XenServer related modules - initial commit

 - New module_util: xenserver. Contains common module arguments, functions
   and classes useful for future XenServer related modules.
 - New module_docs_fragment: xenserver. Describes common module arguments.
 - New module: xenserver_guest. Supports VM deployment, reconfiguration,
   removal, detection of changes, state management, fact gathering and
   Ansible check mode. Module is fully documented.
 - Updated: developing_module_utilities.rst.
 - Module params, workflow and some functions are based on or taken from
   vmware_guest module.

* Implemented support for configuring custom VM params in xenserver_guest module

* Compatibility fixes and documentation update

 - xenserver module_util: implemented support for XenAPI.py version older
   than 7.2.
 - xenserver module_util: PEP8 fixes.
 - xenserver module_util: Added missing imports.
 - xenserver module_util: Copyright notice fixes.
 - xenserver_guest module: updated module documentation with notes regarding
   module requirements and compatibility.
 - xenserver_guest module: bumped version_added to 2.7.
 - xenserver_guest module: minor fixes.

* VM power state management refactoring, subargument specs in xenserver_guest module, other fixes

 - VM power state management code moved from xenserver_guest module to xenserver
   module_util (set_vm_power_state function).
 - Code for waiting for VM IP address moved from xenserver_guest module to
   xenserver module_util (wait_for_vm_ip_address function).
 - xenserver module_util: implemented get_object_ref function to clean up
   a lot of repeated code in xenserver_guest module.
 - xenserver module_util: added additional aliases 'host' and 'pool' for
   'hostname' common module argument. They are more in line with what
   XenServer users are familiar with.
 - xenserver module_util: minor fixes.
 - xenserver_guest module: removed VM state management other than 'present',
   'absent' and 'poweredon'. Other states are to be managed by separate module.
 - xenserver_guest module: added subargument specs and cleaned up custom code
   for subargument validation.
 - xenserver_guest module: reorganized code for disk and network reconfiguation
   to minimize code duplication.
 - xenserver_guest module: renamed 'cdrom.iso' module argument to
   'cdrom.iso_name', avoids cryptic error message when parameter is
   missing.
 - xenserver_guest module: documentation update.
 - xenserver_guest module: changes in error messages.
 - xenserver_guest module: minor fixes.

* Implemented guest OS network parameter configuration and other

 - xenserver module_util: moved code for validating MAC addresses from
   xenserver_guest module and implemented a range of functions for validating
   IP addresses and related entities and converting prefixes to netmasks and
   vice versa.
 - xenserver module_util: updated fact gathering code to support guest OS
   network parameters.
 - xenserver module_util: added docstrings.
 - xenserver module_util: minor changes.
 - xenserver_guest module: implemented support for guest OS network parameter
   configuration.
 - xenserver_guest module: changed CD-ROM handling code.
 - xenserver_guest module: changed so that user friendly version of changes
   list is always returned in module result.
 - xenserver_guest module: error message changes.
 - xenserver_guest module: added docstrings.
 - xenserver_guest module: documentation update.
 - xenserver_guest module: minor changes and fixes.

* Various fixes and code cleanup

 - xenserver module_util: implemented get_xenserver_version function.
 - xenserver module_util: moved customization agent detection code to
   gather_vm_params function. customization_agent variable is now part of
   vm_params. An exception in customization agent detection code that prevented
   deployment of new VMs is also fixed.
 - xenserver module_util: added support for alternative VM state names with
   dash and underscore in set_power_state function.
 - xenserver_guest module: removed customization agent detection code
   as it is now implemented in xenserver module_util.
 - xenserver_guest module: fixed a bug in xenserver_data update code that
   occured when "networks.mac" was not specified in module params and
   other fixes.
 - xenserver_guest module: some code cleanup.
 - xenserver_guest module: bumped version_added to 2.8.
2018-11-19 01:50:20 -05:00
Tim Rupp 0e71f62a95
Various small fixes to bigip modules (#48769) 2018-11-15 19:48:22 -08:00
Ali 320d72f08f Updated documentation for the k8s module (#48474) 2018-11-12 11:09:55 -05:00
Gaël Lambert 0c95453a70 Doc: k8s_raw_module fixing typo K8S_AUTH_HOST -> K8S_AUTH_KEY_FILE (#46947)
The current doc of k8s_raw_module contain a copy paste of the env var name :

```
host   :
Provide a URL for accessing the API. Can also be specified via K8S_AUTH_HOST environment variable.
key_file  : Path to a key file used to authenticate with the API. Can also be specified via K8S_AUTH_HOST environment variable.
```
2018-11-05 12:13:57 -05:00
Dag Wieers 3e890bdbaa
Initial import of MSC module_utils (#46116)
This is required for upcoming MSC modules.
2018-10-29 18:45:42 +01:00
Jasmine Hegman 303fa6b478 Add to k8s_raw docs re: vault-encrypted files (#47328)
* Add to k8s_raw docs re: vault-encrypted files

I didn't read the examples far enough and maybe would not have tried all the examples so I ended up creating https://github.com/ansible/ansible/issues/47259 and learned that definition key with lookup works well and we agreed the docs should say something. :)

+label: docsite_pr

* Add note about ansible vault-encrypted files to src: param

* Remove trailing whitespace

* Make changes from feedback

* Make feedback changes
2018-10-28 16:17:44 +10:00
Johannes Brunswicker d3be5d5327 Creates base Sophos UTM module (#45781)
* Fixes #18568
* Commit of the first set of utm modules
* added documentation line for module_utils file
* removed other utm modules for the first pr
* added maintainers to botmeta
* implemented fixes for shippable
* fixed whitespaces and newlines in included doc fragment
* added types and choices to documentation
* fix for E501
* Implemented change requests
* changed utm_utils license to BSD
* changed str() to to_native()
* added a status state that will just return information about my object
* renamed state 'status' to 'info'
* added team_e-spirit to botmeta and added the team as maintainer for the utm_utils
* only return a result if the lookup was not empty. Do not return a null result
* removed info state
* added boilerplate
* made preparation for info-only modules
2018-10-26 23:21:54 +05:30
Rémy Léone 338605882e Add support for adding custom query parameters to URL (#46390) 2018-10-26 15:20:00 +01:00
Ingate Systems 9fe20123cf modules: network: Add initial support for Ingate modules (#47494)
* modules: network: Add initial support for Ingate modules

* modules: network: Add ingate module ig_unit_information

* module_utils: network: ingate: Use default 'v1' for version

* modules: network: ingate: Remove unused code
2018-10-26 09:47:58 +05:30