#!/bin/bash # 快速测试脚本 - 测试 SSL 证书自动申请流程 set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" echo "==========================================" echo "APISIX SSL 证书自动申请 - 快速测试" echo "==========================================" echo "" echo "配置信息:" echo " APISIX Admin URL: http://localhost:9180(默认)" echo " Webroot 路径: /var/www/certbot" echo " Staging 模式: 是(测试环境)" echo " 提示: 可通过环境变量或修改 Python 文件中的 DEFAULT_CONFIG 来修改配置" echo "" # 提示输入域名 read -p "请输入测试域名(留空使用自动生成): " TEST_DOMAIN if [ -z "$TEST_DOMAIN" ]; then echo "使用自动生成的测试域名..." AUTO_DOMAIN=true else echo "使用指定域名: $TEST_DOMAIN" AUTO_DOMAIN=false fi echo "" echo "开始测试..." echo "" # 运行测试 if [ "$AUTO_DOMAIN" = true ]; then # 自动生成域名,测试完成后清理 python3 "$SCRIPT_DIR/test_ssl_auto.py" --cleanup else # 指定域名,测试完成后不清理(保留数据) python3 "$SCRIPT_DIR/test_ssl_auto.py" --domain "$TEST_DOMAIN" --no-cleanup fi TEST_RESULT=$? echo "" if [ $TEST_RESULT -eq 0 ]; then echo "==========================================" echo "✅ 测试完成!所有步骤都成功" echo "==========================================" if [ "$AUTO_DOMAIN" = false ]; then echo "" echo "测试数据已保留,可以继续使用:" echo " 域名: $TEST_DOMAIN" echo " 路由: http://localhost:9180/apisix/admin/routes/$TEST_DOMAIN" echo " SSL: http://localhost:9180/apisix/admin/ssls" echo "" echo "如需清理测试数据,请运行:" echo " python3 $SCRIPT_DIR/test_ssl_auto.py --domain $TEST_DOMAIN --cleanup" fi else echo "==========================================" echo "❌ 测试失败,请查看上面的错误信息" echo "==========================================" fi exit $TEST_RESULT