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
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
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