Commit Graph

622 Commits (5e50284693cb5531eb4265a0ab94b35be89457f6)

Author SHA1 Message Date
Andrew Klychkov 907c98ebcd
/docs/docsite/rst/dev_guide: fix typos (#67643) 5 years ago
Felix Fontein 4373863f25
Module validation: sanity check mutually_exclusive, required_if, required_xxx ... (#66961)
* required_if checks should have three or four parts.

* Validate mutually_exclusive, required_together, required_one_of, required_if and required_by.

* Simplify code.

* Improve messages.

* Add changelog.

* Sanity check.

* Update docs.

* Update ignore.txt.

* Don't continue with tests when terms are not strings.

* Remove ignore.txt entry.

* Make sure validate-modules doesn't choke on things already flagged by schema test.

* Check required_if requirements list for strings.
5 years ago
John R Barker 4844adff9a
Collection developer guide - BOTMETA (#67538)
* Docs: Improve how to migrate and create collections
* Update docs/docsite/rst/dev_guide/developing_collections.rst

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
5 years ago
Abhijeet Kasurde b6753b46a9
Replace 'message' in module parameters (#60051)
* 'message' parameter is replaced by 'commit_message' in grafana_dashboard
* 'message' parameter is replaced by 'notification_message' in datadog_monitor

This change is required since 'message' as parameter name is used internally by
Ansible core engine.

Fixes: #39295 #45362 #47132 #59617

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Sandra McCann a60feeb3c1
Specify lowercase only for Galaxy namespaces (#67485)
* specify lowercase only for galaxy namespaces
* doh... include meta file
5 years ago
Adam Miller 98c1fc9d3a
add a testing section to collections dev guide (#67370)
Signed-off-by: Adam Miller <admiller@redhat.com>
5 years ago
Sandra McCann a6bb3ae291
fix some broken links (#67345) 5 years ago
Roger D. Winans 888a059ee7
Can we simplify _How to test a PR_? (#65383)
Switch the instructions on testing PRs to use the `refs/pull/XXXX/head` refspec as described in [_Checking out pull requests locally_](https://help.github.com/github/collaborating-with-issues-and-pull-requests/checking-out-pull-requests-locally#modifying-an-inactive-pull-request-locally).
5 years ago
Wojciech Sciesinski 49e7f9afe2
Link the testing documentation to the module documenting page (#67248) 5 years ago
Sandra McCann 4dd2513371
add info on creating doc fragments in a collection (#67171)
* add info on creating doc fragments in a collection
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
5 years ago
Mark Chappell 5d4d9d40af
ansible-test - Add 'get' to the list of bad choices for state (#66921)
* ansible-test - Add 'get' to the list of bad choices for state

* Changelog fragment
5 years ago
Mark Chappell 1156962cde
Forbid `state=(list|info)` in modules via ansible-test sanity check
PR #66898

This change introduces a new sanity check with code
`parameter-state-invalid-choice` in the `ansible-test sanity`
validator. It enforces modules not to support `list` or `info`
as their `state`.

Co-Authored-By: Sviatoslav Sydorenko <webknjaz@redhat.com>
Co-Authored-By: Felix Fontein <felix@fontein.de>
5 years ago
Mark Chappell 35652ca788 Add tests to make sure that the documented 'elements' matches that defined in argument_spec (#66385)
* Add tests to make sure that the documented 'elements' matches that defined in argument_spec

* Mass-add test/sanity/ignore.txt
5 years ago
Toshio Kuratomi abc8b0ae73 This was changed to python 2.7 but should have remained python 2.6 (#66836)
* Modules are still python-2.6+ unless there's a compelling reason not
  to be.
5 years ago
Mark Chappell 5ff899662d Add sanity test to require elements entry when argument type=list (#66386)
* Require elements entry for lists

* Bulk add initial test/sanity/ignore.txt
5 years ago
Walter Sosa 2dc9841806 doc: Fix tiny typo in example: change --> changed (#66835)
##### SUMMARY
Fixed another tiny typo: change --> changed

##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr
5 years ago
Jill R ac881b0026 Add section to aws devel guidelines about module_defaults (#66699) 5 years ago
Sam Doran 20eb1dca99
Update Galaxy docs to use "token" rather than "API key" (#66644)
We have called an API token many things. I changed the command line argument to
"--token", so now I'm unifying the documentation. I looked at both Galaxy and
Automation Hub and Galaxy is the only place that still uses the term "API Key",
which it could be argued should change.
5 years ago
Marko Kohtala c423b1f213 dev_guide: Correct path to ansible-test requirements files (#66626)
The requirements path was old due to file relocation in
commit d651bda123.
5 years ago
Sandra McCann 4fedc10035 added guidelines for seo; (#66431) 5 years ago
Xavier PV 9dd548ebb7 Update developing_python_3.rst (#66249)
##### SUMMARY

fix link § redirection

##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr
5 years ago
Jordan Borean 595ab62ab8
Ansible.Basic - Added deprecated_aliases (#66323) 5 years ago
kaorihinata 3ca4580cb4 Allow no_log=False to silence the no_log warnings for module parameters (#64733)
As AnsibleModule._log_invocation is currently implemented, any parameter
with a name that matches PASSWORD_MATCH triggers the no_log warning as a
precaution against parameters that may contain sensitive data, but have not
been marked as sensitive by the module author.

This patch would allow module authors to explicitly mark the aforementioned
parameters as not sensitive thereby bypassing an erroneous warning message,
while still catching parameters which have not been marked at all by the
author.

Adds tests for various no_log states including True, False, and None (as
extracted by AnsibleModule._log_invocation) when applied to an argument with
a name that matches PASSWORD_MATCH.

Fixes: #49465 #64656
5 years ago
Sandra McCann 0ca79a4234 Clarify how to use the Galaxy token (#65961)
* DOCS: clarify how to use the Galaxy token, with info for installs and api-key
5 years ago
Sandra McCann 80dff8743a fixed some broken links (#66182) 5 years ago
Mark Chappell 458268f4cb AWS Guidelines: Make 'security_token' optional so that they can be run outside of CI (#66107) 5 years ago
Alicia Cozine 40fb46f1e8
fixes import paths for ansible unit testing (#65775)
* fixes import paths for ansible unit testing

* Update docs/docsite/rst/dev_guide/testing_units_modules.rst

Co-Authored-By: Sandra McCann <samccann@redhat.com>
5 years ago
Evgeni Golov 057e137998 clarify `returned` value of `RETURN` nlock (#65724) 5 years ago
Felix Fontein 4be8b2134f Sanity checks: make sure that `required` in argument spec coincides with documentation (#65437)
* Add sanity test for required parameters, update ignore.txt, and add changelog.
5 years ago
Felix Fontein 784e507671 module sanity checks: improve alias handling (#59060)
* add_file_common_args is only of interest on top-level.
* Handle undocumented arguments in one place.
* Update ignore.txt
* Add changelog
5 years ago
Sandra McCann a01376a493 update configuring ansible-galaxy client (#64796)
* update configuring ansible-galaxy client, deduplicate, clarify tokens, AH procedures, etc.
5 years ago
Matt Clay 4f51b7d323 Remove ansible-test --tox delegation option.
Use the --venv option instead.

This option was only available when running from source to test the ansible/ansible repository.

This will have no effect on testing collections or running from an installed version of Ansible.

Also update docs to reference the --venv option instead of the --tox option.
5 years ago
Jordan Borean f8f7662850
Add the ability to ignore files and collection build (#64688) 5 years ago
Glandos 7a26aff357 Fix cache example (#64600) 5 years ago
Sandra McCann 6a662b0ed0 clarify acceptable file types in collection docs (#64618)
* clarify acceptable file times in collection docs

* implement feedback
5 years ago
Sandra McCann 797397558e Add note about large tarball sizes for collections (#64411)
* add note on collection tarball size
5 years ago
Felix Fontein 0bf9146b29 Document 'elements' for module option and return value documentation. (#64075) 5 years ago
Sloane Hertel c1f1b2029c
Support vars plugins in collections (#61078)
* Move var plugins handling to a separate file

* Allow var plugins to require whitelisting

* Add global configuration ('demand', 'start') for users to control when they execute

* Add 'stage' configuration ('all', 'task', 'inventory') for users to control on a per-plugin basis when they execute

* Update ansible-inventory and InventoryManager to the global and stage configuration

* Update host_group_vars to use stage configuration and whitelisting

* Add documentation for using new options and to the developer's guide

* Add integration tests to exercise whitelisting and the new configuration options, using vars plugins in collections, and maintain backward compatibility

* Changelog

Co-Authored-By: Brian Coca <brian.coca+git@gmail.com>
Co-Authored-By: Sandra McCann <samccann@redhat.com>
5 years ago
Matt Clay e9f8a34dce
Fixes for validate-modules import handling. (#63932)
* Fix validate-modules support for collections.

- Relative imports now work correctly.
- The collection loader is now used.
- Modules are invoked as `__main__`.

* Remove obsolete validate-modules code ignores.

* Handle sys.exit in validate-modules.

* Add check for AnsibleModule initialization.

* Remove `missing-module-utils-import` check.

This check does not support relative imports or collections.

Instead of trying to overhaul the test, we can rely on the `ansible-module-not-initialized` test instead.

* Fix badly named error codes with `c#` in the name.

The `#` conflicts with comments in the sanity test ignore files.

* Add changelog entries.
5 years ago
Austin Macdonald 1aee11c860 add newline to render table correctly (#63769) 5 years ago
Sloane Hertel 1e52782d6b Fix indentation of example (#63789)
Remove no_log since module_defaults aren't displayed like set_fact was
5 years ago
Sandra McCann 6a2902c8d5 clarify no subfolders and md only for collections /docs folder (#63808) 5 years ago
Jill R 9cda5819b9 Update AWS dev guide to recomment module_defaults and point to CI policy repo (#63589) 5 years ago
Gonéri Le Bouder 73febd4ea6 prepare_vmware_tests: use module_defaults (#63209) 5 years ago
Sandra McCann bdd0fac606 add note about collection links (#63346) 5 years ago
thaim 021d095625 Fix broken link (#63185) 5 years ago
Chris Houseknecht 911aa6aab9
Default collection install path to first path in COLLECTIONS_PATHS (#62870) 5 years ago
Andreas Olsson c8315bfd60 Prefer https:// links in the docs site (#62939)
This is a follow-up of last year's 1a11cec. It deals with links which
at that point either were not present or did not support https://.
5 years ago
Gonéri Le Bouder 7ecfa4a471 vmware guidlines: adjust the location of cloud-config-vcenter.ini.template (#62970)
Update the location of the cloud-config-vcenter.ini.template template.
The file has been moved by: 2e7d36a3f9.
5 years ago
mohamed chiheb ben jemaa e7436e278f Remove Latin phrases from the docs (#62419)
* add styleguide about avoiding use of latin words
5 years ago
Sloane Hertel d41050b28b Add some documentation about plugins in collections (#62465)
* Add some documentation about using plugins in collections

- FQCN requirements
- Sharing code in collections
- Limitations with inventory caching
5 years ago
Michael Prokop b33ae14949 doc: fix typos (#62852) 5 years ago
Sandra McCann 7e01de96d7
add more anchors to collections docs (#62827) 5 years ago
Sandra McCann 1b3bf33bdf
add anchors to support galaxy links (#62808) 5 years ago
akcozine 09ac8c154a Update developing_modules_general_windows.rst (#62796)
Use American spelling of favor.
5 years ago
James Mighion 679d3a46fa doc: fix typo (#62668) 5 years ago
Sviatoslav Sydorenko 2969614c2c Fix link syntax and a typo in dev collections doc (#62650) 5 years ago
Sandra McCann 7badeb6df0 [docs] split collections into user and dev guide sections (#62363)
* split collections into user and dev guide sections

* sentence case
5 years ago
Sam Doran 041c52d629 Add info about layering properties 5 years ago
Sam Doran 5deb01c84d Remove suggestion to go caving 5 years ago
Sam Doran 9b348e690c Improve documentation on doc fragments
Add information and examples on how to use additional properites from a doc fragment
5 years ago
Evgeni Golov c1773d5d2b document suboptions for type:list options too (#62177) 5 years ago
Evgeni Golov 740ec90688 sanity ignores for a collection need to go to tests/sanity/ (#62182)
collections use tests/ not test/ as the folder for tests
5 years ago
Evgeni Golov 48a39f5616 typo: missing-subption-docs → missing-suboption-docs (#62180)
updates the name of the test and all ignore.txt entries
5 years ago
Toshio Kuratomi 46f633598e Add guidelines for when to use a doc_fragment (#61828) 5 years ago
Kevin Breit f79d03d292 Elaborate on note that docker-priv only works with integration (#62035) 5 years ago
Toshio Kuratomi f58899eef7 Update release name for 2.10
Add a list of previously used release names to make it easy to tell what
release names are no longer usable.

Add a test that new release names have been added to the used list.

Fixes #61616
5 years ago
ndclt aadb192846 documentation: modify the link to the docker.txt listing all images (#61838)
The file was moved.
5 years ago
Jeff Geerling f1180f3d3f Fix documentation to reflect CLI usage for collections-path (#60164) 5 years ago
anshulbehl bfaa29303b adding a collection local try section (#61626) 5 years ago
Sebastián Estrella 615f9949c0 Update unit tests requirements/units.txt path (#61656) 5 years ago
Sam Doran 73248bf27d validate-modules - Use error codes instead of numbers (#60711) 5 years ago
Felix Fontein 59ab4d9307
oVirt: rename _facts -> _info (#61299)
* Rename oVirt _facts -> _info

* Adjust PR #.

* Forgot update BOTMETA / ignore.txt for doc fragment.

* Compatibility for 3rd-party modules using module_utils or info doc fragment.

* Update note.

* Fix/improve docs.

* Update lib/ansible/modules/cloud/ovirt/ovirt_event_info.py

Co-Authored-By: Sloane Hertel <shertel@redhat.com>

* Fix variable.

* Fix return value documentation for ovirt_external_provider_info.
5 years ago
Jordan Borean 66f52b74b1 Change collection PS util import pattern (#61307)
* Change collection PS util import pattern

* Add changes for py2 compat

* fix up regex and doc errors

* fix up import analysis

* Sanity fix for 2.6 CI workers

* Get collection util path for coverage collection
5 years ago
Jay Carman fabd912fa5 Fix typo in 'Ansible and Python 3' dev guide (#61226)
The underscore does not need to be escaped inside of the RST inline
literal.
5 years ago
Jordan Borean e747487720
ansible-galaxy - define multiple galaxy instances in ansible.cfg (#60553)
* ansible-galaxy: support multiple servers on install

* Added docs for the server configuration file

* Fix up doc string for requirements file format

* Fix bugs after testing

* Fix kwarg doc and added version

* Fix typo and doc improvement

* Fix base64 encoding and allow --server to override list
5 years ago
Kevin Breit 543401f83b Collections documentatation - Add information about semantic versioning (#60969) 5 years ago
Jeff Geerling 9c61ef10d1 Fix typo and uses more common role syntax in usage examples (#60165)
* Fix typo and use import_role in examples
5 years ago
Jiri Tyr 31d6d7ada5 Updating developing_inventory.rst (#60647) 5 years ago
Christian 49dea22467 Update developing_plugins.rst (#60482)
##### SUMMARY
documentation example-yaml for lookup-plugin seems to have an indent-error


##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr
5 years ago
James Cassell 8bca160363 add vfat to selinux special_context_filesystems (#59823)
vfat is the format of the /boot/efi partition on UEFI hosts and does
not support SELinux labels

add an environment variable for this config option
5 years ago
Jill R 1d6bce961c VMware: Add writing new tests subsection to vmware_guidelines (#60163)
* Add writing new tests subsection to vmware_guidelines

Specifically address use of the prepare_vmware_tests role
Point to common vars for use by test writers

Co-Authored-By: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Matt Clay 5a50fb35df Add sanity test for obsolete files.
This will help prevent accidental merging of content to recently obsoleted directories when adding new files.

It may also help contributors who have modified obsolete files understand where their changes should now be made.
5 years ago
Jeff Geerling 1405e48157 Fix documentation for collection build code example (#60156) 5 years ago
Matt Clay df59f06d6a
Additional ansible-test path fixes. (#60300)
* Add missing ansible-test injector symlink.
* More ansible-test path fixes.
* Expand bin-symlinks docs.
5 years ago
Matt Clay 39b3fc0926 Update ansible-test layout and payload handling. 5 years ago
Sandra McCann ed21aba442 add link to content collector tool (#59881) 5 years ago
Matt Clay a93a0c8fd6
Relocate validate-modules for easier testing. (#60214)
* Relocate module validator code and tests.
* Fix validate-modules entry point and imports.
* Fix paths and test entry points.
* Fix up unit tests.
* Fix shebang and execute bit.
5 years ago
Matt Clay 18867847f4
Split up "code smell" sanity tests. (#60174)
* Relocate ansible-only sanity tests.

* Get "code smell" sanity tests from multiple dirs.

- `test/lib/ansible_test/_data/sanity/code-smell/` - General purpose tests used for both Ansible and Ansible Collections.
- `test/sanity/code-smell/` - Tests specific to Ansible, will not be used for Ansible Collections.
5 years ago
Matt Clay d651bda123
Relocate ansible-test code. (#60147)
* Initial move of `test/runner/` content.

`test/runner/lib/` -> `test/lib/ansible_test/_internal/`
`test/runner/`     -> `test/lib/ansible_test/_internal/data/`

* Initial move of `test/sanity/` content.

`test/sanity/` -> `test/lib/ansible_test/_internal/data/sanity/` (except `test/sanity/ignore.txt`)

* Initial move of `test/units/pytest/` content.

`test/units/pytest/` -> `test/lib/ansible_test/_internal/data/pytest/`

* Follow-up move of `test/runner/unit/` content.

`test/lib/ansible_test/_internal/data/unit/` -> `test/lib/ansible_test/tests/unit/`

* Initial move of `ansible.cfg` content.

`test/units/ansible.cfg` -> `test/lib/ansible_test/_internal/data/units/ansible.cfg`
`test/env/ansible.cfg` -> `test/lib/ansible_test/_internal/data/env/ansible.cfg`

* Follow-up move of `data` directory.

`test/lib/ansible_test/_internal/data/` -> `test/lib/ansible_test/_data/`

* Update import statements.

* Add missing __init__.py for unit tests.

* Fix path references and miscellaneous issues.
5 years ago
Matt Clay 71e607dceb
Update docs references for ansible-test. (#60109)
* Remove outdated info from azure-requirements docs.
* Correct validate-modules usage.
5 years ago
Matt Clay 2be2ae366e Remove obsolete docs on pep8 sanity test. 5 years ago
Sandra McCann 9aa3130cd1
clarify what a namespace is or is not (#59809) 5 years ago
Ganesh Nalawade 127bd67f6e
Render elements in module doc and sanity test for sub-options (#59244)
* Render elements in module doc and sanity test for suboptions

*  Add support to render module elements value in ansible-doc output
   module html
*  Add validate-module sanity test of sunoptions.

* Add current validate module failures to ignore list

* Fix CI failure

* fix rebase conflict

* Fix CI issues

* Fix review comments

* Add validate-modules failure in ignore list
5 years ago
Sandra McCann fe3459ef86 add module_utils example (#59661)
* add module_utils example to collections docs
5 years ago
Sandra McCann 30c1d9754d Style end edit changes to collections doc (#59658)
* copy-edit of file
5 years ago
Matt Clay b4494fa547 Remove redundant "Sanity Tests »" from page title.
The docs now have multi-level breadcrumbs so including "Sanity Tests »" in the title on a sanity test page is redundant.
5 years ago
Matt Clay 5ed469f6b7 Fix sanity docs page titles.
The titles are used to generate the index of sanity tests, so they should match the name of the test.
5 years ago
Gonéri Le Bouder 964783fbd2 vmware_guest: speed up vmware_guest tests
- Use predictable VM name during the tests (test_vm1, test_vm2 and
  test_vm2). This to simplify the teardown of the newly created resource
  before the next test.
- Update the documentation to explain the new requirement
- Avoid VM creation with `with_items` when it's not mandatory. This to:
    - speed up the test execution, our hypervisors have limited resources
    - simplify the teardown
- Remove `create_d1_c1_f0_env.yml`, the test was just testing how Ansible
  pass environment variables.
- Correct the name for the `f0` variable (`f1`)
- Fix the DVS tests, the hosts can now reach the dvswitch1 vswitch
- Provision the VM with a poweroff status, this to improve the
  idempotency and sleep up the tests
- Avoid the use of `prepare_vmware_tests` to prepare virtual machines
  when we just need one machine
5 years ago
Matt Clay db7e9aa051
Use consolidated ignore.txt in ansible-test. (#59618) 5 years ago
Jordan Borean 9551528ba0 Replace Mazer references with ansible-galaxy (#59487)
* Replace Mazer references with ansible-galaxy
5 years ago
Matt Martz 95f4282c42
Verify package data in setup.py installs all files (#59537)
* Add sanity test to ensure all non-py files are installed

* Fix mode and regex

* Fix role skel inventory package_data

* Add docs

* Update package_data for inventory files

* Address pylint concerns

* Another tweak to package_data

* Address review feedback

* Change index to 1

* add to ansible-only.txt
5 years ago
Sandra McCann cb1dd6d77b remove molecule mentions (#59441) 5 years ago
Jordan Borean 65049620ee
Generate galaxy.yml based on single source of truth (#59170)
* Generate galaxy.yml based on single source of truth

* Fix up tests and align file names

* Minor Makefile tweak

* Remove link in galaxy.yml file and make it a template file

* Moved collections docs to dev_guide

* change Makefile clean path

* Added readme to example meta file

* review fixes

* Use newer style for doc generation script

* Fix mistake in dev_guide index

* removed uneeded file, fixed links and added preview banner

* Moved banner for sanity test
5 years ago
Tomáš Pospíšek 28b9f71640 remove ambiguity: use "my_test" as module name (#59335)
Naming a module "something_module" is misleading (see below). Let's drop the "_module" part of the module name on the developing_modules_general page.
5 years ago
Rémy Léone 30206d3066 Add an example for the debugging module (#50197)
+label: docsite_pr
5 years ago
Toshio Kuratomi 33d2728879 Rename python files in hacking/ directory to have .py suffix
ansible-test only passes files which have the .py suffix for sanity
tests on python files.  This change will allow sanity tests to run on
the Python files in hacking/

* Rename test-module to test-module.py
* Symlink test-module for backwards compat since end users may be using
  test-module
* Fix test-module sanity errors that are now triggered
* Rename ansible_profile to ansible-profile.py
* Rename build-ansible
5 years ago
Toshio Kuratomi 146a7f8ff6 Split the metaclass == type and from future boilerplate code.
The metaclass boilerplate is safe to apply en masse.  The future import
boilerplate needs code to be inspected to be sure that there aren't any
py2isms that need to be fixed.  Split these two checks so that we can
fix them independently

Be explicit about which files are grandfathered so we can fix them up one by one
5 years ago
Gonéri Le Bouder 13de8686e5 vmware: vmware_guidelines.rst
VMware specific documentation that explains:

- how to run the functional tests
- and the conventions.
- clarify the difference between govcsim and vcsim

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
Co-Authored-By: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Alicia Cozine 3fc0694ffc removes last :doc: links in the dev guide (#58417) 6 years ago
Sandra McCann 5569135efd create scenario guide template file (#58212)
* create scenario guide template file

* Apply suggestions from code review

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
6 years ago
ndclt 4376e88849 Coherence between example and text (use of to_native) (#58279) 6 years ago
Sandra McCann 7765bd41e6 add platform docs to network dev guide (#57960)
* add info on how to create platform docs to network dev guide
6 years ago
Ken Celenza 1a63f8642e Update local module options (#57553)
* Docs: Point out that local plugins can be loaded based on ansible.cfg settings
6 years ago
Pierre-Louis Bonicoli c289006e05 validate-modules: new module: fail if 'type' isn't documented
Don't require 'type' when:
- parameter name starts with an underscore
6 years ago
Sandra McCann 5243cba0b2 describe how to link to modules or plugins (#57806) 6 years ago
Bill Nottingham c493593b4b Adjust assorted terminology and wording around product offerings. (#57242)
* Adjust assorted terminology and wording around product offerings.

* Update docs/docsite/rst/dev_guide/style_guide/trademarks.rst
* Update docs/docsite/rst/user_guide/modules_support.rst
* Update docs/docsite/rst/reference_appendices/tower.rst
6 years ago
Sam Doran 50b1a66649 Update instructions for running module directly (#56883)
The internals of AnsiballZ changed silghtly
6 years ago
Felix Fontein 53ec9c8019 Clarify that GPLv3+ module_utils need core team approval (#56740)
* Clarify that GPLv3+ module_utils need core team approval.

* Update docs/docsite/rst/dev_guide/shared_snippets/licensing.txt

Co-Authored-By: Sam Doran <sdoran@redhat.com>

* More 'module_util' -> 'file in module_utils'.
6 years ago
Felix Fontein abca3f1956 Clarify documentation on _info vs. _facts modules (#56611)
* Clarify documentation on _info vs. _facts modules.

* Expand with examples for facts and non-facts.
6 years ago
Alicia Cozine 118cf3ece6
Cloud dev docs to rst (#56485)
* Moves developer docs for AWS, ovirt, and openstack modules out of lib/ansible/, integrates them with dev_guide, with abadger's fix to make python snippets pass rstcheck
6 years ago
Matt Clay f9b56a5b56 Add sanity test to check for unwanted files. 6 years ago
Alicia Cozine 3c8d8b1509 should have gone into 52373 (#56306) 6 years ago
Dag Wieers eac7f1fb58 dev_guide: Various small updates (#53273)
* Document the clarifications that I usually remark when doing reviews
* Update docs/docsite/rst/dev_guide/developing_modules_documenting.rst

Co-Authored-By: dagwieers <dag@wieers.com>
6 years ago
Toshio Kuratomi edafa71f42 Developer documentation update involving module invocation (#55747)
* Update docs for the 2.7 change to AnsiballZ which invokes modules with one
  less Python interpreter

* Add a section on how module results are returned and on trust between modules, action plugins, and the executor.

* Update docs/docsite/rst/dev_guide/developing_program_flow_modules.rst

Co-Authored-By: abadger <a.badger@gmail.com>
6 years ago
Mark Zhitomirski b14f477bee docsite: correct path, list requirements for testing module docs, etc. (#52008)
* dev_guide: correct path, list requirements, etc.; module HTML docs are in '_build/html/module' subdir
6 years ago
Alicia Cozine 8542459b95
Docs: edits & expands module_utils & search path info in dev guide (#55931)
* Update docs/docsite/rst/dev_guide/developing_module_utilities.rst
6 years ago
Alicia Cozine 9d5b5d7ddd
correct description of modules vs plugins (#55784) 6 years ago
Sandra McCann cca365061c
add how to create HttpApi plugins for network modules (#54340)
* initial port over from gdoc

* crosslink httpapi pages

* Add some examples?

* Add quick example of using Connection

* Fix indentation of python code blocks

* moved to a full developer guide for networks

* Try to clarify some examples

* Fix typos

How did I even do that?
6 years ago
Gregor Dschung 158452661a Correct link to Thomas' GitHub account (#55587)
Thomas renamed his account from tstringer to trstringer
6 years ago
Alicia Cozine d7f6493084 adds better links to tips and pitfalls page (#55458) 6 years ago
Matt Martz 9f83139dcb
Don't register tests as filters (#55332)
* Don't register tests as filters. Fixes #55319

* Remove tests for deprecated functionality

* Remove no-tests-as-filters sanity tests

* Remove docs too

* Revert "Remove docs too"

This reverts commit 7daf457a74.

* Make no-tests-as-filters doc an orphan
6 years ago
Kevin Breit 521e62aa38 Update set_module_args in unit test docs (#55244)
* Update docs/docsite/rst/dev_guide/testing_units_modules.rst
`set_unit_args()` should be imported and used in the unit test documentation. 

Co-Authored-By: kbreit <kevin.breit@kevinbreit.net>
6 years ago
Kevin Breit a005dcfbbd Add example for full path on unit tests (#55243)
Docs: adds an example when a full path is needed for unit tests, with module_utils, etc.
6 years ago
Abhijeet Kasurde 3003954415 Update unit testing docs (#55272)
* Updated links
* Updated indentation
* Fixed typos

Fixes: #55242

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Sandeep Kasargod e1c4ee2514 New module for managing volumes in Vexata storage arrays (#49006)
* Initial commit for module to manage Vexata storage volumes + fixes form code review in pr #47091.

* Fix indent errors reported by lint.

* Refactor, implement code review changes

* Moved doc fragment file to new layout

* Added explicit types for all module parameters, updated copyrights + raw string for block text.
6 years ago
ximon18 7474e39c37 Rewrote one awkward sentence. (#54892)
Rewrote awkward sentence in the developing inventory guide.

+label: docsite_pr
6 years ago
Daniel Hagan e114d06801 Minor formatting fix in developing_modules_documenting.rst (#54785)
* developing_modules_documenting.rst - fix formatting error

* developing_modules_documenting.rst - remove errant whitespace from last commit
6 years ago
dthvt ea2fa07e23 AnsibleModule uses supports_check_mode (#54629)
<!--- Your description here -->

Looks like AnsibleModule uses supports_check_mode, not check_mode.

+label: docsite_pr
6 years ago
Brian Coca 6f77dbf66f update _facts and _info in checklist (#54182)
* update _facts and _info in checklist in docs/docsite/rst/dev_guide/developing_modules_checklist.rst

Co-Authored-By: bcoca <bcoca@users.noreply.github.com>
6 years ago
Matt Clay 39bbadb2fd
Replace no-underscore-variable test with pylint. (#54140)
* Replace no-underscore-variable test with pylint.
* Update orphan handling for sanity test docs.
* Update command for listing tests.
6 years ago
Jill R 3e670373e0 Add returned keys to example module (#53884) 6 years ago
Abhijeet Kasurde 9018819023
Update Testing page for OS version (#53800)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
David Passante 40af4a144d Update an example in documentation fields (#53760)
According to the `Linking within module documentation` section, the right syntax should be `I(state=present)`.
6 years ago
Gonéri Le Bouder 6421e89e23 docs: refresh testing_integration.rst (#53338)
* docs: refresh testing_integration.rst

Ensures the examples can be run:
- fedora25 is not available anymore, use fedora29 instead
- the posix/ci alias does not exist anymore, use shippable/posix/ instead
- explain how to list the target without argcomplete

* ansible-test should be in $PATH
* call ansible-runner from bin/, not test/runner
* we don't use credentials.template anymore, we use a collection of .template files.
* low-case bash bc we refresh to name of the binary
* refresh the command of Windows-CI example
* Update docs/docsite/rst/dev_guide/testing_integration.rst

Co-Authored-By: goneri <goneri@lebouder.net>
6 years ago
Brian Coca c0a4cf297d add '_facts' rule to module checklist (#53359)
* add '_facts' rule to module checklist

* Update docs/docsite/rst/dev_guide/developing_modules_checklist.rst

Co-Authored-By: bcoca <bcoca@users.noreply.github.com>
6 years ago
Gonéri Le Bouder 0b579a0837 doc: preseve block-quote structure (#53293)
Without the `::`, the indentation of the example block is lost.
6 years ago
Sloane Hertel 9687879840
Fix inventory cache interface (#50446)
* Replace InventoryFileCacheModule with a better developer-interface

Use new interface for inventory plugins with backwards compatibility

Auto-update the backing cache-plugin if the cache has changed after parsing the inventory plugin

* Update CacheModules to use the config system and add a deprecation warning if they are being imported directly rather than using cache_loader

* Fix foreman inventory caching

* Add tests

* Add integration test to check that fact caching works normally with cache plugins using ansible.constants and inventory caching provides a helpful error for non-compatible cache plugins

* Add some developer documentation for inventory and cache plugins

* Add user documentation for inventory caching

* Add deprecation docs

* Apply suggestions from docs review

* Add changelog
6 years ago
Xaroth 646a8586a5 Remove old 'srtd' theme and references. (#49289) 6 years ago
Matt Martz a639dc6d88
Add a new check to ensure that module arguments are valid python identifiers (#53278)
* Add a new check to ensure that module arguments are valid python identifiers

* Move the check up higher, out of the if docs block

* Skip validate-modules on py2

* Remove errant alias
6 years ago
Chris Gavin 43042682e8 Fix an incorrect function call in a documentation example. (#53233) 6 years ago
Sebastian Wojciechowski 5cc6a70398 Remove redundant article in testing integration note (#53209) 6 years ago
Kevin Breit 4af5842409 Developer documentation - Change path to connection_plugins (#52577)
* Change path to connection_plugins

* Update docs/docsite/rst/dev_guide/developing_plugins.rst

Co-Authored-By: kbreit <kevin.breit@kevinbreit.net>
6 years ago
Jordan Borean 7360db5956 doc - skip/windows for integration tests (#53010) 6 years ago
John R Barker 80cc6417fa Docs: List of Sanity Tests (#52986)
* Improve sanity test docs, how to run sanity tests section
6 years ago
Esa Varemo 5bdc6636bc Fix the example plugin paths (#52881)
Based on https://docs.ansible.com/ansible/latest/reference_appendices/config.html
the default callback paths do not contain `_plugin`. Thus `~/.ansible/plugins/callback_plugins` and `/usr/share/ansible/plugins/plugin_type/action_plugins` are incorrect. Verified on 2.7.5 that by default `plugins/action` works and `plugins/action_plugins` does not.
6 years ago
Divided by Zer0 1f06b3ca7d ungrouped as a list (#50593)
* update the developing_inventory docs to show ungrouped as a dict with a "children" key; avoid 
[WARNING]: Found both group and host with same name: ungrouped
6 years ago
Abhijeet Kasurde e0d8d9c2bf validate-modules: Documentation bool (#50085)
* validate-modules: Documentation bool

This check allows to catch cases where type of argument is different than documentation does.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Wrong comparison for 'str'

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Add ignore.txt

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Fix logic and clean up ignore.txt
6 years ago
Jordan Borean de118734e9
Ansible.Basic - add required_by to module spec (#51407)
* Ansible.Basic - add required_by to module spec

* fix typo in docs
6 years ago
James Cassell 953058d025 standardize connection variable names (#51776)
* standardize user/password connection vars

* docs: use ansible_user and ansible_password

* docs: var precedence for connection vars

* docs: ansible_become_pass -> ansible_become_password etc
6 years ago
Richard Diphoorn ad549e375a Changed 'Control Machine' to 'Control Node' (#51696)
* Changed 'Control Machine' to 'Control Node' in the documentation. Changing the term 'Control Machine' to 'Control Node', to be in line with the basic concepts here: https://docs.ansible.com/ansible/latest/network/getting_started/basic_concepts.html

Also for both entities; Control/Managed using the same common denominator 'Node' brings consistency.

* Updated reference links to new term.
6 years ago
RMuskovets eb54dab362 Update developing_rebasing.rst (#51650) 6 years ago
Toshio Kuratomi dfd8b659c0 Have update-bundled check for updates to all bundled code
Add a test for whether we have bundled code inside of ansible that needs to be updated
6 years ago
Alex Willmer c7f8e5d05e doc: Correct path of unit tests directory (#51631)
+label: docsite_pr
6 years ago
Wojciech Sciesinski fbbda7267b Add a missed command (#50781)
* Add a missed command

* Link to the WinRM configuration page
6 years ago
Mahendra Yadav 10a402a9c8 Update developing_modules_general_windows.rst (#51493)
<!--- Your description here -->
Typo fix
+label: docsite_pr
6 years ago
Felix Fontein f6122fb63b Fix docs syntax highlighting errors (#50836)
* Add support for [WARNING]: ...

* Fix unreachable/failed output lexing.

* Detecting retry/--limit lines.

* Removing strange (invisible) characters which cause lexing problems.

* Using better-fitting lexers.

* Improve YAML lexing: don't accept quotes in keys.

* Add Django lexer (unchanged) from Pygments.

* Add support for != and % operators.
6 years ago
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
6 years ago
Ken Dreyer 1b09197244 doc: describe merging to ansible.module_utils.* (#51152)
Add a section to the documentation describing precisely how Ansible
merges custom module_utils/* Python code into the "ansible.module_utils"
namespace.
6 years ago
Dag Wieers 1fb2165bd8
Fix typo
+label: docsite_pr
6 years ago
Matt Martz ab0985a83a
Update the example for API use to reflect new context object (#50723) 6 years ago
Miguel Gonzalez 8546273f5e Make module handle its own exit (#50728) 6 years ago
Dag Wieers 7a1ceb6988
Correct the command for test coverage
+label: docsite_pr
6 years ago
Dag Wieers 9e003d702f
Fix relative paths
+label: docsite_pr
6 years ago
Matt Clay 560e922440 Add more ansible-test aliases to test docs. (#50921) 6 years ago
Simon Legner 33b9c880a4 Consistent typesetting of "GitHub" (#50929) 6 years ago
branen 88029a73d6 Correct docsite typos: it's -> its (#50812) 6 years ago
Karolis Kalantojus b5162c7a47 Documentation fix for developing own plugin (#50547)
Seems like `self` is not necessary in the call args

+label: docsite_pr
6 years ago
Alicia Cozine 90a6771bc8
removes space from example of L(link) syntax (#49908) 6 years ago
Jordan Borean 8d008fed35
windows dev docs: fix a few issues and add missing info (#49836) 6 years ago
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
6 years ago
Alicia Cozine a71cd49a0c Style guide index (#49746)
* First revision of ansible style guide index page
6 years ago
Sandra McCann 32c2b3b3be Styleguide basic (#49747)
* cleaned up basics page

* made codeblock visible

* added anchor
6 years ago
trogdor_the_burninator b3c277decc [FIX] grammatical structure of phrase (#49660) 6 years ago
Phuurl 29c96d20fb Corrects minor typos in the documentation (#49668)
Signed-off-by: Phuurl <chubble.10@icloud.com>
6 years ago
Abhijeet Kasurde 287a42eba0 Added recommendation about module name (#49540)
* Added recommendation about module name

Added general guidelines for naming a module.

Fixes: #19665

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Alicia Cozine 8d01e26d18 Refines docs on creating action plugins (#49392)
* Refines docs on creating action plugins

Co-Authored-By: acozine <879121+acozine@users.noreply.github.com>
6 years ago
Abhijeet Kasurde 45e41f5a3d Add Action plugin example (#49290)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Ian Wienand 44c734e624 Local test docs: correct tox shell command usage (#49350)
The ansible-test shell command doesn't have a --python option; you
have to specify the tox environment directly to the --tox command

Partially fixes: #49349
6 years ago
John R Barker 3433ca286d Docs reorg /community/index & /dev_guide/index (#48734)
* Improved community/index.rst makes it easier to find existing content
6 years ago
Matt Martz 7287d396e2 Prevent metadata changes in a stable branch (#48994) 6 years ago
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
6 years ago
Wojciech Sciesinski cebe64ac0c Add a missed command (#48857)
adds command to set the environment for the hacking script
6 years ago
Bianca Henderson 89a9bc0488 Change intro portion of Testing page (#48692)
* Change intro portion of Testing page
6 years ago
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.
6 years ago
Matt Clay 8066acc90c
Support skip of platforms by version in tests. (#48826)
* Support skip of platforms by version in tests.

Previously a remote platform could be skipped completely using the alias:

`skip/{platform}` such as `skip/rhel`

Now a specific platform version can be skipped using the alias:

`skip/{platform}{version}` such as `skip/rhel7.6`

This feature is available for platforms specified with the `--remote` option.

* Add skip by version to the docs.
6 years ago
Matt Clay 1a3bf09f8a
Add test to require docs for action plugins. (#48376) 6 years ago
Matt Martz 8765d2a8e8
code-smell test that can find deprecated config items (#46273)
* Start of code-smell test that can find deprecated config items

* Strip deprecated.version from config item

* Don't use os.walk, rely on explictly passed list of files

* Properly disable the test

* Add docs

* Make config an orphan
6 years ago
Felix Fontein 9a848ca883 Fixing typo in developing_locally.rst (#48535)
`cacheing` → `caching`

+label: docsite_pr
6 years ago
Jordan Borean 501acae5ab
Added basic equivalent to PowerShell modules (#44705)
* Added basic equivalent to PowerShell modules

* changes based on latest review

* Added tests

* ignore sanity test due to how tests are set up

* Changes to work with PSCore

* Added documentation and change updated more modules

* Add some speed optimisations to AddType

* fix some issues in the doc changes

* doc changes
6 years ago
John R Barker 72359a10e6 Tidy up Contributors Docs (#47619)
* Tidy up docs on GitHub, direct people to docs.ansible.com
* De-duplicate documentation and move useful info
6 years ago
Ben Cornett 6229f89369 Fix spelling (#47692) 6 years ago
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
6 years ago
Alicia Cozine 4219d25fc7 Add docs about contributing to docs (#46481)
* adds page on community contributions to docs
6 years ago
Jordan Borean ddfd1dbfc6
Add helper function to return helpful import error msg (#47409) 6 years ago
He Guimin 85ba30a3db Add new module ali_instance (#36898) 6 years ago
Bianca Henderson ffc46e1648 Making minor grammatical changes (#46844)
fixes to dev_guide page
6 years ago
Sloane Hertel f3d5ebb355 add more consistent extension matching for inventory plugins (#46786)
* Add consistent extension matching for inventory plugins that support YAML configuration files

* Document extension matching expectations
6 years ago
Alicia Cozine 9764f32513 adds stub API docs in a single file (#46663)
* adds stub API docs in a single file
6 years ago
Matt Clay e2b6047514
Add symlinks sanity test. (#46467)
* Add symlinks sanity test.
* Replace legacy test symlinks with actual content.
* Remove dir symlink from template_jinja2_latest.
* Update import test to use generated library dir.
* Fix copy test symlink setup.
6 years ago
Alicia Cozine 66eb5681f4 yes, we do run validate_modules in Shippable (#46280) 6 years ago
Alicia Cozine d1beb8436b restores legacy testing file (#46095)
* restores legacy testing file

* corrects links to legacy testing page

* oops, copy-pasta fix
6 years ago
Simon Metzger fc7e5f16e8 Update developing_modules_general_aci.rst
<!--- Your description here -->

+label: docsite_pr
6 years ago
Jordan Borean 27c10fa502
add skip/docker alias to skip tests when running on Docker (#45955)
* add skip/docker alias to skip tests when running on Docker

* changed warning message wording
6 years ago
Pilou 60160c1e90 doc: exercising module code locally: update cmd (#45697)
The documented way to execute module code locally wasn't always working:

    $ python ./lib/ansible/modules/files/file.py <<< '{"ANSIBLE_MODULE_ARGS": {}}'
    Traceback (most recent call last):
      File "./lib/ansible/modules/files/file.py", line 177, in <module>
        from ansible.module_utils.basic import AnsibleModule
      File "~/ansible/lib/ansible/module_utils/basic.py", line 78, in <module>
        import tempfile
      File "~/ansible/lib/ansible/modules/files/tempfile.py", line 69, in <module>
        from tempfile import mkstemp, mkdtemp
    ImportError: cannot import name 'mkstemp'
6 years ago
Alicia Cozine f430f60541
Restore license agreement (#45809)
* adds page for CLA in community docs with links from dev and community docs
6 years ago
John R Barker 822236810e
BOTMETA Validator + Bulk tidyup, support:(core,community,network) (#44903)
plugins/ is COMMUNITY
Set sensible defaults for directories
support:network for the platforms that we Networking SUPPORTS,
everything else is COMMUNITY
Mark other support:network (ansible-connection, etc)
Infoblox is support:core
contrib/ by definition should be support:community
Remove duplicated labels
Make yamllint happy(ier)
Adds sanity test to ensure BOTMETA.yml is valid
6 years ago
Dag Wieers e038338e9f Improvements to structure 6 years ago
Jacob McGill 78d7769bd9 ACI: Move dev_guide from Wiki to Ansible docs 6 years ago
Dag Wieers afea00fa9f Improve the local toctree (and title) (#45590)
Make toctree for Windows dev guide local, remove 'Ansible' from the title, since
this documentation is about Ansible.
6 years ago
Alicia Cozine 6e68d77f6d adds license details to dev guide pages (#45574)
* adds license details to dev guide pages

* fixes capitalization error
6 years ago
Alicia Cozine 4264be2b18 Remove more docs build errors (#45364)
* orphans testing pages to avoid not-in-toctree errors

* orphans various pages pending reorg

* adds module_utils and special_vars to main TOC

* uses a glob for scenario_guide TOC

* normalize and Sentence-case headings on community pages, typos

* re-orgs community TOC, adds all pages to toctree

* removes scenario guides index page

* adds style guide to community index

* basic update to style guide

* fix typo that created a new error

* removes not-in-toctree from ignore errors list

* leave removing files for future cleanup task
6 years ago
Alicia Cozine 9a76441c02
rewrite of the developer guide, part 1 (#45179)
* rewrite of the developer guide, part 1
6 years ago
Brian Coca 893d59fabe
updated guides to avoid connection: local (#44227)
- want they really need is `delegate_to: localhost`
 - also reduced 'local_action' usage in favor of same
6 years ago
Donghyun Kang 5fecf8baab doc: fixed typo (#44685) 6 years ago
Toshio Kuratomi 68c60ad307 Change validate-modules for removed modules
Removed modules now don't have documentation.  Need to account for that
when checking them in validte-modules
6 years ago
Andreas Olsson 00e5123e4c Update documentation based on 301 permanent redirects (#43675) 6 years ago
Toshio Kuratomi da26ba3760 Documentatin fixes 6 years ago
Toshio Kuratomi c4951cce0b Exorcise Python-2.6 6 years ago
Will Smith 2de692348f change raising errors example to raise error (#43664)
Example instantiates an AnsibleError which derives from Exception but doesn't actually raise it like intended. This is misleading as it's not clear without examining the code for AnsibleError to know that it's not some function which would raise the exception automatically.
6 years ago
Andreas Olsson 1a11cecaef Prefer https:// links in the docs site
All the changed urls are availible by way of https://. Most of them
already redirect.
6 years ago
Matt Martz 01c0446cb5
Add AnsibleModule signature schema, and fix associated issues (#43512) 6 years ago
Matt Clay 4e489d1be8
Update Shippable integration test groups. (#43118)
* Update Shippable integration test groups.
* Update integration test group aliases.
* Rebalance AWS and Azure tests with extra group.
* Rebalance Windows tests with another group.
6 years ago
Brian Coca a37f27a243 removed note from already removed 1.x api comment
fixes #39888
6 years ago
Sachidananda Urs fecda03066 Fix typos in documentation (#42406)
Fix typos in unit test documentation

Fixes:  #42405
6 years ago
Brian Coca 475abc0af7
inventory plugin docs (#42022)
* inventory plugin docs
* added set options
* minor wording and formatting fixes
* changed headers to std as per #35520, also added to main readme
* unified inventory plugin devel, referenced from generic plugin dev
* fixed typos and update as per feedback
6 years ago
John R Barker 6366df700d Document module links (#42308) 6 years ago
John R Barker d962611528 Allow documentation of module options type (#42285)
* Allow documentation of module options

Pass through the `type` of a modules option so it's displayed on the
html module docs

* docs
6 years ago
Troy Murray 15ce7c5bab change OS X to macOS (#41294)
* change OS X to macOS

<!--- Your description here -->

+label: docsite_pr

* Update all Mac OS X references to be macOS

* Drop extra Mac
7 years ago
Andrea Tartaglia a342538aba Add shell out checks (#41545)
* Added error codes for shell_out checks

* Added ignore lines for allowed Modules

* Added shell out checks

* Fixed pep8

* Updated regex to only match subprocess.Popen

* Added failing modules to ignore.txt

* Wrong postgresql module in ignore.txt

* Removed bigip from ignore.txt
7 years ago
Abhijeet Kasurde 27b85e732d Argument spec must be dict/hash (#40858)
validate-modules should fail when argument is not dict/hash.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
7 years ago
Matt Clay 70c475da6c Implement new changelog generator. 7 years ago
Sam Doran 8746d9ef87 Add guidelines on developing lookup plugins (#38681) 7 years ago
Matt Clay 8d39515914 Remove tab check from validate-modules.
It is redundant with the pycodestyle W191 "indentation contains tabs" check.
7 years ago
Simon fb6ae90f60 Memset: initial module, integration tests, module_utils and supporting documentation. (#40071)
*  * Memset:
   * module_utils and associated documentation.
   * module to manage DNS zones.
   * integration tests to run against Memset's API.

* * memset.py:
  * remove import of requests from memset.py in favour of internal Ansible modules.
  * import necessary Ansible modules for request and response handling.
  * create a response object in order to retain a stable interface to memset_api_call from existing modules.
  * rework memset_api_call to remove requests.
* memset_zone.py:
  * improve short description to be more verbose.
  * ensure all imports directly follow documentation.
  * remove any reference to requests.
  * correct keyerror carried over from elsewhere.

* remove dependency on requests from documentation string

* disable integration tests until we have a cleanup method available
7 years ago
Jon Dufresne 1d640182c6 Update all pypi.python.org URLs to pypi.org (#38988)
For details on the new PyPI, see the blog post:

https://pythoninsider.blogspot.ca/2018/04/new-pypi-launched-legacy-pypi-shutting.html
7 years ago
Ken Celenza e476089bb9 spacing issue (#39884) 7 years ago
Matt Martz 1663b64e18
Allow subspec defaults to be processed when the parent argument is not supplied (#38967)
* Allow subspec defaults to be processed when the parent argument is not supplied

* Allow this to be configurable via apply_defaults on the parent

* Document attributes of arguments in argument_spec

* Switch manageiq_connection to use apply_defaults

* add choices to api_version in argument_spec
7 years ago
Kevin Breit c8d287fece Meraki organization module (#38773)
* Initial commit

Query an organization within Meraki. No support is in place for managing
or creating yet

* Change output_level method and make the state parameter required.

* Implemented listing all organizations

- Updated documentation
- Parse results and return all organizations
- Parse results and return specified organization

* Framework for creating an organization

- Documentation example for organization creation
- Framework exists for creating organizations, pending PR 36809
- Created functions for HTTP calls
- Renamed from dashboard.meraki.com to api.meraki.com
- Added required_if for state

* Remove absent state

- Meraki API does not support deleting an organization so absent is removed
- Updated documentation to call it state instead of status

* Small change to documentation

* Support all parameters associated to organization

- Added all parameters needed for all organization actions.
- None of the added ones work at this time.
- Added documentation for clone.

* Integration test for meraki_organization module

* Rename module to meraki for porting to module utility

* Meraki documentation fragment

- Created initial documentation fragment for Meraki modules

* Add meraki module utility to branch. Formerly was on a separate branch.

* CRU support for Meraki organization module

* CRU is supported for Meraki organizations
* There is no DELETE function for organizations in the API
* This code is very messy and needs cleanup
* Create and Update actions don't show status as updated, must fix

* Added Meraki module utility to module utility documentation list

* Added support for organization cloning
* Renamed use_ssl to use_https
* Removed define_method()
* Removed is_org()
* Added is_org_valid() which does all org sanity checks

* Fixes for ansibot
- Changed default of use_proxy from true to false
- Removed some commented out code
- Updated documentation

* Changes for ansibot
- Removed requirement for state parameter. I may readd this.
- Updated formatting

diff --git a/lib/ansible/module_utils/network/meraki/meraki.py b/lib/ansible/module_utils/network/meraki/meraki.py
index 3acd3d1038..395ac7c4b4 100644
--- a/lib/ansible/module_utils/network/meraki/meraki.py
+++ b/lib/ansible/module_utils/network/meraki/meraki.py
@@ -42,7 +42,7 @@ def meraki_argument_spec():
     return dict(auth_key=dict(type='str', no_log=True, fallback=(env_fallback, ['MERAKI_KEY'])),
                 host=dict(type='str', default='api.meraki.com'),
                 name=dict(type='str'),
-                state=dict(type='str', choices=['present', 'absent', 'query'], required=True),
+                state=dict(type='str', choices=['present', 'absent', 'query']),
                 use_proxy=dict(type='bool', default=False),
                 use_https=dict(type='bool', default=True),
                 validate_certs=dict(type='bool', default=True),
diff --git a/lib/ansible/modules/network/meraki/meraki_organization.py b/lib/ansible/modules/network/meraki/meraki_organization.py
index 923d969366..3789be91d6 100644
--- a/lib/ansible/modules/network/meraki/meraki_organization.py
+++ b/lib/ansible/modules/network/meraki/meraki_organization.py
@@ -20,11 +20,9 @@ short_description: Manage organizations in the Meraki cloud
 version_added: "2.6"
 description:
 - Allows for creation, management, and visibility into organizations within Meraki
-
 notes:
 - More information about the Meraki API can be found at U(https://dashboard.meraki.com/api_docs).
 - Some of the options are likely only used for developers within Meraki
-
 options:
     name:
         description:
@@ -32,21 +30,18 @@ options:
         - If C(clone) is specified, C(name) is the name of the new organization.
     state:
         description:
-        - Create or query organizations
-        choices: ['query', 'present']
+        - Create or modify an organization
+        choices: ['present', 'query']
     clone:
         description:
         - Organization to clone to a new organization.
-        type: string
     org_name:
         description:
         - Name of organization.
         - Used when C(name) should refer to another object.
-        type: string
     org_id:
         description:
         - ID of organization
-
 author:
     - Kevin Breit (@kbreit)
 extends_documentation_fragment: meraki
@@ -86,7 +81,6 @@ RETURN = '''
 response:
     description: Data returned from Meraki dashboard.
     type: dict
-    state: query
     returned: info
 '''

@@ -103,6 +97,7 @@ def main():
     argument_spec = meraki_argument_spec()
     argument_spec.update(clone=dict(type='str'),
+                         state=dict(type='str', choices=['present', 'query']),
                          )

@@ -125,11 +120,9 @@ def main():

     meraki.function = 'organizations'
     meraki.params['follow_redirects'] = 'all'
-    meraki.required_if=[
-                           ['state', 'present', ['name']],
-                           ['clone', ['name']],
-                           # ['vpn_PublicIP', ['name']],
-                       ]
+    meraki.required_if = [['state', 'present', ['name']],
+                          ['clone', ['name']],
+                          ]

     create_urls = {'organizations': '/organizations',
                    }
@@ -162,23 +155,16 @@ def main():

-
-    # method = None
-    # org_id = None
-
-
-    # meraki.fail_json(msg=meraki.is_org_valid(meraki.get_orgs(), org_name='AnsibleTestOrg'))
-
     if meraki.params['state'] == 'query':
-      if meraki.params['name'] is None:  # Query all organizations, no matter what
-        orgs = meraki.get_orgs()
-        meraki.result['organization'] = orgs
-      elif meraki.params['name'] is not None:  # Query by organization name
-        module.warn('All matching organizations will be returned, even if there are duplicate named organizations')
-        orgs = meraki.get_orgs()
-        for o in orgs:
-          if o['name'] == meraki.params['name']:
-            meraki.result['organization'] = o
+        if meraki.params['name'] is None:  # Query all organizations, no matter what
+            orgs = meraki.get_orgs()
+            meraki.result['organization'] = orgs
+        elif meraki.params['name'] is not None:  # Query by organization name
+            module.warn('All matching organizations will be returned, even if there are duplicate named organizations')
+            orgs = meraki.get_orgs()
+            for o in orgs:
+                if o['name'] == meraki.params['name']:
+                    meraki.result['organization'] = o
     elif meraki.params['state'] == 'present':
         if meraki.params['clone'] is not None:  # Cloning
             payload = {'name': meraki.params['name']}
@@ -193,7 +179,10 @@ def main():
             payload = {'name': meraki.params['name'],
                        'id': meraki.params['org_id'],
                        }
-            meraki.result['response'] = json.loads(meraki.request(meraki.construct_path('update', org_id=meraki.params['org_id']), payload=json.dumps(payload), method='PUT'))
+            meraki.result['response'] = json.loads(meraki.request(meraki.construct_path('update',
+                                                                                        org_id=meraki.params['org_id']),
+                                                                  payload=json.dumps(payload),
+                                                                  method='PUT'))

diff --git a/lib/ansible/utils/module_docs_fragments/meraki.py b/lib/ansible/utils/module_docs_fragments/meraki.py
index e268d02e68..3569d83b99 100644
--- a/lib/ansible/utils/module_docs_fragments/meraki.py
+++ b/lib/ansible/utils/module_docs_fragments/meraki.py
@@ -35,6 +35,7 @@ options:
         description:
         - Set amount of debug output during module execution
         choices: ['normal', 'debug']
+        default: 'normal'
     timeout:
         description:
         - Time to timeout for HTTP requests.
diff --git a/test/integration/targets/meraki_organization/aliases b/test/integration/targets/meraki_organization/aliases
new file mode 100644
index 0000000000..ad7ccf7ada
--- /dev/null
+++ b/test/integration/targets/meraki_organization/aliases
@@ -0,0 +1 @@
+unsupported

* Formatting fix

* Minor updates due to testing
- Made state required again
- Improved formatting for happier PEP8
- request() now sets instance method

* Fix reporting of the result

* Enhance idempotency checks
- Remove merging functionality as the proposed should be used
- Do check and reverse check to look for differences

* Rewrote and added additional integration tests. This isn't done.

* Updated is_update_required method:
- Original and proposed data is passed to method
- Added ignored_keys list so it can be skipped if needed

* Changes per comments from dag
- Optionally assign function on class instantiation
- URLs now have {} for substitution method
- Move auth_key check to module utility
- Remove is_new and get_existing
- Minor changes to documentation

* Enhancements for future modules and organization
- Rewrote construct_path method for simplicity
- Increased support for network functionality to be committed

* Changes based on Dag feedback and to debug problems

* Minor fixes for validitation testing

* Small changes for dag and Ansibot
- Changed how auth_key is processed
- Removed some commented lines
- Updated documentation fragment, but that may get reverted

* Remove blank line and comment

* Improvements for testing and code simplification
- Added network integration tests
- Modified error handling in request()
	- More testing to come on this
- Rewrote construct_path again. Very simple now.

* Remove trailing whitespace

* Small changes based on dag's response

* Removed certain sections from exit_json and fail_json as they're old
7 years ago
Alicia Cozine c8a9b411bc
Last docs link fixes (#39391)
* should not need <>, but fails without

* adds anchor to keywords page, uses it on plugins pages

* fixes envvar link errors

* harmonize file name and ref name as python_3

* removes undefined-lable from ignore list
7 years ago