]>
git.immae.eu Git - perso/Immae/Projets/Puppet.git/blob - scripts/ovh_vps_ssd/arch_host_script.sh
10 apt
-get install -y haveged
14 # Prepare an arch chroot
17 LATEST
=$(curl -L https://mirrors.kernel.org/archlinux/iso/latest/sha1sums.txt | grep "bootstrap" | head -n1)
18 SHA1
=$(echo "$LATEST" | cut -d' ' -f1)
19 NAME
=$(echo "$LATEST" | cut -d' ' -f3)
21 curl
-L -O "https://mirrors.kernel.org/archlinux/iso/latest/$NAME"
25 echo 'Server = http://archlinux.mirrors.ovh.net/archlinux/$repo/os/$arch' > /tmp
/root.x
86_
64/etc
/pacman.d
/mirrorlist
26 # /Prepare an arch chroot
28 # Prepare device information (not available in chroot)
29 DEVICE_STR
=$(cat /proc/mounts | grep "/dev/[sv]d.. /mnt/")
30 DEVICE
=$(echo "$DEVICE_STR" | cut -d' ' -f1)
31 MOUNTPOINT
=$(echo "$DEVICE_STR" | cut -d' ' -f2)
34 UUID
=$(lsblk -rno UUID "$DEVICE")
36 echo "$UUID" > /tmp
/root.x
86_
64/device_uuid
37 # /Prepare device information
39 # Install very basic system via chroot (base git puppet)
40 cp /tmp
/arch_chroot_script.sh
/tmp
/root.x
86_
64/
42 /tmp
/root.x
86_
64/bin
/arch
-chroot /tmp
/root.x
86_
64/ /arch_chroot_script.sh
43 # /Install very basic system via chroot
45 # Mount and install rest of system (via puppet)
48 cp /tmp
/arch_install_script.sh
"$MOUNTPOINT/root/"
49 cp /tmp
/puppet_variables.json
"$MOUNTPOINT/root/"
51 /tmp
/root.x
86_
64/bin
/arch
-chroot "$MOUNTPOINT" /root
/arch_install_script.sh
"$git_branch" "$environment"
52 # /Mount and install rest of system