aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRaúl Benencia <id@rbenencia.name>2026-06-05 18:04:23 -0300
committerRaul Benencia <46945030+raul-te@users.noreply.github.com>2026-06-05 21:19:48 -0300
commitbd19522778257e41d23ac15a5adfc35455f9e310 (patch)
treea7c57be18645f27754939df27dd693081cbd9935 /test
parentf8e69cddb3a2a18100d3093f27c709c4361c1692 (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')
-rw-r--r--test/integ-test/expected-results/ipxemenu.txt4
-rw-r--r--test/integ-test/expected-results/poll-k8s1-1.txt12
-rw-r--r--test/integ-test/expected-results/poll-k8s1-2.txt12
-rw-r--r--test/integ-test/expected-results/poll-k8s1-3-stg.txt12
-rw-r--r--test/integ-test/expected-results/poll-k8s1-4-stg.txt12
-rw-r--r--test/integ-test/expected-results/poll-unknown-set-from-ui.txt12
-rw-r--r--test/integ-test/frontend_smoke.js4
-rw-r--r--test/integ-test/integ-test-configs/env_overrides/production/ipxe/coreos.ipxe.slc16
-rw-r--r--test/integ-test/integ-test-configs/env_overrides/production/ipxe/flatcar.ipxe.slc10
-rw-r--r--test/integ-test/integ-test-configs/ipxe/coreos.ipxe.slc16
-rw-r--r--test/integ-test/integ-test-configs/ipxe/flatcar.ipxe.slc10
-rw-r--r--test/integ-test/integ-test-configs/mappings.yaml12
-rwxr-xr-xtest/integ-test/integ_test.py10
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)
nihil fit ex nihilo