Esempio n. 1
0
    def clean_csv(self):
        csv_string = self.cleaned_data['csv'].strip().lower()
        rows = UnicodeReader(cStringIO.StringIO(csv_string))
        parsed_macs = set()

        for row_number, cols in enumerate(rows, start=1):
            _validate_cols_count(
                8, cols, row_number, 1 if self.assets_enabled else 0
            )
            mac = cols[0].strip()
            _validate_mac(mac, parsed_macs, row_number)
            _validate_deploy_children(mac, row_number)
            parsed_macs.add(mac)
            management_ip = cols[1].strip()
            _validate_management_ip(management_ip, row_number)
            network_name = cols[2].strip()
            if not (is_mac_address_known(mac) and network_name == ''):
                # Allow empty network when the device already exists.
                _validate_network_name(network_name, row_number)
            venture_symbol = cols[3].strip()
            venture_role = cols[4].strip()
            _validate_venture_and_role(
                venture_symbol, venture_role, row_number,
            )
            service = cols[5].strip()
            _validate_service(service, row_number)
            environment = cols[6].strip()
            _validate_environment(environment, row_number)
            preboot = cols[7].strip()
            _validate_preboot(preboot, row_number)
            if self.assets_enabled and len(cols) == 9:
                asset_identity = cols[8].strip()
                _validate_asset_identity(asset_identity, row_number, mac)
        return csv_string
Esempio n. 2
0
 def clean_csv(self):
     csv_string = self.cleaned_data['csv'].strip().lower()
     rows = UnicodeReader(cStringIO.StringIO(csv_string))
     parsed_macs = set()
     for row_number, cols in enumerate(rows, start=1):
         _validate_cols_count(6, cols, row_number)
         mac = cols[0].strip()
         _validate_mac(mac, parsed_macs, row_number)
         _validate_deploy_children(mac, row_number)
         parsed_macs.add(mac)
         management_ip = cols[1].strip()
         _validate_management_ip(management_ip, row_number)
         network_name = cols[2].strip()
         if not (is_mac_address_known(mac) and network_name == ''):
             # Allow empty network when the device already exists.
             _validate_network_name(network_name, row_number)
         venture_symbol = cols[3].strip()
         venture_role = cols[4].strip()
         _validate_venture_and_role(
             venture_symbol,
             venture_role,
             row_number,
         )
         preboot = cols[5].strip()
         _validate_preboot(preboot, row_number)
     return csv_string
Esempio n. 3
0
    def clean_csv(self):
        csv_string = self.cleaned_data['csv'].strip().lower()
        rows = UnicodeReader(cStringIO.StringIO(csv_string))
        parsed_macs = set()

        for row_number, cols in enumerate(rows, start=1):
            _validate_cols_count(8, cols, row_number,
                                 1 if self.assets_enabled else 0)
            mac = cols[0].strip()
            _validate_mac(mac, parsed_macs, row_number)
            _validate_deploy_children(mac, row_number)
            parsed_macs.add(mac)
            management_ip = cols[1].strip()
            _validate_management_ip(management_ip, row_number)
            network_name = cols[2].strip()
            if not (is_mac_address_known(mac) and network_name == ''):
                # Allow empty network when the device already exists.
                _validate_network_name(network_name, row_number)
            venture_symbol = cols[3].strip()
            venture_role = cols[4].strip()
            _validate_venture_and_role(
                venture_symbol,
                venture_role,
                row_number,
            )
            service = cols[5].strip()
            _validate_service(service, row_number)
            environment = cols[6].strip()
            _validate_environment(environment, row_number)
            preboot = cols[7].strip()
            _validate_preboot(preboot, row_number)
            if self.assets_enabled and len(cols) == 9:
                asset_identity = cols[8].strip()
                _validate_asset_identity(asset_identity, row_number, mac)
        return csv_string
Esempio n. 4
0
 def clean_csv(self):
     csv_string = self.cleaned_data['csv'].strip().lower()
     rows = UnicodeReader(cStringIO.StringIO(csv_string))
     parsed_macs = set()
     for row_number, cols in enumerate(rows, start=1):
         _validate_cols_count(6, cols, row_number)
         mac = cols[0].strip()
         _validate_mac(mac, parsed_macs, row_number)
         _validate_deploy_children(mac, row_number)
         parsed_macs.add(mac)
         management_ip = cols[1].strip()
         _validate_management_ip(management_ip, row_number)
         network_name = cols[2].strip()
         if not (is_mac_address_known(mac) and network_name == ''):
             # Allow empty network when the device already exists.
             _validate_network_name(network_name, row_number)
         venture_symbol = cols[3].strip()
         venture_role = cols[4].strip()
         _validate_venture_and_role(
             venture_symbol, venture_role, row_number,
         )
         preboot = cols[5].strip()
         _validate_preboot(preboot, row_number)
     return csv_string