Exemple #1
0
class Deployment(object):

    environment = None

    def __init__(self, env_name, host_name, overrides, host_data, timeout,
                 platform):
        self.env_name = env_name
        self.host_name = host_name
        self.overrides = overrides
        self.host_data = host_data
        self.timeout = timeout
        self.platform = platform

    def load(self):
        from batou.environment import Environment

        self.environment = Environment(self.env_name, self.timeout,
                                       self.platform)
        self.environment.deployment = self
        self.environment.load()
        self.environment.overrides = self.overrides
        for hostname, data in self.host_data.items():
            self.environment.hosts[hostname].data.update(data)
        self.environment.configure()

    def deploy(self, root, predict_only):
        root = self.environment.get_root(root, self.host_name)
        root.component.deploy(predict_only)
Exemple #2
0
def test_get_root_raises_keyerror_on_nonassigned_component():
    e = Environment('foo')
    with pytest.raises(KeyError):
        e.get_root('asdf', 'localhost')
Exemple #3
0
def test_get_root_raises_keyerror_on_nonassigned_component():
    e = Environment("foo")
    with pytest.raises(KeyError):
        e.get_root("asdf", Host("localhost", e))