#!/bin/sh

set -e

if [ "$1" = "configure" ]; then
    # Create the "kafka" user
    if ! getent passwd kafka > /dev/null; then
        adduser --quiet --system --group --home /var/lib/kafka \
                --no-create-home --gecos "Kafka daemon" \
                kafka
    fi

    # Create the "kafka" group, if it is missing, and set the
    # primary group of the "puppet" user to this group
    if ! getent group kafka > /dev/null; then
        addgroup --quiet --system kafka
        usermod -g kafka kafka
    fi

    # Set correct permissions and ownership for kafka directories
    if ! dpkg-statoverride --list /etc/kafka >/dev/null 2>&1; then
        dpkg-statoverride --update --add kafka kafka 0750 /etc/kafka
    fi

    if ! dpkg-statoverride --list /var/log/kafka >/dev/null 2>&1; then
        dpkg-statoverride --update --add kafka kafka 0750 /var/log/kafka
    fi

    if ! dpkg-statoverride --list /var/lib/kafka >/dev/null 2>&1; then
        dpkg-statoverride --update --add kafka kafka 0750 /var/lib/kafka
    fi
fi
