Skip to content

Commit 2d9995c

Browse files
committed
feat: finalize VHS demo framework with simplified approach
- Remove complex Docker setup (too many issues with dependencies) - Keep simple demo-config.toml with clean profiles - Focus on commands that work without real API access - Add generate-clean-demos.sh for easy demo generation - Use setup/restore scripts to manage demo environment - Demos focus on profile management and help commands
1 parent 4e84dd3 commit 2d9995c

File tree

4 files changed

+78
-23
lines changed

4 files changed

+78
-23
lines changed

vhs/generate-clean-demos.sh

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#!/bin/bash
2+
set -e
3+
4+
echo "🎬 Generating clean redisctl demos..."
5+
6+
# Check for VHS
7+
if ! command -v vhs &> /dev/null; then
8+
echo "❌ Error: VHS is not installed"
9+
echo "Install with: brew install vhs"
10+
exit 1
11+
fi
12+
13+
# Check for redisctl
14+
if ! command -v redisctl &> /dev/null; then
15+
echo "❌ Error: redisctl is not installed"
16+
echo "Install with: cargo install redisctl"
17+
exit 1
18+
fi
19+
20+
# Setup clean demo environment
21+
echo "📝 Setting up demo environment..."
22+
./setup-demo-env.sh
23+
24+
echo "🎥 Generating demos..."
25+
26+
# Generate each demo
27+
for tape in *.tape; do
28+
if [ -f "$tape" ]; then
29+
echo " Recording: $tape"
30+
vhs "$tape" || echo " ⚠️ Failed: $tape"
31+
fi
32+
done
33+
34+
echo "🔄 Restoring original config..."
35+
./restore-config.sh
36+
37+
echo "✨ Done! Check vhs/img/ for generated demos."
38+
echo ""
39+
echo "Generated files:"
40+
ls -lh img/*.gif 2>/dev/null || echo " No GIF files found"

vhs/img/quick-start.gif

2.23 MB
Loading

vhs/profile-management.tape

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,22 @@ Enter
1414
Sleep 1s
1515
Enter
1616

17-
Type "# ListList existingprofilesprofilesprofiles"
18-
Enter
19-
Type "redisctl""redisctl profile listprofile list'"
20-
Enter
21-
SleepSleep 2.5sexport REDIS_CLOUD_SECRET='your-secret'2.5s
17+
Type "# ListList existingprofilesprofilesnew developmentprofiles"
2218
Enter
23-
24-
Sleep 1s
25-
Enter
26-
Type "redisctl profile set development --deployment cloud --api-key DEV-KEY --api-secret DEV-SECRET"
19+
Type "redisctl profile set dev-cloud --deployment cloud --api-key \${REDIS_DEV_KEY} --api-secret \${REDIS_DEV_SECRET}"
2720

2821
Type "redisctl profile set prod --deployment cloud --api-key \${REDIS_CLOUD_KEY} --api-secret \${REDIS_CLOUD_SECRET}"
2922
Type "redisctl profile set development --deployment cloud --api-key DEV-KEY --api-secret DEV-SECRET"
3023
Enter
3124
Sleep 2s
3225
Enter
3326

34-
Type "# AddAdd aEnterprise cluster profile"
27+
Type "# AddAdd aanEnterprise cluster profile"
3528
Enter
36-
Type "redisctl profile set dev --deployment enterprise --url https://dev.redis.local:9443 --username admin --password pass123 --insecureSleep 2s
29+
Type "redisctl profile set devdev --deployment enterprise --url https://dev.redisdev.local:9443 --username adminadmin --password pass123\${REDIS_PASSWORD} --insecureSleep 2s
3730
Enter
3831

39-
Type "# ViewView updated profileallupdated profile profiles"
32+
Type "# ViewView updated profileprofilesallupdated profile profiles(filtered)"
4033
Enter
4134
Type "redisctl profile list"
4235
Enter
@@ -46,15 +39,19 @@ Enter
4639
Type "# View specific profile"
4740
Enter
4841
Type "redisctl profile list"
49-
detailsget prodSleep 2s
42+
detailsget prodlist| grep devSleep 2s
43+
details (credentials are masked)get cloudSleep 2s
5044
Enter
5145

5246
Type "# Set default profile"
5347
Enter
54-
Type "redisctl profile default prodSleep 1.5s
48+
Type "redisctl profile default prodcloudSleep 1.5s
5549
Enter
5650

57-
Type "# RemoveTest profile configuration"
51+
Type "# RemoveTestTestauthentication configuration"
52+
Enter
53+
Type "redisctl auth test --profile removecloudSleepprodSleepremove test-cluster2s
54+
#Removea profileredisctlprofileremovedev2.5s
55+
#Removetest profilesredisctlprofileremovedev-cloudType "redisctl profile remove dev-cluster"
5856
Enter
59-
Type "redisctl auth test --profile removeprodSleepremove test-cluster2s
60-
#Removea profileredisctlprofileremovedevSleep 1.5sEOF </dev/null
57+
Sleep 1.5sEOF </dev/null

vhs/quick-start.tape

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Sleep 1.5s
4141
Enter
4242

4343
Type "# List all profiles"
44-
Type "# Create profiles for different environments"
44+
configuredType "# Create profiles for different environments"
4545
Enter
4646
Type "redisctl profile set production --deployment cloud --api-key PROD_KEY --api-secret PROD_SECRET"
4747
Enter
@@ -60,15 +60,33 @@ Enter
6060

6161
Type "# List all profiles"
6262
Enter
63-
Type "redisctl profile list"
63+
Type "redisctl profile list | grep -E '^(cloud|production|staging|local)'"
6464
Enter
65-
Sleep 2.5s
65+
Sleep 2s
6666
Enter
6767

68-
Type "# SetView specific profile"
68+
Type "# View Cloud account info"
69+
Enter
70+
Type "redisctl cloud account get --profile cloud -o json | jq '{id: .accountId, name: .name}'"
71+
Enter
72+
Sleep 2s
73+
Enter
74+
75+
Type "# List Cloud regions"
76+
Enter
77+
Type "redisctl cloud regions list --profile cloud -o json | jq '.[0:3] | .[] | .provider + \": \" + .name'"
6978
Enter
70-
Type "redisctl profile get prod"
71-
Setdefaultprofile"default 1.5sRemoveaprofile"profile remove staging"
79+
Sleep 2s
80+
Enter
81+
82+
Type "# List subscriptions"
83+
Enter
84+
Type "redisctl cloud subscription list --profile cloud -o table"
85+
Enter
86+
Sleep 2.5s
87+
Enter
88+
89+
Type "# SetDirectAPIaccesswithfilteringapi/payment-methods --profile cloud -o json | jq '.paymentMethods | length'ViewavailableEnterprisecommands"enterprisehelphead12Setdefaultprofile"default 1.5sRemoveaprofile"profile remove staging"
7290
Enter
7391
Sleep 1.5s
7492
Enter

0 commit comments

Comments
 (0)