当前位置: 首页>>代码示例>>Python>>正文


Python VariableManager.get_vars方法代码示例

本文整理汇总了Python中ansible.vars.VariableManager.get_vars方法的典型用法代码示例。如果您正苦于以下问题:Python VariableManager.get_vars方法的具体用法?Python VariableManager.get_vars怎么用?Python VariableManager.get_vars使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ansible.vars.VariableManager的用法示例。


在下文中一共展示了VariableManager.get_vars方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_variable_manager_role_vars_dependencies

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_role_vars_dependencies(self):
        '''
        Tests vars from role dependencies with duplicate dependencies.
        '''

        v = VariableManager()
        v._fact_cache = defaultdict(dict)

        fake_loader = DictDataLoader({
            # role common-role
            '/etc/ansible/roles/common-role/tasks/main.yml': """
            - debug: msg="{{role_var}}"
            """,
            # We do not need allow_duplicates: yes for this role
            # because eliminating duplicates is done by the execution
            # strategy, which we do not test here.

            # role role1
            '/etc/ansible/roles/role1/vars/main.yml': """
            role_var: "role_var_from_role1"
            """,
            '/etc/ansible/roles/role1/meta/main.yml': """
            dependencies:
              - { role: common-role }
            """,

            # role role2
            '/etc/ansible/roles/role2/vars/main.yml': """
            role_var: "role_var_from_role2"
            """,
            '/etc/ansible/roles/role2/meta/main.yml': """
            dependencies:
              - { role: common-role }
            """,
        })

        play1 = Play.load(dict(
           hosts=['all'],
           roles=['role1', 'role2'],
        ), loader=fake_loader, variable_manager=v)

        # The task defined by common-role exists twice because role1
        # and role2 depend on common-role.  Check that the tasks see
        # different values of role_var.
        blocks = play1.compile()
        task = blocks[1].block[0]
        res = v.get_vars(loader=fake_loader, play=play1, task=task)
        self.assertEqual(res['role_var'], 'role_var_from_role1')

        task = blocks[2].block[0]
        res = v.get_vars(loader=fake_loader, play=play1, task=task)
        self.assertEqual(res['role_var'], 'role_var_from_role2')
开发者ID:KMK-ONLINE,项目名称:ansible,代码行数:54,代码来源:test_variable_manager.py

示例2: test_manager_extra_vars

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_manager_extra_vars(self):
        extra_vars = dict(a=1, b=2, c=3)
        v = VariableManager()
        v.set_extra_vars(extra_vars)

        self.assertEqual(v.get_vars(), extra_vars)
        self.assertIsNot(v.extra_vars, extra_vars)
开发者ID:conlini,项目名称:frozen-ansible,代码行数:9,代码来源:test_variable_manager.py

示例3: test_variable_manager_host_vars_file

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_host_vars_file(self):
        fake_loader = DictDataLoader({
            "host_vars/hostname1.yml": """
               foo: bar
            """,
            "other_path/host_vars/hostname1.yml": """
               foo: bam
               baa: bat
            """,
            "host_vars/host.name.yml": """
               host_with_dots: true
            """,
        })

        v = VariableManager()
        v.add_host_vars_file("host_vars/hostname1.yml", loader=fake_loader)
        v.add_host_vars_file("other_path/host_vars/hostname1.yml", loader=fake_loader)
        self.assertIn("hostname1", v._host_vars_files)
        self.assertEqual(v._host_vars_files["hostname1"], [dict(foo="bar"), dict(foo="bam", baa="bat")])

        mock_host = MagicMock()
        mock_host.get_name.return_value = "hostname1"
        mock_host.get_vars.return_value = dict()
        mock_host.get_groups.return_value = ()
        mock_host.get_group_vars.return_value = dict()

        self.assertEqual(v.get_vars(loader=fake_loader, host=mock_host, use_cache=False).get("foo"), "bam")
        self.assertEqual(v.get_vars(loader=fake_loader, host=mock_host, use_cache=False).get("baa"), "bat")

        v.add_host_vars_file("host_vars/host.name", loader=fake_loader)
        self.assertEqual(v._host_vars_files["host.name"], [dict(host_with_dots=True)])
开发者ID:KMK-ONLINE,项目名称:ansible,代码行数:33,代码来源:test_variable_manager.py

