|
|
|
|
|
|
|
|
|
|
|
|
|
echo "blacklist amodule" >> /etc/modprobe.d/blacklist.conf
|
|
|
|
|
|
|
|
|
|
apt-get update
|
|
apt-get install -y puppet
|
|
|
|
cat > /etc/puppet/puppet.conf << EOF
|
|
[main]
|
|
vardir = /var/lib/puppet
|
|
logdir = /var/log/puppet
|
|
rundir = /var/run/puppet
|
|
ssldir = \$vardir/ssl
|
|
|
|
[agent]
|
|
pluginsync = true
|
|
report = true
|
|
certname = snapshot-ipv4-dhcp-deb10
|
|
|
|
EOF
|
|
|
|
|
|
if [ -f "/etc/default/puppet" ]
|
|
then
|
|
/bin/sed -i 's/^START=no/START=yes/' /etc/default/puppet
|
|
fi
|
|
/usr/bin/puppet agent --enable
|
|
|
|
# export a custom fact called 'is_installer' to allow detection of the installer environment in Puppet modules
|
|
export FACTER_is_installer=true
|
|
# passing a non-existent tag like "no_such_tag" to the puppet agent only initializes the node
|
|
/usr/bin/puppet agent --config /etc/puppet/puppet.conf --onetime --tags no_such_tag --no-daemonize
|
|
systemctl enable puppet
|
|
|
|
|
|
|
|
|
|
real=`ip -o link | awk '/00-f0-54-1a-7e-e0/ {print $2;}' | sed s/://`
|
|
cat << EOF > /etc/network/interfaces
|
|
#loopback
|
|
auto lo
|
|
iface lo inet loopback
|
|
|
|
#eth0
|
|
auto $real
|
|
allow-hotplug $real
|
|
iface $real inet dhcp
|
|
EOF
|
|
|
|
if [ -x /usr/bin/curl ]; then
|
|
/usr/bin/curl -o /dev/null --noproxy \* -H 'Content-Type: text/plain' --silent 'http://foreman.some.host.fqdn/unattended/built'
|
|
elif [ -x /usr/bin/wget ]; then
|
|
/usr/bin/wget -q -O /dev/null --no-proxy --method POST --header 'Content-Type: text/plain' 'http://foreman.some.host.fqdn/unattended/built'
|
|
else
|
|
wget -q -O /dev/null --header 'Content-Type: text/plain' 'http://foreman.some.host.fqdn/unattended/built'
|
|
fi
|
|
PATH=/usr/bin:/usr/sbin:/bin:/sbin:$PATH shutdown -r +1
|