#!/usr/bin/env bash set -e # shellcheck disable=SC1091 source "${SALT_BUILD_DIR}/functions.sh" echo "Installing build dependencies ..." BUILD_DEPENDENCIES=(make gcc g++ cmake pkg-config) apt-get update DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y "${BUILD_DEPENDENCIES[@]}" # Install arm build dependencies if [[ "$(uname -i)" =~ ^(arm|aarch64) ]]; then echo "Installing arm specific dependencies ..." DEBIAN_FRONTEND=noninteractive apt-get install --yes --quiet --no-install-recommends \ libzmq3-dev libhttp-parser-dev libssl-dev libcurl4-openssl-dev fi # Create salt user echo "Creating ${SALT_USER} user ..." useradd -d "${SALT_HOME}" -ms /bin/bash -U -G root,sudo,shadow "${SALT_USER}" # Set PATH exec_as_salt cat >> "${SALT_HOME}/.profile" <> /etc/ssh/ssh_config # Configure logrotate echo "Configuring logrotate ..." # move supervisord.log file to ${SALT_LOGS_DIR}/supervisor/ sed -i "s|^[#]*logfile=.*|logfile=${SALT_LOGS_DIR}/supervisor/supervisord.log ;|" /etc/supervisor/supervisord.conf # fix "unknown group 'syslog'" error preventing logrotate from functioning sed -i "s|^su root syslog$|su root root|" /etc/logrotate.conf # Configure supervisor echo "Configuring supervisor ..." # configure supervisord to start salt-master cat > /etc/supervisor/conf.d/salt-master.conf < /etc/supervisor/conf.d/cron.conf <