示例4: test_variable_manager_group_vars_file

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_group_vars_file(self):
        fake_loader = DictDataLoader(
            {
                "group_vars/all.yml": """
               foo: bar
            """,
                "group_vars/somegroup.yml": """
               bam: baz
            """,
            }
        )

        v = VariableManager()
        v.add_group_vars_file("group_vars/all.yml", loader=fake_loader)
        v.add_group_vars_file("group_vars/somegroup.yml", loader=fake_loader)
        self.assertIn("somegroup", v._group_vars_files)
        self.assertEqual(v._group_vars_files["all"], dict(foo="bar"))
        self.assertEqual(v._group_vars_files["somegroup"], dict(bam="baz"))

        mock_group = MagicMock()
        mock_group.name = "somegroup"
        mock_group.get_ancestors.return_value = ()
        mock_group.get_vars.return_value = dict()

        mock_host = MagicMock()
        mock_host.get_name.return_value = "hostname1"
        mock_host.get_vars.return_value = dict()
        mock_host.get_groups.return_value = (mock_group,)

        vars = v.get_vars(loader=fake_loader, host=mock_host, use_cache=False)
        self.assertEqual(vars.get("foo"), "bar")
        self.assertEqual(vars.get("bam"), "baz")
开发者ID:ferhaty,项目名称:ansible,代码行数:34,代码来源:test_variable_manager.py

示例5: test_manager_play_vars

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_manager_play_vars(self):
        mock_play = MagicMock()
        mock_play.get_vars.return_value = dict(foo="bar")
        mock_play.get_roles.return_value = []
        mock_play.get_vars_files.return_value = []

        v = VariableManager()
        self.assertEqual(v.get_vars(play=mock_play), dict(foo="bar"))
开发者ID:conlini,项目名称:frozen-ansible,代码行数:10,代码来源:test_variable_manager.py

示例6: test_variable_manager_task_vars

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_task_vars(self):
        fake_loader = DictDataLoader({})

        mock_task = MagicMock()
        mock_task._role = None
        mock_task.get_vars.return_value = dict(foo="bar")

        v = VariableManager()
        self.assertEqual(v.get_vars(loader=fake_loader, task=mock_task, use_cache=False).get("foo"), "bar")
开发者ID:ferhaty,项目名称:ansible,代码行数:11,代码来源:test_variable_manager.py

示例7: test_variable_manager_play_vars

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_play_vars(self):
        fake_loader = DictDataLoader({})

        mock_play = MagicMock()
        mock_play.get_vars.return_value = dict(foo="bar")
        mock_play.get_roles.return_value = []
        mock_play.get_vars_files.return_value = []

        v = VariableManager()
        self.assertEqual(v.get_vars(loader=fake_loader, play=mock_play, use_cache=False).get("foo"), "bar")
开发者ID:ferhaty,项目名称:ansible,代码行数:12,代码来源:test_variable_manager.py

示例8: test_basic_manager

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_basic_manager(self):
        fake_loader = DictDataLoader({})

        v = VariableManager()
        vars = v.get_vars(loader=fake_loader, use_cache=False)

        #FIXME: not sure why we remove all and only test playbook_dir
        for remove in ['omit', 'vars', 'ansible_version', 'ansible_check_mode', 'ansible_playbook_python']:
            if remove in vars:
                del vars[remove]

        self.assertEqual(vars, dict(playbook_dir='.'))
开发者ID:2ndQuadrant,项目名称:ansible,代码行数:14,代码来源:test_variable_manager.py

示例9: test_variable_manager_extra_vars

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_extra_vars(self):
        fake_loader = DictDataLoader({})

        extra_vars = dict(a=1, b=2, c=3)
        v = VariableManager()
        v.extra_vars = extra_vars

        vars = v.get_vars(loader=fake_loader, use_cache=False)

        for (key, val) in extra_vars.iteritems():
            self.assertEqual(vars.get(key), val)

        self.assertIsNot(v.extra_vars, extra_vars)
开发者ID:ferhaty,项目名称:ansible,代码行数:15,代码来源:test_variable_manager.py

