diff options
| author | Raúl Benencia <id@rbenencia.name> | 2026-06-05 18:04:23 -0300 |
|---|---|---|
| committer | Raul Benencia <46945030+raul-te@users.noreply.github.com> | 2026-06-05 21:19:48 -0300 |
| commit | bd19522778257e41d23ac15a5adfc35455f9e310 (patch) | |
| tree | a7c57be18645f27754939df27dd693081cbd9935 /test | |
| parent | f8e69cddb3a2a18100d3093f27c709c4361c1692 (diff) | |
Update example templates to modern distros
Replace CoreOS (EOL) with Flatcar Linux using Ignition v3.
Replace CentOS (EOL) with AlmaLinux using a kickstart template.
Update Ubuntu templates to jammy with current archive mirror paths.
Update Debian template to bookworm.
Drop CoreOS cloud-config; add Flatcar Ignition example.
Update mappings.yaml, test configs, fixtures, and smoke test accordingly.
Diffstat (limited to 'test')
13 files changed, 50 insertions, 92 deletions
diff --git a/test/integ-test/expected-results/ipxemenu.txt b/test/integ-test/expected-results/ipxemenu.txt index 412ea6f..a10a4f9 100644 --- a/test/integ-test/expected-results/ipxemenu.txt +++ b/test/integ-test/expected-results/ipxemenu.txt @@ -1,7 +1,7 @@ #!ipxe menu Choose target to boot -item /configs/coreos.ipxe coreos.ipxe -item /env/production/configs/coreos.ipxe coreos.ipxe [production] +item /configs/flatcar.ipxe flatcar.ipxe +item /env/production/configs/flatcar.ipxe flatcar.ipxe [production] choose target echo -n Enter hostname or none: diff --git a/test/integ-test/expected-results/poll-k8s1-1.txt b/test/integ-test/expected-results/poll-k8s1-1.txt index 46043fd..9a2fa77 100644 --- a/test/integ-test/expected-results/poll-k8s1-1.txt +++ b/test/integ-test/expected-results/poll-k8s1-1.txt @@ -1,14 +1,8 @@ #!ipxe -set coreos-url http://stable.release.core-os.net/amd64-usr/1122.3.0 +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/1122.3.0 -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://localhost:18888/configs/coreos-baremetal.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://localhost:18888/configs/ignition/baremetal +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz boot diff --git a/test/integ-test/expected-results/poll-k8s1-2.txt b/test/integ-test/expected-results/poll-k8s1-2.txt index 46043fd..9a2fa77 100644 --- a/test/integ-test/expected-results/poll-k8s1-2.txt +++ b/test/integ-test/expected-results/poll-k8s1-2.txt @@ -1,14 +1,8 @@ #!ipxe -set coreos-url http://stable.release.core-os.net/amd64-usr/1122.3.0 +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/1122.3.0 -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://localhost:18888/configs/coreos-baremetal.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://localhost:18888/configs/ignition/baremetal +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz boot diff --git a/test/integ-test/expected-results/poll-k8s1-3-stg.txt b/test/integ-test/expected-results/poll-k8s1-3-stg.txt index 46043fd..9a2fa77 100644 --- a/test/integ-test/expected-results/poll-k8s1-3-stg.txt +++ b/test/integ-test/expected-results/poll-k8s1-3-stg.txt @@ -1,14 +1,8 @@ #!ipxe -set coreos-url http://stable.release.core-os.net/amd64-usr/1122.3.0 +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/1122.3.0 -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://localhost:18888/configs/coreos-baremetal.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://localhost:18888/configs/ignition/baremetal +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz boot diff --git a/test/integ-test/expected-results/poll-k8s1-4-stg.txt b/test/integ-test/expected-results/poll-k8s1-4-stg.txt index 6195e9e..cd61e34 100644 --- a/test/integ-test/expected-results/poll-k8s1-4-stg.txt +++ b/test/integ-test/expected-results/poll-k8s1-4-stg.txt @@ -1,14 +1,8 @@ #!ipxe -set coreos-url http://stable.release.core-os.net/amd64-usr/1298.6.0 +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/1298.6.0 -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://localhost:18888/env/staging/configs/coreos-baremetal.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://localhost:18888/env/staging/configs/ignition/baremetal +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz boot diff --git a/test/integ-test/expected-results/poll-unknown-set-from-ui.txt b/test/integ-test/expected-results/poll-unknown-set-from-ui.txt index 08e161e..9ac72f3 100644 --- a/test/integ-test/expected-results/poll-unknown-set-from-ui.txt +++ b/test/integ-test/expected-results/poll-unknown-set-from-ui.txt @@ -1,14 +1,8 @@ #!ipxe -set coreos-url http://stable.release.core-os.net/amd64-usr/666.0 +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/666.0 -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://localhost:18888/configs/coreos-virtual.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://localhost:18888/configs/ignition/virtual +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz boot diff --git a/test/integ-test/frontend_smoke.js b/test/integ-test/frontend_smoke.js index e9ac50a..bd7be63 100644 --- a/test/integ-test/frontend_smoke.js +++ b/test/integ-test/frontend_smoke.js @@ -370,7 +370,7 @@ async function run() { const mac = document.getElementById('mac'); const target = document.getElementById('target'); mac.value = '${smokeMac}'; - target.value = 'coreos.ipxe'; + target.value = 'flatcar.ipxe'; target.dispatchEvent(new Event('change', { bubbles: true })); return true; })()`); @@ -424,7 +424,7 @@ async function run() { ); const eventText = await evaluate(cdp, sessionID, 'document.querySelector(".event-log").textContent'); - if (!eventText.includes('A user selected coreos.ipxe')) { + if (!eventText.includes('A user selected flatcar.ipxe')) { throw new Error('Event history did not render user selection: ' + eventText); } diff --git a/test/integ-test/integ-test-configs/env_overrides/production/ipxe/coreos.ipxe.slc b/test/integ-test/integ-test-configs/env_overrides/production/ipxe/coreos.ipxe.slc deleted file mode 100644 index f60b478..0000000 --- a/test/integ-test/integ-test-configs/env_overrides/production/ipxe/coreos.ipxe.slc +++ /dev/null @@ -1,16 +0,0 @@ -{{define "coreos.ipxe" -}} -#!ipxe - -set coreos-url http://stable.release.core-os.net/amd64-usr/{{.version}} - -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://{{.baseURL}}/configs/coreos-{{.cloudconfig}}.yaml?release=stable&hostname={{.hostname}} console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz - -boot -{{end}} diff --git a/test/integ-test/integ-test-configs/env_overrides/production/ipxe/flatcar.ipxe.slc b/test/integ-test/integ-test-configs/env_overrides/production/ipxe/flatcar.ipxe.slc new file mode 100644 index 0000000..4d6cc93 --- /dev/null +++ b/test/integ-test/integ-test-configs/env_overrides/production/ipxe/flatcar.ipxe.slc @@ -0,0 +1,10 @@ +{{define "flatcar.ipxe" -}} +#!ipxe + +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/{{.version}} + +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://{{.baseURL}}/configs/ignition/{{.cloudconfig}}?hostname={{.hostname}} +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz + +boot +{{end}} diff --git a/test/integ-test/integ-test-configs/ipxe/coreos.ipxe.slc b/test/integ-test/integ-test-configs/ipxe/coreos.ipxe.slc deleted file mode 100644 index 7cb5156..0000000 --- a/test/integ-test/integ-test-configs/ipxe/coreos.ipxe.slc +++ /dev/null @@ -1,16 +0,0 @@ -{{define "coreos.ipxe" -}} -#!ipxe - -set coreos-url http://stable.release.core-os.net/amd64-usr/{{.version}} - -echo This will currently autologin into tty1 on the console. -echo From there you can su to root and install CoreOS to disk using: -echo coreos-install -d /dev/sda -C stable -echo You will probably need to chroot into /dev/sda9 to configure accounts. -echo More info @ http://coreos.com/docs/running-coreos/bare-metal/installing-to-disk/ - -kernel ${coreos-url}/coreos_production_pxe.vmlinuz cloud-config-url=http://{{.baseURL}}/configs/coreos-{{.cloudconfig}}.yaml?release=stable console=tty1 coreos.autologin=tty1 -initrd ${coreos-url}/coreos_production_pxe_image.cpio.gz - -boot -{{end}} diff --git a/test/integ-test/integ-test-configs/ipxe/flatcar.ipxe.slc b/test/integ-test/integ-test-configs/ipxe/flatcar.ipxe.slc new file mode 100644 index 0000000..9fd381b --- /dev/null +++ b/test/integ-test/integ-test-configs/ipxe/flatcar.ipxe.slc @@ -0,0 +1,10 @@ +{{define "flatcar.ipxe" -}} +#!ipxe + +set flatcar-url https://stable.release.flatcar-linux.net/amd64-usr/{{.version}} + +kernel ${flatcar-url}/flatcar_production_pxe.vmlinuz initrd=flatcar_production_pxe_image.cpio.gz flatcar.first_boot=1 ignition.config.url=http://{{.baseURL}}/configs/ignition/{{.cloudconfig}} +initrd ${flatcar-url}/flatcar_production_pxe_image.cpio.gz + +boot +{{end}} diff --git a/test/integ-test/integ-test-configs/mappings.yaml b/test/integ-test/integ-test-configs/mappings.yaml index 534b72f..36976a0 100644 --- a/test/integ-test/integ-test-configs/mappings.yaml +++ b/test/integ-test/integ-test-configs/mappings.yaml @@ -1,39 +1,39 @@ networkMaps: - network: 20.20.20.20/24 script: - name: ubuntu-minimal.ipxe + name: ubuntu.ipxe params: hostname: placeholder hostnameMaps: - hostname: '(etcd|k8s)\d-m\d' script: - name: coreos.ipxe + name: flatcar.ipxe params: version: 1122.3.0 cloudconfig: virtual - hostname: '(etcd|k8s)\d-m\d' script: - name: coreos.ipxe + name: flatcar.ipxe params: version: 1122.3.0 cloudconfig: virtual - hostname: 'k8s1-4' script: - name: coreos.ipxe + name: flatcar.ipxe environment: staging params: version: 1298.6.0 cloudconfig: baremetal - hostname: 'k8s1-\d' script: - name: coreos.ipxe + name: flatcar.ipxe params: version: 1122.3.0 cloudconfig: baremetal - hostname: 'k8s1-\d' script: - name: coreos.ipxe + name: flatcar.ipxe params: version: 1122.3.0 cloudconfig: baremetal diff --git a/test/integ-test/integ_test.py b/test/integ-test/integ_test.py index a821551..f479e29 100755 --- a/test/integ-test/integ_test.py +++ b/test/integ-test/integ_test.py @@ -172,7 +172,7 @@ def test_unknown_server(shoelaces_instance): assert requests.get(poll_url).text == poll.read() # Setting the config for the new host should succeed. requests.post(API_URL + '/update/target', - {"target": "coreos.ipxe", + {"target": "flatcar.ipxe", "mac": "06:66:de:ad:be:ef", "version": "666.0", "cloudconfig": "virtual"}).raise_for_status() @@ -209,7 +209,7 @@ def test_events(shoelaces_instance): 'cloudconfig': 'virtual', 'hostname': '06-66-de-ad-be-ef', 'version': '666.0'}, - 'script': 'coreos.ipxe'}) + 'script': 'flatcar.ipxe'}) POLL_PAIRS = [(None, "poll.txt"), @@ -229,9 +229,9 @@ def test_poll(shoelaces_instance, params, expected): assert poll.read() == req.text -TPL_VARS_PAIRS = [("coreos.ipxe", "", ["cloudconfig", "version"]), - ("coreos.ipxe", "default", ["cloudconfig", "version"]), - ("coreos.ipxe", "production", ["cloudconfig", "version", "hostname"])] +TPL_VARS_PAIRS = [("flatcar.ipxe", "", ["cloudconfig", "version"]), + ("flatcar.ipxe", "default", ["cloudconfig", "version"]), + ("flatcar.ipxe", "production", ["cloudconfig", "version", "hostname"])] @pytest.mark.parametrize(("script", "env", "vars"), TPL_VARS_PAIRS) |
