Example #1
0
 def _validate_network_profiles(self, hostname):
     node_profiles = self.get_network_profiles(hostname)
     utils.validate_list_items_unique(profiles)
     netprofconf = self.confman.get_network_profiles_config_handler()
     netprofiles = netprofconf.get_network_profiles()
     for profile in node_profiles:
         if profile not in netprofiles:
             raise configerror.ConfigError(
                 'Invalid network profile %s specified for host %s' %
                 (profile, hostname))
Example #2
0
 def _validate_service_profiles(self, hostname):
     node_profiles = self.get_service_profiles(hostname)
     utils.validate_list_items_unique(node_profiles)
     service_profiles_lib = profiles.Profiles()
     serviceprofiles = service_profiles_lib.get_service_profiles()
     for profile in node_profiles:
         if profile not in serviceprofiles:
             raise configerror.ConfigError(
                 'Invalid service profile %s specified for host %s' %
                 (profile, hostname))
Example #3
0
    def validate(self):
        hosts = []
        try:
            hosts = self.get_hosts()
        except configerror.ConfigError:
            pass

        if hosts:
            utils.validate_list_items_unique(hosts)

        for host in hosts:
            self._validate_host(host)
Example #4
0
    def _validate_network_profile(self, profile):
        bondinginterfaces = None
        try:
            bondinginterfaces = self.get_profile_bonding_interfaces(profile)
        except configerror.ConfigError:
            pass

        if bondinginterfaces:
            utils.validate_list_items_unique(bondinginterfaces)

            for bond in bondinginterfaces:
                bondedinterfaces = self.get_profile_bonded_interfaces(
                    profile, bond)
                utils.validate_list_items_unique(bondedinterfaces)
                if len(bondedinterfaces) < 2:
                    raise configerror.ConfigError(
                        'Number of bonded interfaces should be at least 2 in %s' % bond)

        mappedinterfaces = self.get_profile_network_mapped_interfaces(profile)

        utils.validate_list_items_unique(mappedinterfaces)

        netconf = self.confman.get_networking_config_handler()
        validnetworks = netconf.get_networks()
        for interface in mappedinterfaces:
            networks = self.get_profile_interface_mapped_networks(
                profile, interface)
            utils.validate_list_items_unique(networks)
            for network in networks:
                if network not in validnetworks:
                    raise configerror.ConfigError(
                        'Network %s is not valid' % network)
Example #5
0
    def _validate_storage_profiles(self, hostname):
        node_storage_profiles = []
        try:
            node_storage_profiles = self.get_storage_profiles(hostname)
        except configerror.ConfigError:
            pass

        if node_storage_profiles:
            utils.validate_list_items_unique(node_storage_profiles)
            storageprofconf = self.confman.get_storage_profiles_config_handler(
            )
            storageprofiles = storageprofconf.get_storage_profiles()
            for profile in node_storage_profiles:
                if profile not in storageprofiles:
                    raise configerror.ConfigError(
                        'Invalid storage profile %s specific for %s' %
                        (profile, hostname))
Example #6
0
    def _validate_performance_profiles(self, hostname):
        node_performance_profiles = []
        try:
            node_performance_profiles = self.get_performance_profiles(hostname)
        except configerror.ConfigError:
            pass

        if node_performance_profiles:
            utils.validate_list_items_unique(node_performance_profiles)
            perfprofconf = self.confman.get_performance_profiles_config_handler(
            )
            perfprofiles = perfprofconf.get_performance_profiles()
            for profile in node_performance_profiles:
                if profile not in perfprofiles:
                    raise configerror.ConfigError(
                        'Invalid performance profile %s specified for host %s'
                        % (profile, hostname))
    def _validate_ntp_servers(self):
        servers = self.get_ntp_servers()
        utils.validate_list_items_unique(servers)

        for server in servers:
            utils.validate_ipv4_address(server)
Example #8
0
 def _validate_network_profiles(self):
     profiles = self.get_network_profiles()
     utils.validate_list_items_unique(profiles)
     for profile in profiles:
         self._validate_network_profile(profile)
 def _validate_performance_profiles(self):
     profiles = self.get_performance_profiles()
     utils.validate_list_items_unique(profiles)
     for profile in profiles:
         self._validate_performance_profile(profile)