Merge pull request 'Add optiplex-3070 catalog entry' (#4) from benvin/cobbler-host-sync into main
ci/woodpecker/push/pre-commit Pipeline was successful
ci/woodpecker/push/validate Pipeline was successful

Reviewed-on: #4
This commit was merged in pull request #4.
This commit is contained in:
2026-08-05 19:36:39 +10:00
2 changed files with 30 additions and 6 deletions
+7 -6
View File
@@ -29,11 +29,11 @@ YAML + template change here — **no bootapi code change**.
`almalinux/<ver>/BaseOS/<arch>/os/`. Generic / VM default (autopart on `sda`).
- **fedora** — artifactapi `fedora` remote, tree
`fedora/releases/<ver>/Everything/<arch>/os/`.
- **optiplex-3050 / optiplex-3060 / optiplex-7080** — AlmaLinux 9 on the Dell
OptiPlex fleet. Same install tree and `almalinux9` kickstart template, but
each passes a `storage_mode` (and, for the 7080, `vg_grow`) var so the one
template lays disks out per model. Ported from the Cobbler profiles
`almalinux9-dell_3050 / _3060 / _7080`. See "Per-model variants" below.
- **optiplex-3050 / optiplex-3060 / optiplex-3070 / optiplex-7080** — AlmaLinux 9
on the Dell OptiPlex fleet. Same install tree and `almalinux9` kickstart
template, but each passes a `storage_mode` (and, for the 7080, `vg_grow`) var
so the one template lays disks out per model. Ported from the Cobbler profiles
`almalinux9-dell_3050 / _3060 / _3070 / _7080`. See "Per-model variants" below.
## Per-model variants (Dell OptiPlex)
@@ -45,6 +45,7 @@ model-specific `storage_mode` var:
|-------|----------------|----------------|----------|--------|
| `optiplex-3050` | `fixed-nvme` | static `nvme0n1` | legacy BIOS/MBR | fixed ~31G |
| `optiplex-3060` | `auto-nvme` | `%pre` picks first NVMe <512G | UEFI-aware (EFI part if booted UEFI) | fixed ~31G |
| `optiplex-3070` | `auto-nvme` | `%pre` picks first NVMe <512G | UEFI-aware | fixed ~31G |
| `optiplex-7080` | `auto-nvme` + `vg_grow: "true"` | `%pre` picks first NVMe <512G | UEFI-aware | grows to fill disk |
The kickstart (`kickstart/almalinux9.ks.tmpl`) reads `.DistroVars.storage_mode`
@@ -54,7 +55,7 @@ autopart-on-`sda` path.
**Model selection (NetBox-driven, no code change):** the entry `name` is the
OptiPlex **device_type slug**. Set the device's `provision_template` custom
field to that slug (`optiplex-3050` / `-3060` / `-7080`) and bootapi's catalog
field to that slug (`optiplex-3050` / `-3060` / `-3070` / `-7080`) and bootapi's catalog
`Select` picks the matching entry (override precedence beats platform/family).
The `match.platforms` slug on each entry is the device_type slug too — not a
real NetBox platform slug — so these entries are *only* reachable via the
+23
View File
@@ -0,0 +1,23 @@
# Distro catalog entry: AlmaLinux 9 on the Dell OptiPlex 3070.
#
# Ported for the six prodnxsr0014-0019 bare-metal hosts registered on the legacy
# Cobbler server under profile almalinux9-dell_3070. Mirrors optiplex-3060: a
# %pre script auto-selects the internal NVMe (first under 512G), is UEFI-aware,
# sets bootloader --boot-drive, and uses a fixed ~31G LVM (no grow). The Cobbler
# almalinux9_dell3070 kickstart template currently fails to render on cobbler,
# so the closest working per-model profile (3060, same UEFI/auto-NVMe layout,
# fixed LVM) was used as the source of truth. Select it by setting the device's
# `provision_template` custom field to "optiplex-3070" (the device_type slug).
name: optiplex-3070
match:
platforms: [optiplex-3070]
kickstart: almalinux9
version_default: "9"
kernel_url: "{{.ArtifactBase}}/almalinux/{{.Version}}/BaseOS/{{.Arch}}/os/images/pxeboot/vmlinuz"
initrd_url: "{{.ArtifactBase}}/almalinux/{{.Version}}/BaseOS/{{.Arch}}/os/images/pxeboot/initrd.img"
kernel_args:
- inst.text
- net.ifnames=0
vars:
mirror: "{{.ArtifactBase}}/almalinux/{{.Version}}"
storage_mode: auto-nvme