mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-22 21:00:22 -07:00
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
This commit is contained in:
parent
54a2f21f93
commit
9773a1f289
149 changed files with 407 additions and 766 deletions
|
@ -27,12 +27,9 @@ from ansible.module_utils._text import to_text, to_native
|
|||
from ansible.playbook.play import Play
|
||||
from ansible.playbook.playbook_include import PlaybookInclude
|
||||
from ansible.plugins.loader import get_all_plugin_loaders
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
__all__ = ['Playbook']
|
||||
|
|
|
@ -21,12 +21,9 @@ from ansible.module_utils._text import to_text, to_native
|
|||
from ansible.playbook.attribute import Attribute, FieldAttribute
|
||||
from ansible.parsing.dataloader import DataLoader
|
||||
from ansible.utils.vars import combine_vars, isidentifier, get_unique_id
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
def _generic_g(prop_name, self):
|
||||
|
|
|
@ -22,12 +22,9 @@ __metaclass__ = type
|
|||
from ansible import constants as C
|
||||
from ansible.errors import AnsibleParserError
|
||||
from ansible.playbook.attribute import FieldAttribute
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
class Become:
|
||||
|
|
|
@ -29,13 +29,9 @@ from ansible.errors import AnsibleError, AnsibleUndefinedVariable
|
|||
from ansible.module_utils.six import text_type
|
||||
from ansible.module_utils._text import to_native
|
||||
from ansible.playbook.attribute import FieldAttribute
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
|
||||
display = Display()
|
||||
|
||||
DEFINED_REGEX = re.compile(r'(hostvars\[.+\]|[\w_]+)\s+(not\s+is|is|is\s+not)\s+(defined|undefined)')
|
||||
LOOKUP_REGEX = re.compile(r'lookup\s*\(')
|
||||
|
|
|
@ -25,12 +25,9 @@ from ansible.errors import AnsibleParserError, AnsibleUndefinedVariable, Ansible
|
|||
from ansible.module_utils._text import to_native
|
||||
from ansible.module_utils.six import string_types
|
||||
from ansible.parsing.mod_args import ModuleArgsParser
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
def load_list_of_blocks(ds, play, parent_block=None, role=None, task_include=None, use_handlers=False, variable_manager=None, loader=None):
|
||||
|
|
|
@ -24,12 +24,9 @@ import os
|
|||
from ansible.playbook.task_include import TaskInclude
|
||||
from ansible.playbook.role_include import IncludeRole
|
||||
from ansible.template import Templar
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
class IncludedFile:
|
||||
|
|
|
@ -30,12 +30,9 @@ from ansible.playbook.helpers import load_list_of_blocks, load_list_of_roles
|
|||
from ansible.playbook.role import Role
|
||||
from ansible.playbook.taggable import Taggable
|
||||
from ansible.vars.manager import preprocess_vars
|
||||
from ansible.utils.display import Display
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
__all__ = ['Play']
|
||||
|
|
|
@ -37,14 +37,11 @@ from ansible.module_utils.parsing.convert_bool import boolean
|
|||
from ansible.playbook.attribute import FieldAttribute
|
||||
from ansible.playbook.base import Base
|
||||
from ansible.plugins import get_plugin_class
|
||||
from ansible.utils.display import Display
|
||||
from ansible.utils.ssh_functions import check_for_controlpersist
|
||||
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
__all__ = ['PlayContext']
|
||||
|
|
|
@ -32,16 +32,12 @@ from ansible.playbook.conditional import Conditional
|
|||
from ansible.playbook.taggable import Taggable
|
||||
from ansible.template import Templar
|
||||
from ansible.utils.path import unfrackpath
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
|
||||
from ansible.utils.display import Display
|
||||
|
||||
__all__ = ['RoleDefinition']
|
||||
|
||||
display = Display()
|
||||
|
||||
|
||||
class RoleDefinition(Base, Become, Conditional, Taggable):
|
||||
|
||||
|
|
|
@ -31,11 +31,10 @@ from ansible.module_utils._text import to_native
|
|||
from ansible.module_utils.common.process import get_bin_path
|
||||
from ansible.module_utils.six import string_types
|
||||
from ansible.playbook.role.definition import RoleDefinition
|
||||
|
||||
from ansible.utils.display import Display
|
||||
|
||||
__all__ = ['RoleRequirement']
|
||||
|
||||
|
||||
VALID_SPEC_KEYS = [
|
||||
'name',
|
||||
'role',
|
||||
|
@ -44,11 +43,7 @@ VALID_SPEC_KEYS = [
|
|||
'version',
|
||||
]
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
display = Display()
|
||||
|
||||
|
||||
class RoleRequirement(RoleDefinition):
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
#
|
||||
# This file is part of Ansible
|
||||
#
|
||||
|
@ -27,15 +26,12 @@ from ansible.playbook.block import Block
|
|||
from ansible.playbook.task_include import TaskInclude
|
||||
from ansible.playbook.role import Role
|
||||
from ansible.playbook.role.include import RoleInclude
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
from ansible.utils.display import Display
|
||||
|
||||
__all__ = ['IncludeRole']
|
||||
|
||||
display = Display()
|
||||
|
||||
|
||||
class IncludeRole(TaskInclude):
|
||||
|
||||
|
|
|
@ -36,16 +36,12 @@ from ansible.playbook.conditional import Conditional
|
|||
from ansible.playbook.loop_control import LoopControl
|
||||
from ansible.playbook.role import Role
|
||||
from ansible.playbook.taggable import Taggable
|
||||
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
from ansible.utils.display import Display
|
||||
|
||||
__all__ = ['Task']
|
||||
|
||||
display = Display()
|
||||
|
||||
|
||||
class Task(Base, Conditional, Taggable, Become):
|
||||
|
||||
|
|
|
@ -24,15 +24,12 @@ from ansible.errors import AnsibleParserError
|
|||
from ansible.playbook.attribute import FieldAttribute
|
||||
from ansible.playbook.block import Block
|
||||
from ansible.playbook.task import Task
|
||||
|
||||
try:
|
||||
from __main__ import display
|
||||
except ImportError:
|
||||
from ansible.utils.display import Display
|
||||
display = Display()
|
||||
from ansible.utils.display import Display
|
||||
|
||||
__all__ = ['TaskInclude']
|
||||
|
||||
display = Display()
|
||||
|
||||
|
||||
class TaskInclude(Task):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue