Reorganize repo, enrollment share taxonomy, Blancco USB-build fixes, v4.10 PPKGs
Workstation reorganization:
- All build/deploy/helper scripts moved into scripts/ (paths updated to use
REPO_ROOT instead of SCRIPT_DIR so they resolve sibling dirs from the new
depth)
- New config/ directory placeholder for site-specific overrides
- Removed stale: mok-keys/, test-vm.sh, test-lab.sh, setup-guide-original.txt,
unattend/ (duplicate of moved playbook/FlatUnattendW10.xml)
- README.md and SETUP.md structure listings updated, dead "Testing with KVM"
section removed
- .claude/ gitignored
Enrollment share internal taxonomy (forward-looking; existing servers
unaffected since they keep their current boot.wim with flat paths):
- Single SMB share kept (WinPE only mounts one Y: drive), but content now
organised into ppkgs/, scripts/, config/, shopfloor-setup/, pre-install/{bios,
installers}, installers-post/cmm/, blancco/, logs/
- README.md deployed to share root explaining each subdir
- New playbook tasks deploy site-config.json + wait-for-internet.ps1 +
migrate-to-wifi.ps1 explicitly (were ad-hoc on legacy servers)
- BIOS subdir moved into pre-install/bios/, preinstall/ renamed to pre-install/
- startnet.cmd + startnet-template.cmd updated with new Y:\subdir\ paths
- Bumped GCCH PPKG references v4.9 -> v4.10
Blancco USB-build fixes (so next fresh USB install boots Blancco end-to-end
without the manual fixup we did against GOLD):
- grub-blancco.cfg: kernel/initrd switched HTTP -> TFTP (GRUB's HTTP module
times out on multi-MB files); added modprobe.blacklist=iwlwifi,iwlmvm,btusb
(WiFi drivers hang udev on Intel business PCs)
- grubx64.efi rebuilt from updated cfg
- Playbook task added to create /srv/tftp/blancco/ symlinks pointing at the
HTTP-served binaries
run-enrollment.ps1: OOBEComplete is now set AFTER PPKG install (Win11 22H2+
hangs indefinitely if OOBEComplete is set before the bulk-enrollment PPKG runs).
Also includes deploy-bios.sh / pull-bios.sh / busybox-static / models.txt
that were sitting untracked at the repo root.
This commit is contained in:
37
SETUP.md
37
SETUP.md
@@ -46,7 +46,7 @@ Client PXE boot
|
||||
### Step 1: Download Offline Packages (one-time, requires internet)
|
||||
|
||||
```bash
|
||||
./download-packages.sh
|
||||
./scripts/download-packages.sh
|
||||
```
|
||||
|
||||
Downloads all .deb packages (ansible, dnsmasq, apache2, samba, wimtools, etc.) into `offline-packages/` and Python wheels (flask, lxml) into `pip-wheels/`. Approximately 252 packages (~140 MB) + 8 Python wheels.
|
||||
@@ -61,7 +61,7 @@ Downloads all .deb packages (ansible, dnsmasq, apache2, samba, wimtools, etc.) i
|
||||
### Step 2: Prepare Boot Tools (optional)
|
||||
|
||||
```bash
|
||||
./prepare-boot-tools.sh /path/to/blancco.iso /path/to/clonezilla.zip /path/to/memtest.bin
|
||||
./scripts/prepare-boot-tools.sh /path/to/blancco.iso /path/to/clonezilla.zip /path/to/memtest.bin
|
||||
```
|
||||
|
||||
Extracts boot files for Blancco, Clonezilla, and Memtest86+ into the `boot-tools/` directory. Automatically patches Blancco's `config.img` to auto-save erasure reports to the PXE server's Samba share.
|
||||
@@ -70,10 +70,10 @@ Extracts boot files for Blancco, Clonezilla, and Memtest86+ into the `boot-tools
|
||||
|
||||
```bash
|
||||
# Basic — server only (import WinPE images later)
|
||||
sudo ./build-usb.sh /dev/sdX /path/to/ubuntu-24.04-live-server-amd64.iso
|
||||
sudo ./scripts/build-usb.sh /dev/sdX /path/to/ubuntu-24.04-live-server-amd64.iso
|
||||
|
||||
# With WinPE images bundled (single USB, larger drive needed)
|
||||
sudo ./build-usb.sh /dev/sdX /path/to/ubuntu-24.04.iso /path/to/winpe-images
|
||||
sudo ./scripts/build-usb.sh /dev/sdX /path/to/ubuntu-24.04.iso /path/to/winpe-images
|
||||
```
|
||||
|
||||
This creates a bootable USB with:
|
||||
@@ -175,27 +175,30 @@ pxe-server/
|
||||
│ └── templates/ # Jinja2 HTML templates (10 pages)
|
||||
├── docs/
|
||||
│ └── shopfloor-display-imaging-guide.md # End-user imaging guide
|
||||
├── unattend/
|
||||
│ └── FlatUnattendW10.xml # Windows unattend.xml template
|
||||
├── boot-tools/ # Extracted boot files (gitignored, built by prepare-boot-tools.sh)
|
||||
│ ├── blancco/ # Blancco Drive Eraser
|
||||
│ ├── clonezilla/ # Clonezilla Live
|
||||
│ └── memtest/ # Memtest86+
|
||||
├── boot-files/ # WinPE boot files (boot.wim, wimboot, ipxe.efi, BCD)
|
||||
├── offline-packages/ # .deb files (gitignored, built by download-packages.sh)
|
||||
├── pip-wheels/ # Python wheels (gitignored, built by download-packages.sh)
|
||||
├── download-packages.sh # Downloads all offline packages
|
||||
├── build-usb.sh # Builds the 2-partition installer USB
|
||||
├── prepare-boot-tools.sh # Extracts/patches boot tools from ISOs
|
||||
├── build-proxmox-iso.sh # Builds self-contained Proxmox installer ISO
|
||||
├── test-vm.sh # KVM test environment
|
||||
├── test-lab.sh # Full PXE lab with server + client VMs
|
||||
├── enrollment/ # PPKGs and run-enrollment.ps1 (gitignored)
|
||||
├── bios-staging/ # Dell BIOS update binaries (gitignored)
|
||||
├── scripts/ # Build, deploy, and helper scripts
|
||||
│ ├── build-usb.sh # Builds the 2-partition installer USB
|
||||
│ ├── build-proxmox-iso.sh # Builds self-contained Proxmox installer ISO
|
||||
│ ├── prepare-boot-tools.sh # Extracts/patches boot tools from ISOs
|
||||
│ ├── download-packages.sh # Downloads all offline packages
|
||||
│ ├── download-drivers.py # Downloads Dell drivers from dell.com
|
||||
│ ├── deploy-bios.sh # Pushes BIOS updates to enrollment share
|
||||
│ ├── pull-bios.sh # Pulls BIOS binaries from upstream cache
|
||||
│ ├── sync_hardware_models.py # Syncs hardware model configs across images
|
||||
│ ├── Upload-Image.ps1 # Windows: upload MCL cache to PXE via SMB
|
||||
│ └── Download-Drivers.ps1 # Windows: download hardware drivers from GE CDN
|
||||
├── config/ # Site-specific configuration overrides
|
||||
├── startnet-template.cmd # startnet.cmd template (synced with playbook copy)
|
||||
├── Download-Drivers.ps1 # Download hardware drivers from GE CDN (Windows)
|
||||
├── Upload-Image.ps1 # Upload MCL cache to PXE server via SMB (Windows)
|
||||
├── download-drivers.py # Download Dell drivers directly from dell.com
|
||||
├── sync_hardware_models.py # Sync hardware model configs across images
|
||||
├── README.md # Project overview
|
||||
└── setup-guide-original.txt # Original manual setup notes (reference)
|
||||
└── SETUP.md # Detailed setup guide (this file)
|
||||
```
|
||||
|
||||
## Image Types
|
||||
|
||||
Reference in New Issue
Block a user