Initial project setup: automated PXE server provisioning

Reorganized from OneDrive export into a clean project structure:
- autoinstall/: cloud-init user-data and meta-data for Ubuntu 24.04 autoinstall
- playbook/: Ansible playbook for PXE server config (dnsmasq, Apache, Samba, iPXE)
- unattend/: Windows unattend.xml sample for image deployment
- build-usb.sh: builds a bootable USB with Ubuntu installer + CIDATA partition
- download-packages.sh: downloads all offline .deb dependencies via Docker

Key improvements over original:
- Fully air-gapped: all packages bundled offline, no WiFi needed
- Hardware-agnostic network config (wildcard NIC matching)
- Removed plaintext WiFi credentials
- Single USB build process (was 15+ manual steps)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
cproudlock
2026-02-06 15:47:36 -05:00
commit 5791bd1b49
9 changed files with 1040 additions and 0 deletions

30
.gitignore vendored Normal file
View File

@@ -0,0 +1,30 @@
# Large binary files — download/build these, don't commit them
*.deb
*.zip
*.wim
*.iso
*.efi
*.sdi
# OneDrive download artifacts
OneDrive_*/
# Error folders from OneDrive download
__*/
___*.txt
# Original OneDrive folder structure (reorganized into autoinstall/ and playbook/)
WestJeff*/
# Duplicate at root (canonical copy in unattend/)
/FlatUnattendW10.xml
# Offline packages (built by download-packages.sh)
offline-packages/
# OS files
.DS_Store
Thumbs.db
# Secrets
secrets.md