alpine-zdt-images/overlay/zdt/scripts/setup-common

41 lines
1.4 KiB
Bash
Executable File

#!/bin/sh -eu
# vim: ts=4 et:
[ -z "$DEBUG" ] || [ "$DEBUG" = 0 ] || set -x
SETUP=/tmp/setup.d
TARGET=/mnt
# Enable testing repo - do we really want versions to change randomly ?
# echo "@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> "$TARGET/etc/apk/repositories"
# Fix dhcp to set MTU properly
install -o root -g root -Dm644 -t $TARGET/etc/dhcp $SETUP/dhclient.conf
echo 'Setup dhclient'
# Enable SSH keepalive
sed -i -e "s/^[\s#]*TCPKeepAlive\s.*/TCPKeepAlive yes/" -e "s/^[\s#]*ClientAliveInterval\s.*/ClientAliveInterval 60/" $TARGET/etc/ssh/sshd_config
echo 'Enabled SSH keep alives'
# CgroupsV2
sed -i -e "s/^[\s#]*rc_cgroup_mode=.*/rc_cgroup_mode=\"unified\"/" $TARGET/etc/rc.conf
# Setup syslog-ng json logging
cp $SETUP/syslog-ng.conf $TARGET/etc/syslog-ng/syslog-ng.conf
cp $SETUP/syslog-ng.logrotate.conf $TARGET/etc/logrotate.d/syslog-ng
# Install cloudbender shutdown hook
cp $SETUP/cloudbender.stop $TARGET/etc/local.d
mkdir -p $TARGET/etc/cloudbender/shutdown.d
# Install tools
cp $SETUP/route53.py $TARGET/usr/local/bin
# Install ps_mem
wget -q -O $TARGET/usr/local/bin/ps_mem.py https://raw.githubusercontent.com/pixelb/ps_mem/master/ps_mem.py
sed -i -e 's,#!/usr/bin/env python,#!/usr/bin/env python3,' $TARGET/usr/local/bin/ps_mem.py
chmod +x $TARGET/usr/local/bin/ps_mem.py
echo 'Installed ps_mem.py'
printf '\n# Zero Down Time config applied'