COT.platforms.cisco_csr1000v module

Platform logic for the Cisco CSR1000V virtual router.

class CSR1000V[source]

Bases: COT.platforms.generic.GenericPlatform

Platform-specific logic for Cisco CSR1000V platform.

classmethod controller_type_for_device(device_type)[source]

CSR1000V uses SCSI for hard disks and IDE for CD-ROMs.

Parameters:device_type (str) – ‘harddisk’ or ‘cdrom’
Returns:str – ‘ide’ for CD-ROM, ‘scsi’ for hard disk
classmethod guess_nic_name(nic_number)[source]

GigabitEthernet1, GigabitEthernet2, etc.

Warning

In all current CSR releases, NIC names start at “GigabitEthernet1”. Some early versions started at “GigabitEthernet0” but we don’t support that.

Parameters:nic_number (int) – Nth NIC to name.
Returns:
  • “GigabitEthernet1”
  • “GigabitEthernet2”
  • etc.
classmethod validate_cpu_count(cpus)[source]

CSR1000V supports 1, 2, 4, or 8 CPUs.

Parameters:

cpus (int) – Number of CPUs.

Raises:
  • ValueTooLowError – if cpus is less than 1
  • ValueTooHighError – if cpus is more than 8
  • ValueUnsupportedError – if cpus is an unsupported value between 1 and 8
classmethod validate_memory_amount(mebibytes)[source]

Minimum 2.5 GiB, max 8 GiB.

Parameters:

mebibytes (int) – RAM, in MiB.

Raises:
  • ValueTooLowError – if mebibytes is less than 2560
  • ValueTooHighError – if mebibytes is more than 8192
classmethod validate_nic_count(count)[source]

CSR1000V requires 3 NICs and supports up to 26.

Parameters:

count (int) – Number of NICs.

Raises:
  • ValueTooLowError – if count is less than 3
  • ValueTooHighError – if count is more than 26
classmethod validate_serial_count(count)[source]

CSR1000V supports 0-2 serial ports.

Parameters:

count (int) – Number of serial ports.

Raises:
  • ValueTooLowError – if count is less than 0
  • ValueTooHighError – if count is more than 2
CONFIG_TEXT_FILE = 'iosxe_config.txt'
LITERAL_CLI_STRING = 'ios-config'
PLATFORM_NAME = 'Cisco CSR1000V'
SUPPORTED_NIC_TYPES = ['E1000', 'virtio', 'VMXNET3']