readable scripts

This commit is contained in:
2026-04-25 18:51:18 +08:00
parent 23172c402d
commit 94a1914e9e
4 changed files with 63 additions and 4 deletions
+21 -1
View File
@@ -71,4 +71,24 @@ runs:
)
ssh "${SSH_OPTS[@]}" "$DEPLOY_USER@$DEPLOY_HOST" \
"APP_KEY=$(printf '%q' "$APP_KEY") IMAGE_TAG=$(printf '%q' "$IMAGE_TAG") HARBOR_USER=$(printf '%q' "$HARBOR_USER") HARBOR_SECRET=$(printf '%q' "$HARBOR_SECRET") HARBOR_HOST=$(printf '%q' "$HARBOR_HOST") AUTO_DEPLOY_PATH=$(printf '%q' "$AUTO_DEPLOY_PATH") AUTO_DEPLOY_BRANCH=$(printf '%q' "$AUTO_DEPLOY_BRANCH") bash -se -c 'printf \"%s\" \"\$HARBOR_SECRET\" | sudo /usr/bin/docker login \"\$HARBOR_HOST\" -u \"\$HARBOR_USER\" --password-stdin; echo \"[remote] Harbor login succeeded\"; cd \"\$AUTO_DEPLOY_PATH\"; git checkout \"\$AUTO_DEPLOY_BRANCH\"; git pull --ff-only; git submodule sync --recursive; git submodule update --init --recursive; echo \"[remote] auto-deploy repo updated\"; ./common/deploy.sh deploy \"\$APP_KEY\" \"\$IMAGE_TAG\"; echo \"[remote] \$APP_KEY deploy staged with IMAGE_TAG=\$IMAGE_TAG\"; echo \"[remote] current deployment status:\"; ./common/deploy.sh status \"\$APP_KEY\" --format env'"
"APP_KEY=$(printf '%q' "$APP_KEY") \
IMAGE_TAG=$(printf '%q' "$IMAGE_TAG") \
HARBOR_USER=$(printf '%q' "$HARBOR_USER") \
HARBOR_SECRET=$(printf '%q' "$HARBOR_SECRET") \
HARBOR_HOST=$(printf '%q' "$HARBOR_HOST") \
AUTO_DEPLOY_PATH=$(printf '%q' "$AUTO_DEPLOY_PATH") \
AUTO_DEPLOY_BRANCH=$(printf '%q' "$AUTO_DEPLOY_BRANCH") \
bash -se" << 'EOF'
printf "%s" "$HARBOR_SECRET" | sudo /usr/bin/docker login "$HARBOR_HOST" -u "$HARBOR_USER" --password-stdin
echo "[remote] Harbor login succeeded"
cd "$AUTO_DEPLOY_PATH"
git checkout "$AUTO_DEPLOY_BRANCH"
git pull --ff-only
git submodule sync --recursive
git submodule update --init --recursive
echo "[remote] auto-deploy repo updated"
./common/deploy.sh deploy "$APP_KEY" "$IMAGE_TAG"
echo "[remote] $APP_KEY deploy staged with IMAGE_TAG=$IMAGE_TAG"
echo "[remote] current deployment status:"
./common/deploy.sh status "$APP_KEY" --format env
EOF