38 lines
1.1 KiB
Bash
38 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
set -euox pipefail
|
|
UPSTREAM_VER="1.2.43"
|
|
|
|
a2enmod rewrite
|
|
cd /tmp
|
|
wget "https://github.com/kanboard/kanboard/archive/refs/tags/v${UPSTREAM_VER}.zip"
|
|
unzip "v${UPSTREAM_VER}.zip" -d /var/www
|
|
mv /var/www/kanboard-* /var/www/kanboard
|
|
chown -R www-data: /var/www/kanboard
|
|
chmod -R 775 /var/www/kanboard
|
|
chmod -R 770 /var/www/kanboard/data
|
|
cat << EOT > /etc/apache2/sites-available/kanboard.conf
|
|
<VirtualHost *:80>
|
|
DocumentRoot /var/www/kanboard
|
|
<Directory /var/www/kanboard>
|
|
AllowOverride FileInfo Options=All,MultiViews AuthConfig
|
|
Options FollowSymLinks
|
|
Require all granted
|
|
</Directory>
|
|
<Directory /var/www/kanboard/data>
|
|
Require all denied
|
|
</Directory>
|
|
</VirtualHost>
|
|
EOT
|
|
# Enable the site
|
|
a2ensite kanboard.conf
|
|
a2dissite 000-default.conf
|
|
apache2ctl configtest || echo "Apache2 config failed!"
|
|
systemctl restart apache2
|
|
|
|
# Define the user and the command
|
|
USER="www-data"
|
|
KANBOARD_PATH="/var/www/kanboard"
|
|
CRON_JOB="0 8 * * * cd $KANBOARD_PATH && ./cli cronjob >/dev/null 2>&1"
|
|
|
|
# Add the cron job for the specified user
|
|
(sudo crontab -u $USER -l 2>/dev/null; echo "$CRON_JOB") | sudo crontab -u $USER -
|