示例10: test_basic_manager

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_basic_manager(self):
        fake_loader = DictDataLoader({})

        v = VariableManager()
        vars = v.get_vars(loader=fake_loader, use_cache=False)
        if 'omit' in vars:
            del vars['omit']
        if 'vars' in vars:
            del vars['vars']
        if 'ansible_version' in vars:
            del vars['ansible_version']

        self.assertEqual(vars, dict(playbook_dir='.'))
开发者ID:dyim42,项目名称:dfw-meetup-20160312,代码行数:15,代码来源:test_variable_manager.py

示例11: test_manager_play_vars_files

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_manager_play_vars_files(self):
        fake_loader = DictDataLoader({
            "/path/to/somefile.yml": """
               foo: bar
            """
        })

        mock_play = MagicMock()
        mock_play.get_vars.return_value = dict()
        mock_play.get_roles.return_value = []
        mock_play.get_vars_files.return_value = ['/path/to/somefile.yml']

        v = VariableManager(loader=fake_loader)
        self.assertEqual(v.get_vars(play=mock_play), dict(foo="bar"))
开发者ID:conlini,项目名称:frozen-ansible,代码行数:16,代码来源:test_variable_manager.py

示例12: test_variable_manager_play_vars_files

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_variable_manager_play_vars_files(self):
        fake_loader = DictDataLoader({
            "/path/to/somefile.yml": """
               foo: bar
            """
        })

        mock_play = MagicMock()
        mock_play.get_vars.return_value = dict()
        mock_play.get_roles.return_value = []
        mock_play.get_vars_files.return_value = ['/path/to/somefile.yml']

        v = VariableManager()
        self.assertEqual(v.get_vars(loader=fake_loader, play=mock_play, use_cache=False).get("foo"), "bar")
开发者ID:KMK-ONLINE,项目名称:ansible,代码行数:16,代码来源:test_variable_manager.py

示例13: test_basic_manager

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_basic_manager(self):
        v = VariableManager()
        self.assertEqual(v.get_vars(), dict())

        self.assertEqual(
            v._merge_dicts(
                dict(a=1),
                dict(b=2)
            ), dict(a=1, b=2)
        )
        self.assertEqual(
            v._merge_dicts(
                dict(a=1, c=dict(foo='bar')),
                dict(b=2, c=dict(baz='bam'))
            ), dict(a=1, b=2, c=dict(foo='bar', baz='bam'))
        )
开发者ID:conlini,项目名称:frozen-ansible,代码行数:18,代码来源:test_variable_manager.py

示例14: test_basic_manager

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_basic_manager(self):
        fake_loader = DictDataLoader({})

        v = VariableManager()
        vars = v.get_vars(loader=fake_loader, use_cache=False)
        if "omit" in vars:
            del vars["omit"]
        if "vars" in vars:
            del vars["vars"]

        self.assertEqual(vars, dict(playbook_dir="."))

        self.assertEqual(v._merge_dicts(dict(a=1), dict(b=2)), dict(a=1, b=2))
        self.assertEqual(
            v._merge_dicts(dict(a=1, c=dict(foo="bar")), dict(b=2, c=dict(baz="bam"))),
            dict(a=1, b=2, c=dict(foo="bar", baz="bam")),
        )
开发者ID:ferhaty,项目名称:ansible,代码行数:19,代码来源:test_variable_manager.py

示例15: test_manager_group_vars_file

# 需要导入模块: from ansible.vars import VariableManager [as 别名]
# 或者: from ansible.vars.VariableManager import get_vars [as 别名]
    def test_manager_group_vars_file(self):
        fake_loader = DictDataLoader({
            "group_vars/somegroup.yml": """
               foo: bar
            """
        })

        v = VariableManager(loader=fake_loader)
        v.add_group_vars_file("group_vars/somegroup.yml")
        self.assertIn("somegroup", v._group_vars_files)
        self.assertEqual(v._group_vars_files["somegroup"], dict(foo="bar"))

        mock_host = MagicMock()
        mock_host.get_name.return_value = "hostname1"
        mock_host.get_vars.return_value = dict()
        mock_host.get_groups.return_value = ["somegroup"]

        self.assertEqual(v.get_vars(host=mock_host), dict(foo="bar"))
开发者ID:conlini,项目名称:frozen-ansible,代码行数:20,代码来源:test_variable_manager.py


注:本文中的ansible.vars.VariableManager.get_vars方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。