From dfeb1d5f4dbde4c87ca002a97b80c9d6ef8beb9e Mon Sep 17 00:00:00 2001 From: "zhangkun9038@dingtalk.com" Date: Mon, 19 May 2025 12:21:14 +0000 Subject: [PATCH] update dryrun.sh --- tools/dryrun.sh | 50 ++++++++++++++++++++----------------------------- 1 file changed, 20 insertions(+), 30 deletions(-) diff --git a/tools/dryrun.sh b/tools/dryrun.sh index 71e6638..9906d62 100755 --- a/tools/dryrun.sh +++ b/tools/dryrun.sh @@ -1,36 +1,37 @@ #!/bin/bash -# 加载 .env 文件中的变量 + +set -e # 出错立即停止 +# 检查 .env 文件 +if [ ! -f ".env" ]; then + echo "⚠️ 本地缺少 .env 文件,请创建并配置。示例内容如下:" + echo "" + echo "STRATEGY_NAME=TheForceV7" + echo "CONFIG_FILE=basic.json" + echo "TEST_BRANCH=theforce-noai-test" + echo "DRYRUN_BRANCH=theforce-noai-dryrun" + echo "" + exit 1 +fi +# 加载 .env 文件中的变量(位于项目根目录) if [ -f ".env" ]; then export $(grep -v '^#' .env | xargs) else - echo "⚠️ 本地缺少 .env 文件,请创建并配置。" + echo "⚠️ 缺少 .env 文件,请创建并配置 TEST_BRANCH 和 DRYRUN_BRANCH" exit 1 fi -# 获取当前分支名称 -CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) +# 获取当前分支名 +current_branch=$(git rev-parse --abbrev-ref HEAD) # 检查当前分支是否匹配 TEST_BRANCH 或 DRYRUN_BRANCH -if [[ "$CURRENT_BRANCH" != "$TEST_BRANCH" && "$CURRENT_BRANCH" != "$DRYRUN_BRANCH" ]]; then - echo "⚠️ 错误:当前分支 '$CURRENT_BRANCH' 不符合环境变量配置的预期。" +if [[ "$current_branch" != "$TEST_BRANCH" && "$current_branch" != "$DRYRUN_BRANCH" ]]; then + echo "⚠️ 错误:当前分支 '$current_branch' 不符合环境变量配置要求。" echo "请确保当前分支与 .env 文件中的 TEST_BRANCH 或 DRYRUN_BRANCH 配置一致。" echo "TEST_BRANCH=$TEST_BRANCH" echo "DRYRUN_BRANCH=$DRYRUN_BRANCH" exit 1 else - echo "✅ 当前分支 '$CURRENT_BRANCH' 符合环境变量配置要求。" -fi - -# 检查当前分支名称是否包含 "dryrun" -CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) -if [[ "$CURRENT_BRANCH" != *"dryrun"* ]]; then - echo "⚠️ 警告:当前分支名称为 '$CURRENT_BRANCH',不包含 'dryrun'。" - echo "⚠️ 确保您正在正确的分支上运行此脚本。" - read -p "是否继续?(y/n): " confirm - if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then - echo "已取消执行。" - exit 1 - fi + echo "✅ 当前分支 '$current_branch' 符合环境变量配置要求。" fi # 如果当前分支名称包含 "dryrun",执行 git reset --hard @@ -44,17 +45,6 @@ if [[ "$CURRENT_BRANCH" == *"dryrun"* ]]; then echo "Git 工作区已清理。" fi -# 检查 .env 文件 -if [ ! -f ".env" ]; then - echo "⚠️ 本地缺少 .env 文件,请创建并配置。示例内容如下:" - echo "" - echo "STRATEGY_NAME=TheForceV7" - echo "CONFIG_FILE=basic.json" - echo "TEST_BRANCH=theforce-noai-test" - echo "DRYRUN_BRANCH=theforce-noai-dryrun" - echo "" - exit 1 -fi # 加载 .env 文件中的变量 export $(grep -v '^#' .env | xargs) # 设置默认值