Files
railwaysystem/scripts/bootstrap/check-kingbase-jdbc.sh
T

32 lines
992 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
readonly EXPECTED_SHA256="e439bd1c48ce654748c4f333b874a61465702ceb18f29ee017c3f9bc47738c23"
readonly INSTALLED_JAR="${HOME}/.m2/repository/cn/com/kingbase/kingbase8/9.0.0/kingbase8-9.0.0.jar"
sha256_file() {
if command -v sha256sum >/dev/null 2>&1; then
sha256sum "$1" | awk '{print $1}'
elif command -v shasum >/dev/null 2>&1; then
shasum -a 256 "$1" | awk '{print $1}'
else
echo "No SHA256 utility is available; install sha256sum or shasum." >&2
return 1
fi
}
if [[ ! -f "${INSTALLED_JAR}" ]]; then
echo "Kingbase JDBC 9.0.0 is not provisioned." >&2
echo "Run scripts/bootstrap/install-kingbase-jdbc.sh" >&2
echo "with KINGBASE_JDBC_JAR pointing to the authorized vendor driver." >&2
exit 1
fi
installed_sha256="$(sha256_file "${INSTALLED_JAR}")"
if [[ "${installed_sha256}" != "${EXPECTED_SHA256}" ]]; then
echo "Kingbase JDBC 9.0.0 checksum mismatch." >&2
exit 1
fi
echo "Kingbase JDBC 9.0.0 preflight PASS."