#!/bin/sh
set -e

#DEBHELPER#

. /usr/share/debconf/confmodule

CONFIG_FILE=/etc/slapos/slapos.cfg
if [ ! -f "$CONFIG_FILE" ]; then
    echo "# Never edit this file by hand as it has been automatically generated by
# debconf. You can change the settings at any time by running:
# ``dpkg-reconfigure -pmedium slapformat''" > /etc/slapos/slapos.cfg

    cat < /usr/share/doc/slapos-client/examples/slapos.cfg >> /etc/slapos/slapos.cfg
fi

db_get slapos-client/master_url
MASTER_URL="$RET"
WITH_HTTPS=$(echo "$MASTER_URL" | grep -q "^https://" && echo true || echo false)

db_get slapos-client/computer_id
COMPUTER_ID="$RET"

sed -e "s#^\s*master_url\s*=.*#master_url = $MASTER_URL#" \
    -e "s#^\s*computer_id\s*=.*#computer_id = $COMPUTER_ID#" \
    -i $CONFIG_FILE

# Handle HTTPS URLs by just commenting/uncommenting the relevant lines
if $WITH_HTTPS; then
    sed -i 's/^\s*#\+\s*\(key_file\|cert_file\|certificate_repository_path\)/\1/' \
	$CONFIG_FILE
else
    sed -i 's/^\s*[^#]*\s*\(key_file\|cert_file\|certificate_repository_path\)/#\1/' \
	$CONFIG_FILE
fi

db_get slapos-client/software_root
SOFTWARE_ROOT="$RET"

db_get slapos-client/partition_amount
PARTITION_AMOUNT="$RET"

db_get slapos-client/ipv4_local_network
IPV4_LOCAL_NETWORK="$RET"

sed -e "s#^\s*software_root\s*=.*#software_root = $SOFTWARE_ROOT#" \
    -e "s#^\s*partition_amount\s*=.*#partition_amount = $PARTITION_AMOUNT#" \
    -e "s#^\s*ipv4_local_network\s*=.*#ipv4_local_network = $IPV4_LOCAL_NETWORK#" \
    -i $CONFIG_FILE

exit 0
