Fix vault status checks in Docker test script

- Update JSON parsing to handle Vault status response correctly
- Remove redundant status extraction with grep
- Use safer string matching approach with Bash pattern matching

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Harald Hoyer 2025-03-20 12:55:09 +01:00
parent f44dcd1f98
commit 334fc50ac7

View file

@ -117,9 +117,8 @@ fi
# Verify Vault is unsealed
vault_status=$(docker-compose exec -T vault env VAULT_ADDR=http://127.0.0.1:8200 vault status -format=json 2>/dev/null || echo '{"sealed": true}')
sealed=$(echo $vault_status | grep -o '"sealed":false' || echo "sealed")
if [ "$sealed" = '"sealed":false' ]; then
if [[ "$vault_status" == *'"sealed":false'* ]]; then
log "INFO" "Vault is properly unsealed"
else
log "ERROR" "Vault is still sealed"
@ -143,9 +142,8 @@ sleep 5
# Verify Vault is sealed after restart (it should be)
vault_status=$(docker-compose exec -T vault env VAULT_ADDR=http://127.0.0.1:8200 vault status -format=json 2>/dev/null || echo '{"sealed": true}')
sealed=$(echo $vault_status | grep -o '"sealed":true' || echo "unsealed")
if [ "$sealed" = '"sealed":true' ]; then
if [[ "$vault_status" == *'"sealed":true'* ]]; then
log "INFO" "Vault is correctly sealed after restart"
else
log "WARN" "Vault is not sealed after restart - this is unexpected"
@ -167,9 +165,8 @@ docker-compose run -e VAULT_ADDR=http://vault:8200 \
# Verify Vault is unsealed now
vault_status=$(docker-compose exec -T vault env VAULT_ADDR=http://127.0.0.1:8200 vault status -format=json 2>/dev/null || echo '{"sealed": true}')
sealed=$(echo $vault_status | grep -o '"sealed":false' || echo "sealed")
if [ "$sealed" = '"sealed":false' ]; then
if [[ "$vault_status" == *'"sealed":false'* ]]; then
log "INFO" "Vault was successfully unsealed after restart"
else
log "ERROR" "Vault is still sealed after restart"