mirror of
https://github.com/xcat2/confluent.git
synced 2026-06-16 00:27:37 +00:00
57 lines
2.6 KiB
Bash
57 lines
2.6 KiB
Bash
#!/bin/bash
|
|
|
|
# This script runs before the installer executes, and sets up ssh during install as well
|
|
# as rewriting the autoyast file with any substitutions prior to it being evaluated for real
|
|
|
|
exec >> /tmp/confluent-pre.log
|
|
exec 2>> /tmp/confluent-pre.log
|
|
chmod 600 /tmp/confluent-pre.log
|
|
cryptboot=$(grep encryptboot: /etc/confluent/confluent.deploycfg|sed -e 's/^encryptboot: //')
|
|
if [ "$cryptboot" != "" ] && [ "$cryptboot" != "none" ] && [ "$cryptboot" != "null" ]; then
|
|
echo "****Encrypted boot requested, but not implemented for this OS, halting install"
|
|
while :; do sleep 86400; done
|
|
fi
|
|
echo "Initializing SSH"
|
|
for pubkey in /etc/ssh/ssh_host_*key.pub; do
|
|
privfile=${pubkey%.pub}
|
|
certfile=${pubkey/.pub/-cert.pub}
|
|
python3 /opt/confluent/bin/apiclient /confluent-api/self/sshcert $pubkey > $certfile
|
|
if [ -s $certfile ]; then
|
|
echo HostCertificate $certfile >> /etc/ssh/sshd_config.d/20_hostkeys.conf
|
|
fi
|
|
done
|
|
systemctl restart sshd
|
|
python3 /opt/confluent/bin/apiclient /confluent-public/os/$profile/autoinstall.json > /tmp/autoinstall.json
|
|
deployserver=$(grep ^deploy_server: /etc/confluent/confluent.deploycfg|awk '{print $2}')
|
|
if [ -z "$deployserver" ] || [ "$deployserver" = "none" ] || [ "$deployserver" = "null" ]; then
|
|
deployserver=$(grep ^deploy_server_v6: /etc/confluent/confluent.deploycfg|awk '{print $2}')
|
|
fi
|
|
if [[ "$deployserver" == *":"* ]]; then
|
|
deployserver="[$deployserver]"
|
|
fi
|
|
source /etc/confluent/functions
|
|
run_remote_parts pre.d
|
|
sed -i s!%%DEPLOYER%%!$deployserver!g /tmp/autoinstall.json
|
|
sed -i s!%%PROFILE%%!$(grep ^profile: /etc/confluent/confluent.deploycfg|awk '{print $2}')!g /tmp/autoinstall.json
|
|
sed -i s!%%ROOTPASSWORD%%!$(grep ^rootpassword: /etc/confluent/confluent.deploycfg|awk '{print $2}')!g /tmp/autoinstall.json
|
|
sed -i s!%%NODENAME%%!$(hostname)!g /tmp/autoinstall.json
|
|
python3 /opt/confluent/bin/apiclient /confluent-public/os/$profile/scripts/getinstalldisk > /tmp/getinstalldisk
|
|
locale=$(grep ^locale: /etc/confluent/confluent.deploycfg)
|
|
locale=${locale#locale: }
|
|
keymap=$(grep ^keymap: /etc/confluent/confluent.deploycfg)
|
|
keymap=${keymap#keymap: }
|
|
tz=$(grep ^timezone: /etc/confluent/confluent.deploycfg)
|
|
tz=${tz#timezone: }
|
|
sed -i 's!%%TIMEZONE%%!'$tz'!g' /tmp/autoinstall.json
|
|
sed -i 's!%%LOCALE%%!'$locale'!g' /tmp/autoinstall.json
|
|
sed -i 's!%%KEYMAP%%!'$keymap'!g' /tmp/autoinstall.json
|
|
if [ ! -e /tmp/installdisk ]; then
|
|
python3 /tmp/getinstalldisk
|
|
fi
|
|
installdisk=$(cat /tmp/installdisk)
|
|
if [ -z "$installdisk" ]; then
|
|
echo "Unable to determine target disk for installation"
|
|
sleep inf
|
|
fi
|
|
echo "Installing to $installdisk"
|
|
sed -i 's!%%INSTALLDISK%%!'/dev/$installdisk'!g' /tmp/autoinstall.json |