mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-02-26 23:15:55 +01:00
fix(databasus): add MongoDB tools, use ensure_dependencies in update
- Install mongodb-database-tools (mongodump/mongorestore) and create symlinks at /usr/local/mongodb-database-tools/bin/ as expected by Databasus for MongoDB backup support - Use ensure_dependencies in update script instead of raw apt install to skip redundant installs - Add mongodump check before re-downloading .deb on update
This commit is contained in:
@@ -39,8 +39,22 @@ function update_script() {
|
||||
msg_ok "Backed up Configuration"
|
||||
|
||||
msg_info "Ensuring Database Clients"
|
||||
$STD apt-get install -y mariadb-client
|
||||
mkdir -p /usr/local/mariadb-{10.6,12.1}/bin /usr/local/mysql-{5.7,8.0,8.4,9}/bin
|
||||
ensure_dependencies mariadb-client
|
||||
if ! command -v mongodump &>/dev/null; then
|
||||
DEBIAN_ARCH=$(dpkg --print-architecture)
|
||||
if [[ "$DEBIAN_ARCH" == "amd64" ]]; then
|
||||
MONGO_ARCH="x86_64"
|
||||
MONGO_DIST="debian12"
|
||||
elif [[ "$DEBIAN_ARCH" == "arm64" ]]; then
|
||||
MONGO_ARCH="arm64"
|
||||
MONGO_DIST="ubuntu2204"
|
||||
fi
|
||||
tmp_file=$(mktemp)
|
||||
wget -q "https://fastdl.mongodb.org/tools/db/mongodb-database-tools-${MONGO_DIST}-${MONGO_ARCH}-100.10.0.deb" -O "$tmp_file"
|
||||
$STD dpkg -i "$tmp_file" || $STD apt-get install -f -y --no-install-recommends
|
||||
rm -f "$tmp_file"
|
||||
fi
|
||||
mkdir -p /usr/local/mariadb-{10.6,12.1}/bin /usr/local/mysql-{5.7,8.0,8.4,9}/bin /usr/local/mongodb-database-tools/bin
|
||||
for dir in /usr/local/mariadb-{10.6,12.1}/bin; do
|
||||
ln -sf /usr/bin/mariadb-dump "$dir/mariadb-dump"
|
||||
ln -sf /usr/bin/mariadb "$dir/mariadb"
|
||||
@@ -49,6 +63,8 @@ function update_script() {
|
||||
ln -sf /usr/bin/mariadb-dump "$dir/mysqldump"
|
||||
ln -sf /usr/bin/mariadb "$dir/mysql"
|
||||
done
|
||||
[[ -f /usr/bin/mongodump ]] && ln -sf /usr/bin/mongodump /usr/local/mongodb-database-tools/bin/mongodump
|
||||
[[ -f /usr/bin/mongorestore ]] && ln -sf /usr/bin/mongorestore /usr/local/mongodb-database-tools/bin/mongorestore
|
||||
msg_ok "Ensured Database Clients"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "databasus" "databasus/databasus" "tarball" "latest" "/opt/databasus"
|
||||
|
||||
@@ -15,8 +15,9 @@ update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y \
|
||||
nginx \
|
||||
valkey
|
||||
nginx \
|
||||
valkey \
|
||||
mariadb-client
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
PG_VERSION="17" setup_postgresql
|
||||
@@ -24,8 +25,20 @@ setup_go
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
|
||||
msg_info "Installing Database Clients"
|
||||
$STD apt install -y mariadb-client
|
||||
mkdir -p /usr/local/mariadb-{10.6,12.1}/bin /usr/local/mysql-{5.7,8.0,8.4,9}/bin
|
||||
$STD apt install -y
|
||||
DEBIAN_ARCH=$(dpkg --print-architecture)
|
||||
if [[ "$DEBIAN_ARCH" == "amd64" ]]; then
|
||||
MONGO_ARCH="x86_64"
|
||||
MONGO_DIST="debian12"
|
||||
elif [[ "$DEBIAN_ARCH" == "arm64" ]]; then
|
||||
MONGO_ARCH="arm64"
|
||||
MONGO_DIST="ubuntu2204"
|
||||
fi
|
||||
tmp_file=$(mktemp)
|
||||
wget -q "https://fastdl.mongodb.org/tools/db/mongodb-database-tools-${MONGO_DIST}-${MONGO_ARCH}-100.10.0.deb" -O "$tmp_file"
|
||||
$STD dpkg -i "$tmp_file" || $STD apt-get install -f -y --no-install-recommends
|
||||
rm -f "$tmp_file"
|
||||
mkdir -p /usr/local/mariadb-{10.6,12.1}/bin /usr/local/mysql-{5.7,8.0,8.4,9}/bin /usr/local/mongodb-database-tools/bin
|
||||
for dir in /usr/local/mariadb-{10.6,12.1}/bin; do
|
||||
ln -sf /usr/bin/mariadb-dump "$dir/mariadb-dump"
|
||||
ln -sf /usr/bin/mariadb "$dir/mariadb"
|
||||
@@ -34,6 +47,8 @@ for dir in /usr/local/mysql-{5.7,8.0,8.4,9}/bin; do
|
||||
ln -sf /usr/bin/mariadb-dump "$dir/mysqldump"
|
||||
ln -sf /usr/bin/mariadb "$dir/mysql"
|
||||
done
|
||||
[[ -f /usr/bin/mongodump ]] && ln -sf /usr/bin/mongodump /usr/local/mongodb-database-tools/bin/mongodump
|
||||
[[ -f /usr/bin/mongorestore ]] && ln -sf /usr/bin/mongorestore /usr/local/mongodb-database-tools/bin/mongorestore
|
||||
msg_ok "Installed Database Clients"
|
||||
|
||||
fetch_and_deploy_gh_release "databasus" "databasus/databasus" "tarball" "latest" "/opt/databasus"
|
||||
|
||||
Reference in New Issue
Block a user