Skip to content

Commit a8449a4

Browse files
committed
rename test script
1 parent eb41856 commit a8449a4

File tree

1 file changed

+118
-0
lines changed

1 file changed

+118
-0
lines changed

scripts/test-opensuse.sh

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
#!/bin/bash
2+
3+
# Test script for OpenSUSE RPM repository (test environment)
4+
# Uses test bucket for RPMs, production bucket for GPG key
5+
6+
set -e
7+
8+
echo "=========================================="
9+
echo "STACKIT CLI OpenSUSE RPM Test (Test Environment)"
10+
echo "=========================================="
11+
12+
# Configuration
13+
CONTAINER_NAME="stackit-opensuse-test"
14+
IMAGE="opensuse/tumbleweed:latest"
15+
16+
# Test environment S3 bucket (for RPMs)
17+
TEST_S3_BUCKET="distribution-test"
18+
TEST_S3_ENDPOINT="object.storage.eu01.onstackit.cloud"
19+
TEST_RPM_REPO_PATH="rpm/cli"
20+
21+
# Production S3 bucket (for GPG key)
22+
PROD_S3_BUCKET="distribution"
23+
PROD_S3_ENDPOINT="object.storage.eu01.onstackit.cloud"
24+
PROD_GPG_KEY_PATH="keys/key.gpg"
25+
26+
echo "Step 1: Starting OpenSUSE container..."
27+
docker run -d --name $CONTAINER_NAME $IMAGE tail -f /dev/null
28+
29+
echo "Step 2: Installing dependencies..."
30+
docker exec $CONTAINER_NAME bash -c "
31+
zypper update -y
32+
zypper install -y curl wget gpg2
33+
"
34+
35+
echo "Step 3: Downloading GPG key from production bucket..."
36+
docker exec $CONTAINER_NAME bash -c "
37+
curl -o /tmp/stackit-gpg-signer.asc 'https://$PROD_S3_BUCKET.$PROD_S3_ENDPOINT/$PROD_GPG_KEY_PATH'
38+
gpg --import /tmp/stackit-gpg-signer.asc
39+
echo '✅ GPG key imported'
40+
"
41+
42+
echo "Step 4: Creating repository configuration..."
43+
docker exec $CONTAINER_NAME bash -c "
44+
cat > /etc/zypp/repos.d/stackit-cli.repo << EOF
45+
[stackit-cli]
46+
name=STACKIT CLI Repository
47+
baseurl=https://$TEST_S3_BUCKET.$TEST_S3_ENDPOINT/$TEST_RPM_REPO_PATH
48+
enabled=1
49+
gpgcheck=1
50+
repo_gpgcheck=1
51+
gpgkey=https://$PROD_S3_BUCKET.$PROD_S3_ENDPOINT/$PROD_GPG_KEY_PATH
52+
EOF
53+
cat /etc/zypp/repos.d/stackit-cli.repo
54+
echo '✅ Repository configuration created'
55+
"
56+
57+
echo "Step 5: Updating package cache..."
58+
docker exec $CONTAINER_NAME bash -c "
59+
zypper clean --all
60+
zypper refresh
61+
zypper repos
62+
echo '✅ Package cache updated'
63+
"
64+
65+
echo "Step 6: Installing STACKIT CLI..."
66+
docker exec $CONTAINER_NAME bash -c "
67+
zypper install -y stackit
68+
echo '✅ STACKIT CLI installed'
69+
"
70+
71+
echo "Step 7: Verifying installation..."
72+
docker exec $CONTAINER_NAME bash -c "
73+
if command -v stackit >/dev/null 2>&1; then
74+
echo '✅ stackit command found: \$(which stackit)'
75+
echo '✅ Version: \$(stackit version)'
76+
else
77+
echo '❌ stackit command not found'
78+
exit 1
79+
fi
80+
"
81+
82+
echo "Step 8: Testing basic functionality..."
83+
docker exec $CONTAINER_NAME bash -c "
84+
echo '=== STACKIT CLI HELP OUTPUT ==='
85+
stackit --help
86+
echo '=== END HELP OUTPUT ==='
87+
echo '✅ Basic functionality test passed'
88+
"
89+
90+
echo "Step 9: Testing package update..."
91+
docker exec $CONTAINER_NAME bash -c "
92+
zypper list-updates stackit || echo 'No updates available (expected for test)'
93+
echo '✅ Update check completed'
94+
"
95+
96+
echo "Step 10: Uninstalling STACKIT CLI..."
97+
docker exec $CONTAINER_NAME bash -c "
98+
zypper remove -y stackit
99+
echo '✅ STACKIT CLI uninstalled'
100+
"
101+
102+
echo "Step 11: Verifying uninstallation..."
103+
docker exec $CONTAINER_NAME bash -c "
104+
if ! command -v stackit >/dev/null 2>&1; then
105+
echo '✅ stackit command no longer found'
106+
else
107+
echo '❌ stackit command still found: \$(which stackit)'
108+
exit 1
109+
fi
110+
"
111+
112+
echo "Step 12: Cleaning up container..."
113+
docker stop $CONTAINER_NAME
114+
docker rm $CONTAINER_NAME
115+
116+
echo "=========================================="
117+
echo "✅ OpenSUSE RPM test completed successfully!"
118+
echo "=========================================="

0 commit comments

Comments
 (0)