MH DeprecateAttrsMixin (#3727) (#3794)

* initial commit for deprecate_attrs

* completed tests

* added spaces

* test now works when tehre is more than one deprecation

* trying == instead of eq in jinja

* new approach to testing

* removed extraneous debug message

(cherry picked from commit 887b3882dc)

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
This commit is contained in:
patchback[bot]
2021-11-26 20:53:49 +01:00
committed by GitHub
parent 9add9df7d6
commit 35fd4700bf
4 changed files with 163 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
# (c) 2021, Alexei Znamensky <russoz@gmail.com>
#
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from __future__ import absolute_import, division, print_function
import collections
__metaclass__ = type
DOCUMENTATION = '''
module: msimpleda
author: "Alexei Znamensky (@russoz)"
short_description: Simple module for testing DeprecationAttrsMixin
description:
- Simple module test description.
options:
a:
description: aaaa
type: int
'''
EXAMPLES = ""
RETURN = ""
from ansible_collections.community.general.plugins.module_utils.module_helper import ModuleHelper
from ansible_collections.community.general.plugins.module_utils.mh.mixins.deprecate_attrs import DeprecateAttrsMixin
class MSimpleDA(DeprecateAttrsMixin, ModuleHelper):
output_params = ('a',)
module = dict(
argument_spec=dict(
a=dict(type='int'),
),
)
attr1 = "abc"
attr2 = "def"
def __init_module__(self):
self._deprecate_attr(
"attr2",
msg="Attribute attr2 is deprecated",
version="9.9.9",
collection_name="community.general",
target=self.__class__,
module=self.module,
)
def __run__(self):
if self.vars.a == 1:
self.vars.attr1 = self.attr1
if self.vars.a == 2:
self.vars.attr2 = self.attr2
def main():
MSimpleDA.execute()
if __name__ == '__main__':
main()