[ec2] add default provisioning script

This commit is contained in:
Fabio Erculiani 2011-08-01 10:23:29 +02:00
parent ae80cb3cc8
commit 92bc8e202a
4 changed files with 35 additions and 4 deletions

View File

@ -32,7 +32,7 @@ inner_chroot_script_after: /sabayon/scripts/image_generic_inner_chroot_script_af
# Outer chroot script command, to be executed outside destination chroot before # Outer chroot script command, to be executed outside destination chroot before
# before entering it (and AFTER inner_chroot_script) # before entering it (and AFTER inner_chroot_script)
outer_chroot_script_after: /sabayon/scripts/remaster_post.sh outer_chroot_script_after: /sabayon/scripts/image_remaster_post.sh
# Pre-image building script. Hook called before image file creation # Pre-image building script. Hook called before image file creation
# Variables exported: # Variables exported:

16
remaster/ec2_image/ec2.start Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
# Setup Amazon EC2 provided SSH key
ssh_root=/root/.ssh
if [ ! -d "${ssh_root}" ] ; then
mkdir "${ssh_root}"
fi
chmod 700 "${ssh_root}"
# As documented in http://awsdocs.s3.amazonaws.com/EC2/latest/ec2-ug.pdf
wget -qO- http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key > /tmp/openssh-key
if [ "${?}" = "0" ]; then
cat /tmp/openssh-key >> "${ssh_root}"/authorized_keys
fi
rm -f /tmp/openssh-key

View File

@ -22,8 +22,8 @@ rc-update del x-setup boot
# Enable ssh # Enable ssh
rc-update add sshd default rc-update add sshd default
# setup default root password # delete root password, only ssh allowed
echo "root:sabayonamichangeme" | chpasswd passwd -d root
# setup UTC clock # setup UTC clock
sed -i 's:clock=".*":clock="UTC":' /etc/conf.d/hwclock || exit 1 sed -i 's:clock=".*":clock="UTC":' /etc/conf.d/hwclock || exit 1
@ -58,7 +58,6 @@ kernel ${kernel_bin} root=/dev/sda1
" > /boot/grub/grub.conf " > /boot/grub/grub.conf
# initrd ${initrd_bin} # initrd ${initrd_bin}
# Generate list of installed packages # Generate list of installed packages
equo query list installed -qv > /etc/sabayon-pkglist equo query list installed -qv > /etc/sabayon-pkglist

16
scripts/image_remaster_post.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
# execute parent script
/sabayon/scripts/remaster_post.sh
if [ "${?}" != "0" ]; then
exit 1
fi
# Setup provisioning script for Amazon EC2 to load at startup
EC2_DIR="/sabayon/remaster/ec2_image"
PROV_SCRIPT="ec2.start"
cp -p "${EC2_DIR}/${PROV_SCRIPT}" "${CHROOT_DIR}/etc/local.d/" || exit 1
chown root:root "${CHROOT_DIR}/etc/local.d/${PROV_SCRIPT}" || exit 1
chmod 744 "${CHROOT_DIR}/etc/local.d/${PROV_SCRIPT}" || exit 1
exit 0