blob: 1a896166ec4617f6db4f413d98ee43602d73f26e [file] [log] [blame]
Dennis Dmitriev010f4cd2016-11-01 20:43:51 +02001# Copyright 2016 Mirantis, Inc.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
15class SaltManager(object):
16 """docstring for SaltManager"""
17
18 __config = None
19 __underlay = None
20
21 def __init__(self, config, underlay):
22 self.__config = config
23 self.__underlay = underlay
24
25
26 super(SaltManager, self).__init__()
27
28 def install(self, commands):
29 if self.__config.salt.salt_master_host == '0.0.0.0':
30 # Temporary workaround. Underlay should be extended with roles
31 salt_nodes = self.__underlay.node_names()
32 self.__config.salt.salt_master_host = \
33 self.__underlay.host_by_node_name(salt_nodes[0])
34
Dennis Dmitriev9cc4ca32016-11-03 13:50:45 +020035 self.__underlay.execute_commands(commands=commands,
36 label="Install and configure salt")