Skip to content

Commit c7f348c

Browse files
author
Mohit Joshi
committed
Added OpenBao Vault server tests with pg_tde
1 parent f120085 commit c7f348c

File tree

3 files changed

+624
-1
lines changed

3 files changed

+624
-1
lines changed

postgresql/tests/helper_scripts/setup_kmip.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ start_kmip_server() {
44
sudo pkill -9 kmip
55
# Start KMIP server
66
sleep 5
7-
sudo docker run -d --security-opt seccomp=unconfined --cap-add=NET_ADMIN --rm -p 5696:5696 --name kmip mohitpercona/kmip:latest
7+
sudo docker run -d --security-opt seccomp=unconfined --cap-add=NET_ADMIN --rm -p 5696:5696 --name kmip satyapercona/kmip:latest
88
if [ -d /tmp/certs ]; then
99
echo "certs directory exists"
1010
rm -rf /tmp/certs
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
#!/bin/bash
2+
3+
start_openbao_server() {
4+
# -------------------------------
5+
# CONFIGURATION
6+
# -------------------------------
7+
OPENBAO_URL="https://github.com/openbao/openbao/archive/refs/tags/v2.5.0-beta20251125.tar.gz"
8+
TARBALL="openbao-2.5.0-beta20251125.tar.gz"
9+
DIR="openbao-2.5.0-beta20251125"
10+
11+
vault_url="http://127.0.0.1:8200"
12+
secret_mount_point="pg_tde"
13+
token_filepath="/tmp/bao_token_file"
14+
15+
echo "[INFO] Cleaning up any existing OpenBao processes..."
16+
17+
# Kill any running bao server
18+
pkill -f "bao server" 2>/dev/null || true
19+
20+
# -------------------------------
21+
# CHECK GO VERSION
22+
# -------------------------------
23+
echo "[INFO] Checking Go version..."
24+
25+
if ! command -v go >/dev/null 2>&1; then
26+
echo "[ERROR] Go is not installed. Install Go >= 1.25.4"
27+
exit 1
28+
fi
29+
30+
GO_VERSION=$(go version | awk '{print $3}' | sed 's/go//')
31+
REQUIRED="1.25.4"
32+
33+
if printf '%s\n%s\n' "$REQUIRED" "$GO_VERSION" | sort -V | head -n1 | grep -qv "$REQUIRED"; then
34+
echo "[ERROR] Go version $GO_VERSION is too old. Need >= $REQUIRED"
35+
exit 1
36+
fi
37+
38+
echo "[INFO] Go version OK: $GO_VERSION"
39+
40+
# -------------------------------
41+
# DOWNLOAD OPENBAO
42+
# -------------------------------
43+
echo "[INFO] Downloading OpenBao..."
44+
curl -L "$OPENBAO_URL" -o "$TARBALL"
45+
46+
echo "[INFO] Extracting..."
47+
tar -xzf "$TARBALL"
48+
49+
cd "$DIR"
50+
51+
# -------------------------------
52+
# BUILD OPENBAO
53+
# -------------------------------
54+
echo "[INFO] Building OpenBao..."
55+
make
56+
57+
# -------------------------------
58+
# START OPENBAO SERVER
59+
# -------------------------------
60+
echo "[INFO] Starting OpenBao server in dev mode..."
61+
62+
# run in background and capture output
63+
./bin/bao server -dev > bao_server.log 2>&1 &
64+
65+
sleep 3
66+
67+
# -------------------------------
68+
# EXTRACT ROOT TOKEN
69+
# -------------------------------
70+
ROOT_TOKEN=$(grep -m1 "Root Token:" bao_server.log | awk '{print $3}')
71+
72+
if [[ -z "$ROOT_TOKEN" ]]; then
73+
echo "[ERROR] Could not extract root token!"
74+
exit 1
75+
fi
76+
77+
if [ -f $token_filepath ]; then
78+
rm -f $token_filepath
79+
fi
80+
81+
echo "$ROOT_TOKEN" > $token_filepath
82+
83+
# -------------------------------
84+
# EXPORT ENV VARIABLES
85+
# -------------------------------
86+
export VAULT_ADDR="$vault_url"
87+
export VAULT_TOKEN="$ROOT_TOKEN"
88+
89+
90+
# -------------------------------
91+
# ENABLE SECRET ENGINE
92+
# -------------------------------
93+
echo "[INFO] Enabling KV v2 engine at mount '$secret_mount_point'..."
94+
95+
./bin/bao namespace create pg_tde_ns1
96+
97+
export VAULT_NAMESPACE=pg_tde_ns1
98+
./bin/bao secrets enable -version=2 -path="$secret_mount_point" kv
99+
100+
echo ""
101+
echo "========================================"
102+
echo " OpenBao Setup Completed Successfully! "
103+
echo "========================================"
104+
#echo "Vault URL: $vault_url"
105+
#echo "Secret Mount Point: $secret_mount_point"
106+
#echo "Root Token: $ROOT_TOKEN"
107+
#echo "Root Token: $ROOT_TOKEN"
108+
echo ""
109+
}

0 commit comments

Comments
 (0)