Commit Graph

84 Commits (c6823b9849d940c1af0bfa40a081544539207698)

Author SHA1 Message Date
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
Brandon Bell 5568ffd45b Fix syntax error for Python 2.6 (#47635)
* Fix syntax error for Python 2.6

* Removing consul.py from pylint/ignore.txt
2018-10-27 12:43:53 +10:00
Matt Clay c24c19594e
Enable pylint rules and fix exposed bugs. (#47219)
* Resolve invalid-unary-operand-type.

* Resolve raising-format-tuple.

* Resolve stop-iteration-return.

* Use disable comment instead of fixing logic.

The affected line in _find_address_range will only fail on Python 3.7
and later if the function is called with an empty address list. As an
internal method it is never called in this way, making it a non-issue
for use via public methods.

Using a comment to disable the rule in favor of an ignore.txt entry
since there are no plans to change the logic in the code itself. This
will also prevent any potential future issues being added in other
parts of the code when updating it based on upstream changes.
2018-10-19 08:32:52 -07:00
Mariusz Mazur 79119c62cd Correct wording in k8s module description (#47125) 2018-10-16 11:52:18 -05:00
Marc Sensenich 2b4e40c109 Add Check Mode to consul_kv (#28934) 2018-09-19 18:21:03 -04:00
Will Thames 1463c2e4a8
Use a sensible default for k8s merge_type (#45284)
* Use a sensible default for k8s merge_type

The sensible default for merge_type is `['strategic-merge', 'merge'].
However, we can't make this the default default, as we need to support
users who are using openshift 0.6.0, where the merge_type parameter is
unsupported.

* Refactor k8s test suite for merge_type tests

Allow tests with pre-merge-type openshift and post-merge-type
openshift.
2018-09-08 10:08:09 +10:00
Will Thames ce110ff081 K8s retry merge (#44821)
* Make merge_type a list and apply merge_type in order

Allow use case of preferring strategic-merge and failing
back to merge, or just preferring a different merge type

* Improve k8s module test coverage
2018-08-30 20:42:47 -04:00
Will Thames b35ac8080f Change the return key of k8s_facts (#44446)
`items` is a *terrible* return key for ansible as Jinja
will often think it refers to the `items()` function.

Even though you can typically work around this with
`results['items']`, sometimes even that doesn't work:

```
- name: Resources should exist
  assert:
    that: item.status.phase == 'Active'
  loop: "{{ k8s_namespaces['items'] }}"
```

```
fatal: [testhost]: FAILED! => {"msg": "Invalid data passed to 'loop', it
requires a list, got this instead: <built-in method items of dict object
at 0x109dc9c58>. Hint: If you passed a list/dict of just one element,
try adding wantlist=True to your lookup invocation or use q/query
instead of lookup."}
```

Change it now while we still can.
2018-08-29 12:04:04 +01:00
Joren Vrancken b954917761 Surround top-level function and class definitions with two blank lines. 2018-07-31 12:06:56 -07:00
Abhijeet Kasurde 122780abce Fix args schema regression in k8s module
Add back comma for required_one_of argument as it's
supposed to be an iterable of iterables.

PR #39787 by @Akasurde
Fixes: #39786

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-07-31 14:44:29 +01:00
Will Thames 0b77262288 Add merge_type parameter to k8s module (#42219)
Allows patching of custom Kubernetes resources that
don't support strategic merge patching

Check that openshift module supports content_type param
(requires version newer than 0.6.0)
2018-07-22 21:05:25 -07:00
Will Thames 62e7a65459 k8s_facts trivially supports check_mode (#42335) 2018-07-05 07:53:23 -04:00
Fabian von Feilitzsch d75e49693b update module arguments to allow resource_definition to be a string (#40730) 2018-06-29 09:21:47 -05:00
Will Thames 895c512596 New k8s_facts module
Strip out the facts parts of the k8s module into a new simpler
module that deals with querying for facts, also allowing
field and label selectors
2018-06-25 17:05:20 -07:00
Jon Dufresne bf304832ff Prefer readthedocs.io instead of readthedocs.org for doc links (#41537)
Read the Docs moved hosting to readthedocs.io instead of
readthedocs.org. Fix all links in the project.

For additional details, see:

https://blog.readthedocs.com/securing-subdomains/

> Starting today, Read the Docs will start hosting projects from
> subdomains on the domain readthedocs.io, instead of on
> readthedocs.org. This change addresses some security concerns around
> site cookies while hosting user generated data on the same domain as
> our dashboard.
2018-06-18 08:22:50 -04:00
Fabian von Feilitzsch 4d77878654 K8s dynamic collected changes (#40745)
* Move k8s modules to dynamic backend

* update required openshift version

* update -> patch

* use new dynamic client exceptions

* style

* guard urllib3 import

* guard ansibleerror import

* give more information about error cause

* format in variable

* style

* rename tests

* Search for provided kind in a few more places to match old behavior, properly handle failure

* make common code use fail instead of fail_json, to work for lookup plugins as well

* update docs

* move openshift_raw tests into k8s tests

* fix typo

* Use diff of response and resource to determine change, don't do any checking client-side before making requests

* remove duplicate yaml blocks

* Update porting guide for k8s module

* remove invalid doc refs

* If fuzzy searching finds a resource, update resource_definition to match proper kind and version

* remote unsupported openshift_raw variables

* properly check environment variables when determining auth method:
2018-05-30 12:04:48 -05:00
Adam Miller 78023e79d7
Revert "Move k8s modules to dynamic backend (#39632)" (#40743)
This reverts commit 4373b155a5.
2018-05-26 00:30:16 -05:00
Colin Nolan 01b3c14e23 consul_kv: support retrieval of values from KV (#37837)
* Adds support to get value from Consul KV.

* Updates documentation.

* Corrects GRL copyright years.

* Resolves PEP 8 issues.

* Changes consul_kv NOT_SET value to `None`.

* Support getting Consul KV values recursively.

* Adds example of retrieving key value.
2018-05-23 14:33:41 -05:00
Matt Clay 8deced3e04
Fix shebangs and file modes and update tests. (#40563)
* Add execute bit sanity test and apply fixes.
* Add shebang test for `lib` dirs and apply fixes.
* Shebang and execute bit cleanup.
2018-05-22 14:25:36 -07:00
Fabian von Feilitzsch 4373b155a5 Move k8s modules to dynamic backend (#39632)
* Move k8s modules to dynamic backend
2018-05-16 10:57:36 -05:00
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
2018-05-14 17:41:47 -05:00
Colin Nolan a4a2b4a381 consul_kv: decodes kv values from Consul to utf-8 (#35894)
* Decodes kv values from Consul to utf-8.

* Switches to using module utils to perform text decoding.

* Adds self to authors list to help community maintenance.
2018-03-22 14:56:38 -07:00
Dag Wieers cdd21e2170
Clean up module documentation (#36909)
* Clean up module documentation

This PR includes:
- Removal of `default: None` (and variations)
- Removal of `required: false`
- Fixing booleans and `type: bool` where required

* Fix remaining (new) validation issues
2018-03-15 22:15:24 +01:00
Alvaro Aleman c9cb0016a0 Fix consul module service deregistration (#34847)
* Fix consul module service deregistration

Upstream pr in the python-consul library:
https://github.com/cablehead/python-consul/pull/174

This is based on work from https://github.com/bobh

Fixes ansible/ansible#34628

* Pass ACL token when deregistering consul service
2018-03-06 11:57:04 -05:00
Grigory Starinkin 2d98a2de68 fix python3 compatibility for znode module
kazoo client requires bytes and not string
2018-03-05 12:00:46 -08:00
Chris Houseknecht 4a8b4bb8a8
Bump OpenShift client req to 0.4.3. Fixes openshift_scale. (#36601) 2018-02-22 16:31:47 -05:00
Chris Houseknecht 69be2c169f
Upgrade to openshift client 0.4.0 (#35127) 2018-02-13 10:34:24 -05:00
John R Barker a23c95023b
Module deprecation: docs, scheme and tests (#34100)
Enforce module deprecation.
After module has reached the end of it's deprecation cycle we will replace it with a docs stub.

* Replace deprecated modules with docs-only sub
* Use of deprecated past deprecation cycle gives meaningful message (see examples below)
* Enforce documentation.deprecation dict via `schema.py`
* Update `ansible-doc` and web docs to display documentation.deprecation
* Document that structure in `dev_guide`
* Ensure that all modules starting with `_` have a `deprecation:` block
* Ensure `deprecation:` block is only used on modules that start with `_`
* `removed_in` A string which represents when this module needs **deleting**
* CHANGELOG.md and porting_guide_2.5.rst list removed modules as well as alternatives
* CHANGELOG.md links to porting guide index

To ensure that meaningful messages are given to the user if they try to use a module at the end of it's deprecation cycle we enforce the module to contain:
```python
if __name__ == '__main__':
    removed_module()
```
2018-01-30 12:23:52 +00:00
Jean-Philippe Evrard 5f1254697d New module etcd3 (#35053)
This module uses etcd3 python library to do k/v manipulation on
an etcd3 cluster using version3 api.
2018-01-29 11:49:30 +01:00
John R Barker 195beebcb4
Module DOCUMENTATION should match argspec (#34895)
* Module DOCUMENTATION should match argspec

Large update of many modules so that DOCUMENTATION option name and
aliases match those defined in the argspec.

Issues identified by https://github.com/ansible/ansible/pull/34809

In addition to many typos and missing aliases, the following notable
changes were made:

* Create `module_docs_fragments/url.py` for `url_argument_spec`
* `dellos*_command` shouldn't have ever had `waitfor` (was incorrectly copied)
* `ce_aaa_server_host.py` `s/raduis_server_type/radius_server_type/g`
* `Junos_lldp` enable should be part of `state`.
2018-01-16 12:18:51 +00:00
Chris Houseknecht 623ff39443
Separate common and raw (#34563) 2018-01-09 07:22:46 -05:00
Chris Houseknecht b5245e581a
Adds openshift_scale module (#34244) 2018-01-07 12:38:50 -05:00
Chris Houseknecht 490a1625f7
K8s scale module (#33983)
* New K8s common modules

* Refactor

* Fixes lint issues

* openshift_scale to new branch

* Better docs

* Updates examples
2018-01-04 12:07:53 -05:00
Chris Houseknecht d73be7f461
Remove diff and request data. Add more return docs. (#34230) 2017-12-25 21:50:58 -05:00
Chris Houseknecht ad04c1854d
Granular K8s doc fragments (#34215)
* Makes doc fragment more granular

* Fix lint issues
2017-12-24 17:50:07 -05:00
Chris Houseknecht 9b4a1ed475
Reorganize k8s common (#34212)
* Reorganize k8s common

* Separates AnsibleMixin

* Fix lint issues
2017-12-23 16:41:38 -05:00
Chris Houseknecht 1c391e777a
Improving docs and examples (#34155)
* Improving docs and examples

* Removes trailing whitespace
2017-12-22 17:12:17 -05:00
Chris Houseknecht 1a59247f27 K8s raw modules (#34050)
* New dirs, raw modules, and deprecations, 'openshift' not 'oc'
2017-12-19 15:25:33 -06:00
Chris Houseknecht bd399ec674
Adds single, non-generated OpenShift module (#33645)
* Adds single, non-generated openshift module

* Adds kubernetes doc fragment

* Clarify docs
2017-12-18 20:04:50 -05:00
Chris Houseknecht ead5b1d024
Adds single, non-generated K8s module (#33517)
* Adds k8s.py

* Two module approach to support overlapping objects

* Clarify docs

* Clary state and force parameters

* Updates examples

* Add description and display_name

* Fix linting issues
2017-12-18 20:04:35 -05:00
Pilou 85871da03d consul_acl: fix broken import (#33729) 2017-12-15 16:06:11 -06:00
John Barker c57a7f05e1 Bulk autopep8 (modules)
As agreed in 2017-12-07 Core meeting bulk fix pep8 issues

Generated using:
autopep8 1.3.3 (pycodestyle: 2.3.1)
autopep8 -r  --max-line-length 160 --in-place --ignore E305,E402,E722,E741 lib/ansible/modules

Manually fix issues that autopep8 has introduced
2017-12-07 20:25:55 +00:00
Dag Wieers b3e4a88b90 consul_session: PEP8 compliancy and documentation changes (#33000)
THis PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-17 21:48:36 +01:00
Dag Wieers 5f36932adf pacemaker_cluster: PEP8 compliancy and doc changes (#33001)
This PR includes:
- PEP8 compliancy changes
- DOcumentation changes
2017-11-17 20:34:29 +01:00
Matt Martz 99d4f5bab4 Remove uses of assert in production code (#32079)
* Remove uses of assert in production code

* Fix assertion

* Add code smell test for assertions, currently limited to lib/ansible

* Fix assertion

* Add docs for no-assert

* Remove new assert from enos

* Fix assert in module_utils.connection
2017-11-13 11:51:18 -05:00
Luka 431042da8e OC Module - Disable complex list merging. Fixes #31196 (#31387)
* Minor fix.  Fixes #31196

* Disable complex list comparison and merge. Fixes #31196
2017-11-07 21:52:43 -05:00
Dag Wieers a1d60741a7 consul_kv: PEP8 compliancy and doc fixes (#32340)
This PR includes:
- PEP8 compliancy
- Doc fixes
2017-10-31 22:27:56 -04:00
nilhase25 9cff2c376b fix pep8 issue in consul_kv.py (#32310) 2017-10-30 11:37:52 +01:00
Dag Wieers fde4244d04 kubernetes: PEP8 compliancy and doc fixes (#30914)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-09-29 01:51:23 -04:00
Chrrrles Paul e3ef80f5d6 oc module- Fixing description & removing example command (#30257)
* Fixing description & removing oc/adm example

Noticed formatting errors on http://docs.ansible.com/ansible/latest/oc_module.html -- also removing oc/oadm command examples

* Trailing whitespace..
2017-09-19 15:09:22 -04:00