30 lines
1005 B
Bash
Executable File
30 lines
1005 B
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
if [[ ${EUID} -ne 0 ]]; then
|
|
echo "Run as root" >&2
|
|
exit 1
|
|
fi
|
|
|
|
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
|
|
apt-get update
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
ca-certificates cron git openssh-client rsync util-linux curl jq
|
|
|
|
install -d -m 0755 /srv/rustproxy-opnsense
|
|
install -d -m 0755 /var/lib/rustproxy-opnsense-builder
|
|
install -m 0755 "$REPO_ROOT/builder/debian/hourly-build.sh" /usr/local/sbin/rustproxy-opnsense-hourly
|
|
install -m 0644 "$REPO_ROOT/builder/debian/rustproxy-opnsense.cron" /etc/cron.d/rustproxy-opnsense
|
|
|
|
if [[ ! -e /etc/rustproxy-opnsense-builder.env ]]; then
|
|
install -m 0600 "$REPO_ROOT/builder.env.example" /etc/rustproxy-opnsense-builder.env
|
|
echo "Created /etc/rustproxy-opnsense-builder.env. Edit it before the first cron run."
|
|
fi
|
|
|
|
touch /var/log/rustproxy-opnsense-builder.log
|
|
chmod 0640 /var/log/rustproxy-opnsense-builder.log
|
|
systemctl enable --now cron
|
|
|
|
echo "Debian scheduler installed."
|