feat(pxe): Nvidia GRC 97/41697/2 oper-241014
authorPeter Mikus <[email protected]>
Wed, 9 Oct 2024 04:33:03 +0000 (06:33 +0200)
committerPeter Mikus <[email protected]>
Wed, 9 Oct 2024 05:54:15 +0000 (05:54 +0000)
Signed-off-by: Peter Mikus <[email protected]>
Change-Id: I41af1e40e66e5a429a274a6e7af40986273f1210

19 files changed:
fdio.infra.ansible/inventories/lf_inventory/hosts
fdio.infra.ansible/roles/calibration/defaults/main.yaml
fdio.infra.ansible/roles/calibration/tasks/aarch64.yaml
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-alt.sh [deleted file]
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-default.sh [deleted file]
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-spr.sh [deleted file]
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-tx2.sh [deleted file]
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.service [deleted file]
fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.sh [deleted file]
fdio.infra.ansible/roles/vpp_device/handlers/main.yaml [deleted file]
fdio.infra.ansible/roles/vpp_device/tasks/main.yaml [deleted file]
fdio.infra.ansible/site.yaml
fdio.infra.ansible/vpp_device.yaml [deleted file]
fdio.infra/pxe/docker-dnsmasq/Dockerfile
fdio.infra/pxe/docker-dnsmasq/etc/dnsmasq.conf
fdio.infra/pxe/docker-dnsmasq/tftpboot/grub/grub.cfg-6e:a1:6b:60:97:74 [new file with mode: 0644]
fdio.infra/pxe/docker-nginx/Dockerfile
fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/meta-data [new file with mode: 0644]
fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/user-data [new file with mode: 0644]

index c5fe4a5..137b79b 100644 (file)
@@ -40,12 +40,6 @@ all:
         10.30.51.93: #s93-t39-sut1 - snowridge
         10.30.51.94: #s94-t39-sut2 - snowridge
         10.32.8.24: #s60-t210-sut1 - epyc
-    vpp_device:
-      hosts:
-        10.30.51.30: #s30-t15-sut1 - sapphirerapids
-        10.30.51.31: #s31-t16-sut1 - sapphirerapids
-        10.30.51.70: #s70-t13-sut1 - altra
-        10.30.51.71: #s71-t14-sut1 - altra
     nomad:
       hosts:
         10.30.51.21: #s21-nomad - sapphirerapids
@@ -56,8 +50,12 @@ all:
         10.30.51.26: #s26-nomad - skylake
         10.30.51.27: #s27-nomad - skylake
         10.30.51.28: #s28-nomad - skylake
+        10.30.51.30: #s30-nomad - sapphirerapids
+        10.30.51.31: #s31-nomad - sapphirerapids
         10.30.51.50: #s50-nomad - skylake
         10.30.51.51: #s51-nomad - skylake
+        10.30.51.70: #s70-nomad - altra
+        10.30.51.71: #s71-nomad - altra
         10.30.51.91: #s58-nomad - neoverse n1
         10.30.51.92: #s59-nomad - neoverse n1
     dev:
index 302f6d9..28cecf2 100644 (file)
@@ -1,5 +1,5 @@
 ---
