Files
digitechflow-wordpress/scripts/seed-plugins.sh

33 lines
1003 B
Bash
Executable File

#!/bin/sh
set -eu
PLUGINS_FILE=${PLUGINS_FILE:-/config/plugins.txt}
WP_PATH=${WP_PATH:-/var/www/html}
SLEEP=${SLEEP:-5}
if [ ! -f "$PLUGINS_FILE" ]; then
echo "[seed-plugins] plugins file $PLUGINS_FILE not found, skipping"
exit 0
fi
# wait for WordPress to finish installing
while ! wp core is-installed --path="$WP_PATH" --allow-root >/dev/null 2>&1; do
echo "[seed-plugins] waiting for WordPress database..."
sleep "$SLEEP"
done
while IFS= read -r plugin || [ -n "$plugin" ]; do
plugin=$(printf '%s' "$plugin" | tr -d '\r')
case "$plugin" in
''|\#*) continue ;;
esac
if wp plugin is-installed "$plugin" --path="$WP_PATH" --allow-root >/dev/null 2>&1; then
echo "[seed-plugins] ensuring $plugin is active"
wp plugin activate "$plugin" --path="$WP_PATH" --allow-root >/dev/null || true
else
echo "[seed-plugins] installing $plugin"
wp plugin install "$plugin" --activate --path="$WP_PATH" --allow-root
fi
done < "$PLUGINS_FILE"
echo "[seed-plugins] complete"