コード例 #1
0
ファイル: config.py プロジェクト: hpcjmart/Openstack
 def _expand_vendor_profile(self, name, cloud, our_cloud):
     # Expand a profile if it exists. 'cloud' is an old confusing name
     # for this.
     profile_name = our_cloud.get('profile', our_cloud.get('cloud', None))
     if profile_name and profile_name != self.envvar_key:
         if 'cloud' in our_cloud:
             warnings.warn(
                 "{0} use the keyword 'cloud' to reference a known "
                 "vendor profile. This has been deprecated in favor of the "
                 "'profile' keyword.".format(self.config_filename))
         vendor_filename, vendor_file = self._load_vendor_file()
         if vendor_file and profile_name in vendor_file['public-clouds']:
             _auth_update(cloud, vendor_file['public-clouds'][profile_name])
         else:
             profile_data = vendors.get_profile(profile_name)
             if profile_data:
                 status = profile_data.pop('status', 'active')
                 message = profile_data.pop('message', '')
                 if status == 'deprecated':
                     warnings.warn(
                         "{profile_name} is deprecated: {message}".format(
                             profile_name=profile_name, message=message))
                 elif status == 'shutdown':
                     raise exceptions.OpenStackConfigException(
                         "{profile_name} references a cloud that no longer"
                         " exists: {message}".format(
                             profile_name=profile_name, message=message))
                 _auth_update(cloud, profile_data)
             else:
                 # Can't find the requested vendor config, go about business
                 warnings.warn("Couldn't find the vendor profile '{0}', for"
                               " the cloud '{1}'".format(
                                   profile_name, name))
コード例 #2
0
ファイル: config.py プロジェクト: dtroyer/os-client-config
 def _expand_vendor_profile(self, name, cloud, our_cloud):
     # Expand a profile if it exists. 'cloud' is an old confusing name
     # for this.
     profile_name = our_cloud.get('profile', our_cloud.get('cloud', None))
     if profile_name and profile_name != self.envvar_key:
         if 'cloud' in our_cloud:
             warnings.warn(
                 "{0} use the keyword 'cloud' to reference a known "
                 "vendor profile. This has been deprecated in favor of the "
                 "'profile' keyword.".format(self.config_filename))
         vendor_filename, vendor_file = self._load_vendor_file()
         if vendor_file and profile_name in vendor_file['public-clouds']:
             _auth_update(cloud, vendor_file['public-clouds'][profile_name])
         else:
             profile_data = vendors.get_profile(profile_name)
             if profile_data:
                 status = profile_data.pop('status', 'active')
                 message = profile_data.pop('message', '')
                 if status == 'deprecated':
                     warnings.warn(
                         "{profile_name} is deprecated: {message}".format(
                             profile_name=profile_name, message=message))
                 elif status == 'shutdown':
                     raise exceptions.OpenStackConfigException(
                         "{profile_name} references a cloud that no longer"
                         " exists: {message}".format(
                             profile_name=profile_name, message=message))
                 _auth_update(cloud, profile_data)
             else:
                 # Can't find the requested vendor config, go about business
                 warnings.warn("Couldn't find the vendor profile '{0}', for"
                               " the cloud '{1}'".format(profile_name,
                                                         name))
コード例 #3
0
ファイル: config.py プロジェクト: switch-ch/os-client-config
    def _get_base_cloud_config(self, name):
        cloud = dict()

        # Only validate cloud name if one was given
        if name and name not in self.cloud_config['clouds']:
            raise exceptions.OpenStackConfigException(
                "Named cloud {name} requested that was not found.".format(
                    name=name))

        our_cloud = self.cloud_config['clouds'].get(name, dict())

        # Get the defaults
        cloud.update(self.defaults)

        # Expand a profile if it exists. 'cloud' is an old confusing name
        # for this.
        profile_name = our_cloud.get('profile', our_cloud.get('cloud', None))
        if profile_name and profile_name != self.envvar_key:
            if 'cloud' in our_cloud:
                warnings.warn(
                    "{0} use the keyword 'cloud' to reference a known "
                    "vendor profile. This has been deprecated in favor of the "
                    "'profile' keyword.".format(self.config_filename))
            vendor_filename, vendor_file = self._load_vendor_file()
            if vendor_file and profile_name in vendor_file['public-clouds']:
                _auth_update(cloud, vendor_file['public-clouds'][profile_name])
            else:
                profile_data = vendors.get_profile(profile_name)
                if profile_data:
                    _auth_update(cloud, profile_data)
                else:
                    # Can't find the requested vendor config, go about business
                    warnings.warn("Couldn't find the vendor profile '{0}', for"
                                  " the cloud '{1}'".format(profile_name,
                                                            name))

        if 'auth' not in cloud:
            cloud['auth'] = dict()

        _auth_update(cloud, our_cloud)
        if 'cloud' in cloud:
            del cloud['cloud']

        return self._fix_backwards_madness(cloud)
コード例 #4
0
 def _expand_vendor_profile(self, name, cloud, our_cloud):
     # Expand a profile if it exists. 'cloud' is an old confusing name
     # for this.
     profile_name = our_cloud.get('profile', our_cloud.get('cloud', None))
     if profile_name and profile_name != self.envvar_key:
         if 'cloud' in our_cloud:
             warnings.warn(
                 "{0} use the keyword 'cloud' to reference a known "
                 "vendor profile. This has been deprecated in favor of the "
                 "'profile' keyword.".format(self.config_filename))
         vendor_filename, vendor_file = self._load_vendor_file()
         if vendor_file and profile_name in vendor_file['public-clouds']:
             _auth_update(cloud, vendor_file['public-clouds'][profile_name])
         else:
             profile_data = vendors.get_profile(profile_name)
             if profile_data:
                 _auth_update(cloud, profile_data)
             else:
                 # Can't find the requested vendor config, go about business
                 warnings.warn("Couldn't find the vendor profile '{0}', for"
                               " the cloud '{1}'".format(profile_name,
                                                         name))
コード例 #5
0
 def _expand_vendor_profile(self, name, cloud, our_cloud):
     # Expand a profile if it exists. 'cloud' is an old confusing name
     # for this.
     profile_name = our_cloud.get('profile', our_cloud.get('cloud', None))
     if profile_name and profile_name != self.envvar_key:
         if 'cloud' in our_cloud:
             warnings.warn(
                 "{0} use the keyword 'cloud' to reference a known "
                 "vendor profile. This has been deprecated in favor of the "
                 "'profile' keyword.".format(self.config_filename))
         vendor_filename, vendor_file = self._load_vendor_file()
         if vendor_file and profile_name in vendor_file['public-clouds']:
             _auth_update(cloud, vendor_file['public-clouds'][profile_name])
         else:
             profile_data = vendors.get_profile(profile_name)
             if profile_data:
                 _auth_update(cloud, profile_data)
             else:
                 # Can't find the requested vendor config, go about business
                 warnings.warn("Couldn't find the vendor profile '{0}', for"
                               " the cloud '{1}'".format(profile_name,
                                                         name))