profitbricks_inventory.py 文件源码

python
阅读 17 收藏 0 点赞 0 评论 0

项目:ci 作者: dlang 项目源码 文件源码
def read_settings(self):
        ''' Reads the settings from the profitbricks_inventory.ini file '''

        if six.PY3:
            config = configparser.ConfigParser()
        else:
            config = configparser.SafeConfigParser()

        config.read(os.path.dirname(os.path.realpath(__file__)) + '/profitbricks_inventory.ini')

        # Credentials
        if config.has_option('profitbricks', 'subscription_user'):
            self.subscription_user = config.get('profitbricks', 'subscription_user')
        if config.has_option('profitbricks', 'subscription_password'):
            self.subscription_password = config.get('profitbricks', 'subscription_password')
        if config.has_option('profitbricks', 'subscription_password_file'):
            self.subscription_password_file = config.get('profitbricks', 'subscription_password_file')

        if config.has_option('profitbricks', 'api_url'):
            self.api_url = config.get('profitbricks', 'api_url')

        # Cache
        if config.has_option('profitbricks', 'cache_path'):
            self.cache_path = config.get('profitbricks', 'cache_path')
        if config.has_option('profitbricks', 'cache_max_age'):
            self.cache_max_age = config.getint('profitbricks', 'cache_max_age')

        # Group variables
        if config.has_option('profitbricks', 'vars'):
            self.vars = ast.literal_eval(config.get('profitbricks', 'vars'))

        # Groups
        group_by_options = [
            'group_by_datacenter_id',
            'group_by_location',
            'group_by_availability_zone',
            'group_by_image_name',
            'group_by_licence_type'
        ]
        for option in group_by_options:
            if config.has_option('profitbricks', option):
                setattr(self, option, config.getboolean('profitbricks', option))
            else:
                setattr(self, option, True)

        # Inventory Hostname
        option = 'server_name_as_inventory_hostname'
        if config.has_option('profitbricks', option):
            setattr(self, option, config.getboolean('profitbricks', option))
        else:
            setattr(self, option, False)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号