Import alt-mysql plugin
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
PLUGIN_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
|
||||
fail() {
|
||||
echo "FAIL: $*" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
[ "$(basename "$PLUGIN_DIR")" = "alt-mysql" ] || fail "plugin directory name is not alt-mysql"
|
||||
grep -Fxq "name=alt-mysql" "$PLUGIN_DIR/plugin.conf" || fail "plugin.conf name is not alt-mysql"
|
||||
grep -Fxq "id=alt-mysql" "$PLUGIN_DIR/plugin.conf" || fail "plugin.conf id is not alt-mysql"
|
||||
grep -Fxq "version=1.2.10" "$PLUGIN_DIR/plugin.conf" || fail "plugin.conf version is not 1.2.10"
|
||||
grep -Fq "return '/CMD_PLUGINS/alt-mysql';" "$PLUGIN_DIR/exec/lib/AppContext.php" \
|
||||
|| fail "AppContext base URL is not alt-mysql"
|
||||
grep -Fq "\$pluginId = 'alt-mysql';" "$PLUGIN_DIR/exec/lib/DirectAdminUser.php" \
|
||||
|| fail "DirectAdmin plugin allow/deny id is not alt-mysql"
|
||||
|
||||
[ -x "$PLUGIN_DIR/scripts/install_db.sh" ] || fail "install_db.sh is not executable in scripts/"
|
||||
[ ! -e "$PLUGIN_DIR/scripts/install-alt-mariadb.sh" ] || fail "install-alt-mariadb.sh still exists in plugin scripts/"
|
||||
[ ! -e "$PLUGIN_DIR/../mysql-installer/install_db.sh" ] || fail "install_db.sh exists outside plugin scripts/"
|
||||
[ ! -e "$PLUGIN_DIR/../mysql-installer/install-alt-mariadb.sh" ] || fail "install-alt-mariadb.sh still exists outside plugin scripts/"
|
||||
|
||||
BAD_REFS="$(
|
||||
old_plugin_path="/usr/local/directadmin/plugins/"'mysql'
|
||||
old_cmd_path="/CMD_PLUGINS/"'mysql'
|
||||
find "$PLUGIN_DIR" -type f \
|
||||
! -path '*/tests/plugin_identity_test.sh' \
|
||||
! -path '*/data/*' \
|
||||
-exec grep -HnE "$old_plugin_path|$old_cmd_path" {} + || true
|
||||
)"
|
||||
[ -z "$BAD_REFS" ] || {
|
||||
printf '%s\n' "$BAD_REFS" >&2
|
||||
fail "old DirectAdmin plugin path references remain"
|
||||
}
|
||||
|
||||
LEGACY_REFS="$(
|
||||
legacy_sudoers="/etc/sudoers.d/directadmin-"'mysql'"-plugin"
|
||||
legacy_cron="/etc/cron.d/"'mysql'"-jobs"
|
||||
legacy_csf="/etc/csf/"'mysql'"-plugin.allow"
|
||||
find "$PLUGIN_DIR" -type f \
|
||||
! -path '*/tests/plugin_identity_test.sh' \
|
||||
! -path '*/data/*' \
|
||||
-exec grep -HnE "$legacy_sudoers|$legacy_cron|$legacy_csf" {} + || true
|
||||
)"
|
||||
[ -z "$LEGACY_REFS" ] || {
|
||||
printf '%s\n' "$LEGACY_REFS" >&2
|
||||
fail "legacy mysql plugin artifact references remain"
|
||||
}
|
||||
|
||||
echo "plugin_identity_test: OK"
|
||||
Reference in New Issue
Block a user