add etcd3 lookup plugin (#127)
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* changes:
- replace kwargs lookups with get_option()
- add 'entpoint' option for correct handling of ETCDCTL_ENDPOINTS env
- code simplification
* fix etcd3 lookup unit test:
replace LookupModule instanciation with lookup_loader
* fix sanity checks
* etcd3 changes:
- docstring documentation fixes/updates
- create etcd3 cnx object with a get_option() loop instead of copying 'private' class object
- set 'endpoints' option mutually exclusive with 'host' and 'port' (raises an AnsibleError exception)
* etcd3 changes:
- added ANSIBLE_METADATA,
- added default value for 'endpoints' option,
- removed defaults for options 'host' and 'port',
- fixed docstring links,
- added 'notes' and 'seealso' sections in doctring
- updated options code handling to reflect docstring's updates
* etcd3 changes:
- fix descriptions for endpoints, host, and port options
- update notes sections
- fix reference to etcd lookup plugin in seealso section
- fix return docstring
- remove useless logging
- obfuscates password in connection logging
* more pythonic lookup on dict keys
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update password obfuscation
Co-Authored-By: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
2020-04-25 10:58:06 +02:00
|
|
|
---
|
2020-09-25 08:01:17 +02:00
|
|
|
####################################################################
|
|
|
|
# WARNING: These are designed specifically for Ansible tests #
|
|
|
|
# and should not be used as examples of how to write Ansible roles #
|
|
|
|
####################################################################
|
|
|
|
|
add etcd3 lookup plugin (#127)
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* changes:
- replace kwargs lookups with get_option()
- add 'entpoint' option for correct handling of ETCDCTL_ENDPOINTS env
- code simplification
* fix etcd3 lookup unit test:
replace LookupModule instanciation with lookup_loader
* fix sanity checks
* etcd3 changes:
- docstring documentation fixes/updates
- create etcd3 cnx object with a get_option() loop instead of copying 'private' class object
- set 'endpoints' option mutually exclusive with 'host' and 'port' (raises an AnsibleError exception)
* etcd3 changes:
- added ANSIBLE_METADATA,
- added default value for 'endpoints' option,
- removed defaults for options 'host' and 'port',
- fixed docstring links,
- added 'notes' and 'seealso' sections in doctring
- updated options code handling to reflect docstring's updates
* etcd3 changes:
- fix descriptions for endpoints, host, and port options
- update notes sections
- fix reference to etcd lookup plugin in seealso section
- fix return docstring
- remove useless logging
- obfuscates password in connection logging
* more pythonic lookup on dict keys
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update password obfuscation
Co-Authored-By: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
2020-04-25 10:58:06 +02:00
|
|
|
# lookup_etcd3 integration tests
|
2022-08-08 15:19:46 +02:00
|
|
|
# Copyright 2020, SCC France, Eric Belhomme <ebelhomme@fr.scc.com>
|
2022-08-05 13:17:19 +02:00
|
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
add etcd3 lookup plugin (#127)
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* add etcd3 lookup plugin
* retire version_added tag
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fix YAML syntax in example
Co-Authored-By: Felix Fontein <felix@fontein.de>
* typo fixes
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove python shebang as it is useless in Ansible lookup module
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/etcd3.py typo
Co-Authored-By: Felix Fontein <felix@fontein.de>
* fixes:
- replaced LookupBase._display by ansible.utils.display.Display
- add regex to retrieve host and port from ETCDCTL_ENDPOINTS env
- add env support for user, password, timeout
* fixes:
- use short form for types
- update doc section with envs
- catch exceptions between etcd3 api calls
* etcd3 lookup pass ansible sanity checks
introduce ansible integration tests for etcd3 lookup
* extract etcd3 setup from existing etcd3 module integration test
* fix etcd3 module/lookup integration tests
* fixes:
- fix port option in docstring
- raise connecttion error
- fix display format issues
- fix ETCDCTL_ENDPOINTS regex
adds:
- basic unit tests
* fix sanity issues
* changes:
- replace kwargs lookups with get_option()
- add 'entpoint' option for correct handling of ETCDCTL_ENDPOINTS env
- code simplification
* fix etcd3 lookup unit test:
replace LookupModule instanciation with lookup_loader
* fix sanity checks
* etcd3 changes:
- docstring documentation fixes/updates
- create etcd3 cnx object with a get_option() loop instead of copying 'private' class object
- set 'endpoints' option mutually exclusive with 'host' and 'port' (raises an AnsibleError exception)
* etcd3 changes:
- added ANSIBLE_METADATA,
- added default value for 'endpoints' option,
- removed defaults for options 'host' and 'port',
- fixed docstring links,
- added 'notes' and 'seealso' sections in doctring
- updated options code handling to reflect docstring's updates
* etcd3 changes:
- fix descriptions for endpoints, host, and port options
- update notes sections
- fix reference to etcd lookup plugin in seealso section
- fix return docstring
- remove useless logging
- obfuscates password in connection logging
* more pythonic lookup on dict keys
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update password obfuscation
Co-Authored-By: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
2020-04-25 10:58:06 +02:00
|
|
|
|
|
|
|
- name: put key/values with an etcd prefix
|
|
|
|
etcd3:
|
|
|
|
key: "{{ etcd3_prefix }}foo{{ item }}"
|
|
|
|
value: "bar{{ item }}"
|
|
|
|
state: present
|
|
|
|
loop:
|
|
|
|
- 1
|
|
|
|
- 2
|
|
|
|
- 3
|
|
|
|
|
|
|
|
- name: put a single key/values in etcd
|
|
|
|
etcd3:
|
|
|
|
key: "{{ etcd3_singlekey }}"
|
|
|
|
value: "foobar"
|
|
|
|
state: present
|
|
|
|
|
|
|
|
- import_tasks: tests.yml
|