forked from ungleich-public/cdist
		
	
		
			
				
	
	
		
			31 lines
		
	
	
	
		
			853 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			853 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| TARGET_DIR="$1"
 | |
| PXE_BOOT_DIR="$2"
 | |
| 
 | |
| debootstrap --include=openssh-server --arch=amd64 stable $TARGET_DIR
 | |
| chroot $TARGET_DIR /usr/bin/apt-get update
 | |
| 
 | |
| # Configure the OS
 | |
| cdist config -i init --remote-exec remote-exec.sh --remote-copy remote-exec.sh $TARGET_DIR
 | |
| 
 | |
| # Cleanup chroot
 | |
| chroot $TARGET_DIR /usr/bin/apt-get autoclean
 | |
| chroot $TARGET_DIR /usr/bin/apt-get clean
 | |
| chroot $TARGET_DIR /usr/bin/apt-get autoremove
 | |
| 
 | |
| # Output pxe files
 | |
| cp $TARGET_DIR/boot/vmlinuz-* $PXE_BOOT_DIR/kernel
 | |
| 
 | |
| cd $TARGET_DIR
 | |
| find . -print0 | cpio --null -o --format=newc | gzip -9 > $PXE_BOOT_DIR/initramfs
 | |
| 
 | |
| cat << EOF > $PXE_BOOT_DIR/pxelinux.cfg/default
 | |
| DEFAULT preos
 | |
| LABEL preos
 | |
| KERNEL kernel
 | |
| INITRD initramfs
 | |
| EOF
 | |
| 
 | |
| cp $TARGET_DIR/usr/lib/PXELINUX/pxelinux.0 $PXE_BOOT_DIR/pxelinux.0
 | |
| cp $TARGET_DIR/usr/lib/syslinux/modules/bios/ldlinux.c32 $PXE_BOOT_DIR/ldlinux.c32
 |