-# file: roles/calibration/defaults/main.yaml
+# file: defaults/main.yaml
 
 # Packages to install.
 packages: "{{ packages_base + packages_by_distro[ansible_distribution|lower][ansible_distribution_release] + packages_by_arch[ansible_machine] }}"
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-alt.sh b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-alt.sh
deleted file mode 100644 (file)
index cd04d61..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2023 PANTHEON.tech and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Add QLogic Corp. FastLinQ QL41000 Series 10/25/40/50GbE Controller to
-# blacklist.
-PCI_BLACKLIST=($(lspci -Dmmd ':8070:0200' | cut -f1 -d' '))
-# Add I350 Gigabit Network Connection 1521 to blacklist.
-PCI_BLACKLIST+=($(lspci -Dmmd ':1521:0200' | cut -f1 -d' '))
-# Add MT27800 Family [ConnectX-5] 1017 to blacklist.
-PCI_BLACKLIST+=($(lspci -Dmmd ':1017:0200' | cut -f1 -d' '))
-
-# Add Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+ to whitelist.
-PCI_WHITELIST=($(lspci -Dmmd ':1583:0200' | cut -f1 -d' '))
-# Add MT2892 Family [ConnectX-6 Dx] 101d to whitelist.
-PCI_WHITELIST+=($(lspci -Dmmd ':101d:0200' | cut -f1 -d' '))
-
-# See http://pci-ids.ucw.cz/v2.2/pci.ids for more info.
-
-declare -A PF_INDICES
-# Intel NICs
-PF_INDICES["0000:01:00.0"]=0
-PF_INDICES["0000:01:00.1"]=1
-PF_INDICES["0003:02:00.0"]=0
-PF_INDICES["0003:02:00.1"]=1
-# Mellanox CX6
-PF_INDICES["0001:01:00.0"]=2
-PF_INDICES["0001:01:00.1"]=2
\ No newline at end of file
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-default.sh b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-default.sh
deleted file mode 100644 (file)
index 91c93ab..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Add Intel Corporation Ethernet Controller 10G X550T to blacklist.
-PCI_BLACKLIST=($(lspci -Dmmd ':1563:0200' | cut -f1 -d' '))
-
-# Add Intel Corporation Ethernet Controller X710 for 10GbE SFP+ to whitelist.
-PCI_WHITELIST=($(lspci -Dmmd ':1572:0200' | cut -f1 -d' '))
-# Add Intel Corporation Ethernet Controller E810-C for 100GbE QSFP to whitelist.
-PCI_WHITELIST+=($(lspci -Dmmd ':1592:0200' | cut -f1 -d' '))
-
-# See http://pci-ids.ucw.cz/v2.2/pci.ids for more info.
-
-declare -A PF_INDICES
-# Intel NICs
-PF_INDICES["0000:18:00.0"]=0
-PF_INDICES["0000:18:00.1"]=1
-PF_INDICES["0000:18:00.2"]=2
-PF_INDICES["0000:18:00.3"]=3
-PF_INDICES["0000:86:00.0"]=4
-PF_INDICES["0000:3b:00.0"]=0
-PF_INDICES["0000:3b:00.1"]=1
-PF_INDICES["0000:3b:00.2"]=2
-PF_INDICES["0000:3b:00.3"]=3
-PF_INDICES["0000:af:00.0"]=4
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-spr.sh b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-spr.sh
deleted file mode 100644 (file)
index 74593b2..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2024 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Add Intel Corporation Ethernet Controller 10G X550T to blacklist.
-PCI_BLACKLIST=($(lspci -Dmmd ':1563:0200' | cut -f1 -d' '))
-
-# Add Intel Corporation Ethernet Controller X710 for 10GbE SFP+ to whitelist.
-PCI_WHITELIST=($(lspci -Dmmd ':1572:0200' | cut -f1 -d' '))
-# Add Intel Corporation Ethernet Controller E810-C for 100GbE QSFP to whitelist.
-PCI_WHITELIST+=($(lspci -Dmmd ':1592:0200' | cut -f1 -d' '))
-
-# See http://pci-ids.ucw.cz/v2.2/pci.ids for more info.
-
-declare -A PF_INDICES
-# Intel NICs
-PF_INDICES["0000:2a:00.0"]=0
-PF_INDICES["0000:2a:00.1"]=1
-PF_INDICES["0000:2a:00.2"]=2
-PF_INDICES["0000:2a:00.3"]=3
-PF_INDICES["0000:bd:00.0"]=4
-PF_INDICES["0000:3d:00.0"]=0
-PF_INDICES["0000:3d:00.1"]=1
-PF_INDICES["0000:3d:00.2"]=2
-PF_INDICES["0000:3d:00.3"]=3
-PF_INDICES["0000:e1:00.0"]=4
-
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-tx2.sh b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs-tx2.sh
deleted file mode 100644 (file)
index 6c56752..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2021 PANTHEON.tech and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Add QLogic Corp. FastLinQ QL41000 Series 10/25/40/50GbE Controller to
-# blacklist.
-PCI_BLACKLIST=($(lspci -Dmmd ':8070:0200' | cut -f1 -d' '))
-# Add I350 Gigabit Network Connection 1521 to blacklist.
-PCI_BLACKLIST+=($(lspci -Dmmd ':1521:0200' | cut -f1 -d' '))
-# Add MT27800 Family [ConnectX-5] 1017 to blacklist.
-PCI_BLACKLIST+=($(lspci -Dmmd ':1017:0200' | cut -f1 -d' '))
-
-# Add Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+ to whitelist.
-PCI_WHITELIST=($(lspci -Dmmd ':1583:0200' | cut -f1 -d' '))
-
-# See http://pci-ids.ucw.cz/v2.2/pci.ids for more info.
-
-declare -A PF_INDICES
-# Intel NICs
-PF_INDICES["0000:05:00.0"]=0
-PF_INDICES["0000:05:00.1"]=1
-PF_INDICES["0000:91:00.0"]=0
-PF_INDICES["0000:91:00.1"]=1
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.service b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.service
deleted file mode 100644 (file)
index 996792a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=CSIT Initialize SR-IOV VFs
-After=network.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=True
-ExecStart=/usr/local/bin/csit-initialize-vfs.sh start
-ExecStop=/usr/local/bin/csit-initialize-vfs.sh stop
-
-[Install]
-WantedBy=default.target
diff --git a/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.sh b/fdio.infra.ansible/roles/vpp_device/files/csit-initialize-vfs.sh
deleted file mode 100644 (file)
index afa84ae..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright (c) 2021 Cisco and/or its affiliates.
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# CSIT SRIOV VF initialization and isolation.
-
-set -euo pipefail
-
-SCRIPT_DIR="$(dirname $(readlink -e "${BASH_SOURCE[0]}"))"
-source "${SCRIPT_DIR}/csit-initialize-vfs-data.sh"
-
-# Initilize whitelisted NICs with maximum number of VFs.
-pci_idx=0
-for pci_addr in ${PCI_WHITELIST[@]}; do
-    if ! [[ ${PCI_BLACKLIST[*]} =~ "${pci_addr}" ]]; then
-        pci_path="/sys/bus/pci/devices/${pci_addr}"
-        # SR-IOV initialization
-        case "${1:-start}" in
-            "start" )
-                if [ $(< "${pci_path}"/sriov_totalvfs) -gt 128 ]
-                then
-                    sriov_totalvfs=128
-                else
-                    sriov_totalvfs=$(< "${pci_path}"/sriov_totalvfs)
-                fi
-                ;;
-            "stop" )
-                sriov_totalvfs=0
-                ;;
-        esac
-        echo ${sriov_totalvfs} > "${pci_path}"/sriov_numvfs
-        # SR-IOV 802.1Q isolation
-        case "${1:-start}" in
-            "start" )
-                pf=$(basename "${pci_path}"/net/*)
-                for vf in $(seq "${sriov_totalvfs}"); do
-                    # PCI address index in array (pairing siblings).
-                    if [[ -n ${PF_INDICES[@]} ]]
-                    then
-                        vlan_pf_idx=${PF_INDICES[$pci_addr]}
-                    else
-                        vlan_pf_idx=$(( pci_idx % (${#PCI_WHITELIST[@]} / 2) ))
-                    fi
-                    # 802.1Q base offset.
-                    vlan_bs_off=1100
-                    # 802.1Q PF PCI address offset.
-                    vlan_pf_off=$(( vlan_pf_idx * 100 + vlan_bs_off ))
-                    # 802.1Q VF PCI address offset.
-                    vlan_vf_off=$(( vlan_pf_off + vf - 1 ))
-                    # VLAN string.
-                    vlan_str="vlan ${vlan_vf_off}"
-                    # MAC string.
-                    mac5="$(printf '%x' ${pci_idx})"
-                    mac6="$(printf '%x' $(( vf - 1 )))"
-                    mac_str="mac ba:dc:0f:fe:${mac5}:${mac6}"
-                    # Set 802.1Q VLAN id and MAC address
-                    ip link set ${pf} vf $(( vf - 1 )) ${mac_str} ${vlan_str}
-                    ip link set ${pf} vf $(( vf - 1 )) trust on
-                    ip link set ${pf} vf $(( vf - 1 )) spoof off
-                    sleep .5
-                done
-                pci_idx=$(( pci_idx + 1 ))
-                ;;
-        esac
-    fi
-done
diff --git a/fdio.infra.ansible/roles/vpp_device/handlers/main.yaml b/fdio.infra.ansible/roles/vpp_device/handlers/main.yaml
deleted file mode 100644 (file)
index 3ac80cc..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
----
-# file: handlers/main.yaml
-
-- name: "Start csit-initialize-vfs.service"
-  ansible.builtin.systemd:
-    enabled: true
-    state: "started"
-    name: "csit-initialize-vfs.service"
-  tags:
-    - start-vf-service
-
-- name: "Update GRUB"
-  ansible.builtin.command: "update-grub"
-  tags:
-    - update-grub
-
-- name: "Reboot server"
-  ansible.builtin.reboot:
-    reboot_timeout: 3600
-  tags:
-    - reboot-server
diff --git a/fdio.infra.ansible/roles/vpp_device/tasks/main.yaml b/fdio.infra.ansible/roles/vpp_device/tasks/main.yaml
deleted file mode 100644 (file)
index 9191645..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
----
-# file: tasks/main.yaml
-
-- name: "Load Kernel Modules On Startup (vfio-pci)"
-  ansible.builtin.lineinfile:
-    path: "/etc/modules"
-    state: "present"
-    line: "{{ item }}"
-  with_items:
-    - "vfio-pci"
-  tags:
-    - load-kernel-modules
-
-- name: "Disable IPv6 Router Advertisement"
-  ansible.builtin.sysctl:
-    name: "net.ipv6.conf.default.accept_ra"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv6 MLDv1 interval"
-  ansible.builtin.sysctl:
-    name: "net.ipv6.conf.default.mldv1_unsolicited_report_interval"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv6 MLDv2 interval"
-  ansible.builtin.sysctl:
-    name: "net.ipv6.conf.default.mldv2_unsolicited_report_interval"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv6 Autoconf"
-  ansible.builtin.sysctl:
-    name: "net.ipv6.conf.default.autoconf"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv6 MC Forwarding"
-  ansible.builtin.sysctl:
-    name: "net.ipv6.conf.default.mc_forwarding"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv4 IGMPv2 interval"
-  ansible.builtin.sysctl:
-    name: "net.ipv4.conf.default.igmpv2_unsolicited_report_interval"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Disable IPv4 IGMPv3 interval"
-  ansible.builtin.sysctl:
-    name: "net.ipv4.conf.default.igmpv3_unsolicited_report_interval"
-    value: "0"
-    state: "present"
-    sysctl_file: "/etc/sysctl.d/90-csit.conf"
-    reload: "yes"
-  tags:
-    - set-sysctl
-
-- name: "Copy csit-initialize-vfs.sh"
-  ansible.builtin.copy:
-    src: "files/csit-initialize-vfs.sh"
-    dest: "/usr/local/bin/"
-    owner: "root"
-    group: "root"
-    mode: 0744
-  tags:
-    - copy-vf-script
-
-- name: "Copy csit-initialize-vfs-data.sh"
-  ansible.builtin.copy:
-    src: "files/{{ vfs_data_file }}"
-    dest: "/usr/local/bin/csit-initialize-vfs-data.sh"
-    owner: "root"
-    group: "root"
-    mode: 0744
-  tags: copy-vf-data-script
-  when:
-    - vfs_data_file is defined
-
-- name: "Copy Default csit-initialize-vfs-data.sh"
-  ansible.builtin.copy:
-    src: "files/csit-initialize-vfs-default.sh"
-    dest: "/usr/local/bin/csit-initialize-vfs-data.sh"
-    owner: "root"
-    group: "root"
-    mode: 0744
-  tags: copy-vf-data-script
-  when:
-    - vfs_data_file is not defined
-
-- name: "Start csit-initialize-vfs.service"
-  ansible.builtin.copy:
-    src: "files/csit-initialize-vfs.service"
-    dest: "/etc/systemd/system/"
-    owner: "root"
-    group: "root"
-    mode: 0644
-  notify:
-    - "Start csit-initialize-vfs.service"
-  tags:
-    - start-vf-service
-
-- ansible.builtin.meta: "flush_handlers"
-
-- name: "Set Hugepages In GRUB"
-  ansible.builtin.lineinfile:
-    path: "/etc/default/grub"
-    state: "present"
-    regexp: "^GRUB_CMDLINE_LINUX="
-    line: "GRUB_CMDLINE_LINUX=\"{% for key, value in grub.items() %}{% if value %}{{key}}={{value}} {% else %}{{key}} {% endif %}{% endfor %}\""
-  notify:
-    - "Update GRUB"
-  tags:
-    - set-grub
index 45a0903..eee7940 100644 (file)
     - sut_azure
     - sut_openstasck
 
-- import_playbook: vpp_device.yaml
-  tags:
-    - vpp-device
-
 - import_playbook: nomad.yaml
   tags:
     - nomad
diff --git a/fdio.infra.ansible/vpp_device.yaml b/fdio.infra.ansible/vpp_device.yaml
deleted file mode 100644 (file)
index 61c8016..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
----
-# file: vpp_device.yaml
-
-- hosts: vpp_device
-  remote_user: localadmin
-  become: true
-  become_user: root
-  gather_facts: false
-  pre_tasks:
-    - name: Gathering Facts
-      gather_facts:
-      tags:
-        - always
-  roles:
-    - role: user_add
-      tags: user_add
-    - role: baremetal
-      tags: baremetal
-    - role: common
-      tags: common
-#    - role: kernel
-#      tags: kernel
-    - role: intel
-      tags: intel
-    - role: mellanox
-      tags: mellanox
-    - role: docker
-      tags: docker
-    - role: docker_images
-      tags: docker_images
-    - role: nomad
-      tags: nomad
-    - role: consul
-      tags: consul
-    - role: prometheus_exporter
-      tags: prometheus_exporter
-    - role: jenkins_job_health_exporter
-      tags: jenkins_job_health_exporter
-    - role: vpp_device
-      tags: vpp_device
-    - role: kernel_vm
-      tags: kernel_vm
-    - role: cleanup
-      tags: cleanup
index 8b2cc2b..7ed5265 100644 (file)
@@ -10,8 +10,8 @@ RUN apt update \
  && mkdir -p /var/lib/tftpboot/casper/ubuntu-noble-amd64/ \
  && mkdir -p /var/lib/tftpboot/casper/ubuntu-noble-arm64/
 
-ENV ISO_NOBLE_AMD64=https://releases.ubuntu.com/releases/noble/ubuntu-24.04-live-server-amd64.iso
-ENV ISO_NOBLE_ARM64=https://cdimage.ubuntu.com/releases/noble/release/ubuntu-24.04-live-server-arm64.iso
+ENV ISO_NOBLE_AMD64=https://releases.ubuntu.com/releases/noble/ubuntu-24.04.1-live-server-amd64.iso
+ENV ISO_NOBLE_ARM64=https://cdimage.ubuntu.com/releases/noble/release/ubuntu-24.04.1-live-server-arm64.iso
 ENV EFI_NOBLE_AMD64=http://archive.ubuntu.com/ubuntu/dists/jammy/main/uefi/grub2-amd64/current/grubnetx64.efi.signed
 ENV EFI_NOBLE_ARM64=http://ports.ubuntu.com/ubuntu-ports/dists/jammy/main/uefi/grub2-arm64/current/grubnetaa64.efi.signed
 
index 0676560..44e01a5 100755 (executable)
@@ -31,11 +31,17 @@ dhcp-option=yul1_1,option:dns-server,1.1.1.1
 dhcp-option=yul1_1,option:dns-server,8.8.8.8
 
 # DHCP ranges for yul1_2.
-dhcp-range=yul1_2,10.32.8.18,10.32.8.25,255.255.255.0,infinite
+dhcp-range=yul1_2,10.32.8.24,10.32.8.25,255.255.255.0,infinite
 dhcp-option=yul1_2,option:router,10.32.8.1
 dhcp-option=yul1_2,option:dns-server,1.1.1.1
 dhcp-option=yul1_2,option:dns-server,8.8.8.8
 
+# DHCP ranges for yul1_1_ipmi.
+dhcp-range=yul1_2,10.30.50.36,10.30.50.36,255.255.255.0,infinite
+dhcp-option=yul1_2,option:router,10.30.50.1
+dhcp-option=yul1_2,option:dns-server,1.1.1.1
+dhcp-option=yul1_2,option:dns-server,8.8.8.8
+
 # Hosts DHCP settings yul1_1 subnet.
 dhcp-host=7c:c2:55:55:c0:74,10.30.51.21,s21-nomad,infinite # eno1               SPR
 dhcp-host=7c:c2:55:55:c0:7a,10.30.51.22,s22-nomad,infinite # eno1               SPR
@@ -51,7 +57,7 @@ dhcp-host=3c:ec:ef:d9:dd:6b,10.30.51.32,s32-t31-sut1,infinite # eno2
 dhcp-host=3c:ec:ef:d9:de:27,10.30.51.33,s33-t31-sut2,infinite # eno2            ICXD
 dhcp-host=3c:ec:ef:d9:dd:77,10.30.51.34,s34-t32-sut1,infinite # eno2            ICXD
 dhcp-host=3c:ec:ef:d9:dd:eb,10.30.51.35,s35-t32-sut2,infinite # eno2            ICXD
-dhcp-host=ac:1f:6b:ac:d7:ba,10.30.51.36,s36-t27-sut1,infinite # eno1            GRC
+dhcp-host=6e:a1:6b:60:97:74,10.30.51.36,s36-t27-sut1,infinite # eno1            GRC
 dhcp-host=3c:ec:ef:b9:cc:44,10.30.51.37,s37-t27-tg1,infinite # eno1             ICX
 dhcp-host=40:8d:5c:e7:b2:6e,10.30.51.38,fdio-marvell-dev,infinite # enP2p1s0v0  ARM-DEV
 dhcp-host=ac:1f:6b:8a:8c:76,10.30.51.50,s50-nomad,infinite # eno1               HST
@@ -92,3 +98,5 @@ dhcp-host=a4:bf:01:55:af:5e,10.30.51.94,s94-t39-sut2,infinite # enp4s0
 # Hosts DHCP settings yul1_2 subnet.
 dhcp-host=3c:ec:ef:43:a3:ba,10.32.8.24,s60-t210-sut1,infinite # eno1np0         ZN2
 dhcp-host=3c:ec:ef:46:34:e8,10.32.8.25,s61-t210-tg1,infinite # eno1np0          ZN2
+# Hosts DHCP settings yul1_1_ipmi subnet.
+dhcp-host=3c:6d:66:05:55:d8,10.30.50.36,s36-t27-sut1,infinite # eth1            GRC
diff --git a/fdio.infra/pxe/docker-dnsmasq/tftpboot/grub/grub.cfg-6e:a1:6b:60:97:74 b/fdio.infra/pxe/docker-dnsmasq/tftpboot/grub/grub.cfg-6e:a1:6b:60:97:74
new file mode 100644 (file)
index 0000000..526c7e9
--- /dev/null
@@ -0,0 +1,4 @@
+menuentry "Install s36-t27-sut1" {
+    linux    /casper/ubuntu-noble-arm64/vmlinuz ip=:::::eno1:dhcp url=http://10.30.51.24:8081/ubuntu_noble_arm64/ubuntu-24.04.1-live-server-arm64 autoinstall ds=nocloud-net\;s=http://10.30.51.24:8081/ubuntu_noble_arm64/6e:a1:6b:60:97:74/ ---
+    initrd   /casper/ubuntu-noble-arm64/initrd
+}
\ No newline at end of file
index b71d4d7..21cb3b8 100644 (file)
@@ -6,12 +6,12 @@ LABEL Version="2.0"
 RUN apt update \
  && apt install -y wget
 
-ENV ISO_NOBLE_AMD64=https://releases.ubuntu.com/releases/noble/ubuntu-24.04-live-server-amd64.iso
-ENV ISO_NOBLE_ARM64=https://cdimage.ubuntu.com/releases/noble/release/ubuntu-24.04-live-server-arm64.iso
+ENV ISO_NOBLE_AMD64=https://releases.ubuntu.com/releases/noble/ubuntu-24.04.1-live-server-amd64.iso
+ENV ISO_NOBLE_ARM64=https://cdimage.ubuntu.com/releases/noble/release/ubuntu-24.04.1-live-server-arm64.iso
 
 RUN echo "Preparing ISO Pre-cache" \
- && wget $ISO_NOBLE_AMD64 -O /ubuntu-24.04-live-server-amd64.iso \
- && wget $ISO_NOBLE_ARM64 -O /ubuntu-24.04-live-server-arm64.iso
+ && wget $ISO_NOBLE_AMD64 -O /ubuntu-24.04.1-live-server-amd64.iso \
+ && wget $ISO_NOBLE_ARM64 -O /ubuntu-24.04.1-live-server-arm64.iso
 
 
 FROM nginx:stable-alpine
@@ -25,7 +25,7 @@ ENV NGINX_NOBLE_ARM64=/usr/share/nginx/html/ubuntu_noble_arm64/
 RUN mkdir -p $NGINX_NOBLE_AMD64 \
  && mkdir -p $NGINX_NOBLE_ARM64
 
-COPY --from=ubuntu_noble /ubuntu-24.04-live-server-amd64.iso $NGINX_NOBLE_AMD64/ubuntu-24.04-live-server-amd64.iso
-COPY --from=ubuntu_noble /ubuntu-24.04-live-server-arm64.iso $NGINX_NOBLE_ARM64/ubuntu-24.04-live-server-arm64.iso
+COPY --from=ubuntu_noble /ubuntu-24.04.1-live-server-amd64.iso $NGINX_NOBLE_AMD64/ubuntu-24.04.1-live-server-amd64.iso
+COPY --from=ubuntu_noble /ubuntu-24.04.1-live-server-arm64.iso $NGINX_NOBLE_ARM64/ubuntu-24.04.1-live-server-arm64.iso
 
 COPY html/ /usr/share/nginx/html/
diff --git a/fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/meta-data b/fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/meta-data
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/user-data b/fdio.infra/pxe/docker-nginx/html/ubuntu_noble_arm64/6e:a1:6b:60:97:74/user-data
new file mode 100644 (file)
index 0000000..974c3b2
--- /dev/null
@@ -0,0 +1,85 @@
+#cloud-config
+autoinstall:
+  version: 1
+  apt:
+    geoip: true
+    preserve_sources_list: false
+    primary:
+    - arches: [amd64, i386]
+      uri: http://ca.archive.ubuntu.com/ubuntu
+    - arches: [default]
+      uri: http://ports.ubuntu.com/ubuntu-ports
+  identity:
+    hostname: s36-t27-sut1
+    password: $6$Y62lhMGJD8YNzmJn$H4DSqjrwFp5WN3tOvIrF.g/G2duOV76zXHAmaA/RU8jfT8H8sDumLQe/Q.EmI5pjPv7dzgI8j9BQPWes7efBK0
+    realname: testuser
+    username: testuser
+  kernel:
+    package: linux-nvidia-64k-hwe-24.04
+  keyboard:
+    layout: us
+    toggle: null
+    variant: ''
+  locale: en_US.UTF-8
+  network:
+    ethernets:
+      eno1:
+        addresses: [ 10.30.51.36/24 ]
+        dhcp4: false
+        gateway4: 10.30.51.1
+        nameservers:
+          addresses: [ 1.1.1.1, 8.8.8.8 ]
+    version: 2
+  packages:
+    - python3
+  refresh-installer:
+    update: no
+  ssh:
+    allow-pw: true
+    authorized-keys: []
+    install-server: true
+  storage:
+    config:
+    - grub_device: false
+      id: disk-nvme0n1
+      path: /dev/nvme0n1
+      ptable: gpt
+      preserve: false
+      type: disk
+      wipe: superblock-recursive
+    - device: disk-nvme0n1
+      grub_device: true
+      id: partition-0
+      flag: boot
+      number: 1
+      preserve: false
+      size: 536870912
+      type: partition
+      wipe: superblock
+    - id: format-0
+      fstype: fat32
+      preserve: false
+      type: format
+      volume: partition-0
+    - device: disk-nvme0n1
+      flag: ''
+      grub_device: false
+      id: partition-1
+      number: 2
+      preserve: false
+      size: -1
+      type: partition
+      wipe: superblock
+    - fstype: ext4
+      id: format-1
+      preserve: false
+      type: format
+      volume: partition-1
+    - device: format-1
+      id: mount-1
+      path: /
+      type: mount
+    - device: format-0
+      id: mount-0
+      path: /boot/efi
+      type: mount