diff --git a/.github/workflows/nd_validation.yaml b/.github/workflows/nd_validation.yaml index 3714285..1c4fe2a 100644 --- a/.github/workflows/nd_validation.yaml +++ b/.github/workflows/nd_validation.yaml @@ -21,3 +21,4 @@ jobs: with: jsonSchemaFile: validation_schemas/node_definition.json yamlFiles: node-definitions/**/*.yaml + diff --git a/node-definitions/juniper/vJunos-Router/README.MD b/node-definitions/juniper/vJunos-Router/README.MD new file mode 100644 index 0000000..0d4b4e5 --- /dev/null +++ b/node-definitions/juniper/vJunos-Router/README.MD @@ -0,0 +1,11 @@ +# vJUNOS ROUTER +This directory contains the following node definition: + +*`vjunos-router.yaml` - vJUNOS ROUTER +### Image Availability +Image can be downloaded from https://support.juniper.net/support/downloads/?p=vjunos-router + +### Notes +Minimum CML version 2.8.0 + +Tested with vJUNOS ROUTER image version 23.2 diff --git a/node-definitions/juniper/vJunos-Router/vjunos-router.yaml b/node-definitions/juniper/vJunos-Router/vjunos-router.yaml new file mode 100644 index 0000000..57074d4 --- /dev/null +++ b/node-definitions/juniper/vJunos-Router/vjunos-router.yaml @@ -0,0 +1,154 @@ +id: vjunos-router +general: + nature: router + description: vJunos Router + read_only: false +device: + interfaces: + has_loopback_zero: true + loopback: + - lo + management: + - fxp0 + physical: + - fxp0 + - ge-0/0/0 + - ge-0/0/1 + - ge-0/0/2 + - ge-0/0/3 + - ge-0/0/4 + - ge-0/0/5 + - ge-0/0/6 + - ge-0/0/7 + - ge-0/0/8 + - ge-0/0/9 + - ge-0/0/10 + - ge-0/0/11 + - ge-0/0/12 + - ge-0/0/13 + - ge-0/0/14 + - ge-0/0/15 + - ge-0/0/16 + - ge-0/0/17 + - ge-0/0/18 + - ge-0/0/19 + - ge-0/0/20 + - ge-0/0/21 + - ge-0/0/22 + - ge-0/0/23 + - ge-0/0/24 + - ge-0/0/25 + - ge-0/0/26 + - ge-0/0/27 + - ge-0/0/28 + - ge-0/0/29 + - ge-0/0/30 + - ge-0/0/31 + - ge-0/0/32 + serial_ports: 1 + default_count: 4 + min_count: 3 +ui: + description: |- + Juniper vJunos Router + 6 GB RAM (min 5 GB), 4 vCPU + + Works only on bare metal CML instance, or VM with enabled performance counters + visible: true + label_prefix: vjunos-router- + icon: router + label: vJunos Router +sim: + linux_native: + libvirt_domain_driver: kvm + driver: server + ram: 6144 + cpus: 4 + cpu_limit: 100 + disk_driver: virtio + nic_driver: virtio + parameters: + smbios.system.product: VM-VMX + smbios.system.family: lab +boot: + timeout: 600 + uses_regex: true + completed: + - 'login:' +inherited: + image: + ram: true + cpus: true + cpu_limit: true + data_volume: true + boot_disk_size: true + node: + ram: true + cpus: true + cpu_limit: true + data_volume: true + boot_disk_size: true +configuration: + generator: + driver: null + provisioning: + volume_name: vmm-data + media_type: fat + files: + - name: config/juniper.conf + editable: true + content: |- + system { + host-name inserhostname-here; + root-authentication { + ## ciscoCML + encrypted-password "$6$vhzKhjZL$wSDZ2NB0oyRfnnCz7B.4iyWzNFxy4NBeEm3vtMA5fy5EVCTLTgqRAc.cXz1H9UZ.dtynRzO/HRtO7KW1nwfE8/"; ## SECRET-DATA + } + syslog { + user * { + any emergency; + } + file messages { + any notice; + authorization info; + } + file interactive-commands { + interactive-commands any; + } + } + processes { + dhcp-service { + traceoptions { + file dhcp_logfile size 10m; + level all; + flag packet; + } + } + } + } + interfaces { + fxp0 { + unit 0 { + family inet { + dhcp { + } + } + } + } + } + - name: cml-customizer.sh + editable: false + content: |- + #!/bin/bash + tar czf vmm-config.tgz config/juniper.conf + rm -rf config + - name: cml-partition.cfg + editable: false + content: 'off' +pyats: + os: junos + use_in_testbed: true + config_extract_command: show configuration + username: root + password: ciscoCML +schema_version: 0.0.1 diff --git a/node-definitions/juniper/vJunos-Switch/README.MD b/node-definitions/juniper/vJunos-Switch/README.MD new file mode 100644 index 0000000..3aabe4c --- /dev/null +++ b/node-definitions/juniper/vJunos-Switch/README.MD @@ -0,0 +1,11 @@ +# vJUNOS SWITCH +This directory contains the following node definition: + +*`vjunos-switch.yaml` - vJUNOS SWITCH +### Image Availability +Image can be downloaded from https://support.juniper.net/support/downloads/?p=vjunos-switch + +### Notes +Minimum CML version 2.8. + +Tested with vJUNOS SWITCH image version 23.2 diff --git a/node-definitions/juniper/vJunos-Switch/vjunos-switch.yaml b/node-definitions/juniper/vJunos-Switch/vjunos-switch.yaml new file mode 100644 index 0000000..9ba96c6 --- /dev/null +++ b/node-definitions/juniper/vJunos-Switch/vjunos-switch.yaml @@ -0,0 +1,154 @@ +id: vjunos-switch +general: + nature: switch + description: vJunos Switch + read_only: false +device: + interfaces: + has_loopback_zero: true + loopback: + - lo + management: + - fxp0 + physical: + - fxp0 + - ge-0/0/0 + - ge-0/0/1 + - ge-0/0/2 + - ge-0/0/3 + - ge-0/0/4 + - ge-0/0/5 + - ge-0/0/6 + - ge-0/0/7 + - ge-0/0/8 + - ge-0/0/9 + - ge-0/0/10 + - ge-0/0/11 + - ge-0/0/12 + - ge-0/0/13 + - ge-0/0/14 + - ge-0/0/15 + - ge-0/0/16 + - ge-0/0/17 + - ge-0/0/18 + - ge-0/0/19 + - ge-0/0/20 + - ge-0/0/21 + - ge-0/0/22 + - ge-0/0/23 + - ge-0/0/24 + - ge-0/0/25 + - ge-0/0/26 + - ge-0/0/27 + - ge-0/0/28 + - ge-0/0/29 + - ge-0/0/30 + - ge-0/0/31 + - ge-0/0/32 + serial_ports: 1 + default_count: 4 + min_count: 3 +ui: + description: |- + Juniper vJunos Switch + 6 GB RAM (min 5 GB), 4 vCPU + + Works only on bare metal CML instance, or VM with enabled performance counters + visible: true + label_prefix: vjunos-switch- + icon: switch + label: vJunos Switch +sim: + linux_native: + libvirt_domain_driver: kvm + driver: server + ram: 6144 + cpus: 4 + cpu_limit: 100 + disk_driver: virtio + nic_driver: virtio + parameters: + smbios.system.product: VM-VEX + smbios.system.family: lab +boot: + timeout: 600 + uses_regex: true + completed: + - 'login:' +inherited: + image: + ram: true + cpus: true + cpu_limit: true + data_volume: true + boot_disk_size: true + node: + ram: true + cpus: true + cpu_limit: true + data_volume: true + boot_disk_size: true +configuration: + generator: + driver: null + provisioning: + volume_name: vmm-data + media_type: fat + files: + - name: config/juniper.conf + editable: true + content: |- + system { + host-name inserhostname-here; + root-authentication { + ## ciscoCML + encrypted-password "$6$vhzKhjZL$wSDZ2NB0oyRfnnCz7B.4iyWzNFxy4NBeEm3vtMA5fy5EVCTLTgqRAc.cXz1H9UZ.dtynRzO/HRtO7KW1nwfE8/"; ## SECRET-DATA + } + syslog { + user * { + any emergency; + } + file messages { + any notice; + authorization info; + } + file interactive-commands { + interactive-commands any; + } + } + processes { + dhcp-service { + traceoptions { + file dhcp_logfile size 10m; + level all; + flag packet; + } + } + } + } + interfaces { + fxp0 { + unit 0 { + family inet { + dhcp { + } + } + } + } + } + - name: cml-customizer.sh + editable: false + content: |- + #!/bin/bash + tar czf vmm-config.tgz config/juniper.conf + rm -rf config + - name: cml-partition.cfg + editable: false + content: 'off' +pyats: + os: junos + use_in_testbed: true + config_extract_command: show configuration + username: root + password: ciscoCML +schema_version: 0.0.1