gitlink-cli/skills/gitlink-project-bootstrap/scripts/project-bootstrap-full.sh

62 lines
2.2 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# ================================================================
# 项目一键初始化 — 全流程串联脚本
# 功能:依次执行 解析建仓 → 骨架生成 → Issue/里程碑
# 使用bash project-bootstrap-full.sh <owner> <repo>
# 环境变量:
# PROJECT_DESC 项目自然语言描述(必填,影响 spec 解析)
# DRY_RUN true|false (默认 true)
# ================================================================
set -e
# 自动检测并使用本地编译的 gitlink-clifull 脚本统一检测一次)
source "$(cd "$(dirname "$0")" && pwd)/../../gitlink-shared/scripts/detect-cli.sh"
OWNER=${1:?"Usage: $0 <owner> <repo>"}
REPO=${2}
DRY_RUN=${DRY_RUN:-true}
PROJECT_DESC=${PROJECT_DESC:-"一个用 Go 编写的 GitLink 命令行工具MIT 许可证,公开仓库。"}
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
OUTPUT_DIR="$SCRIPT_DIR/_output"
mkdir -p "$OUTPUT_DIR"
echo "============================================"
echo " 项目一键初始化"
echo " Target: $OWNER/$REPO"
echo " PROJECT_DESC: $PROJECT_DESC"
echo " DRY_RUN: $DRY_RUN"
echo " 开始时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "============================================"
echo ""
# Phase 1
echo "▸ Phase 1/3: 解析需求 + 创建仓库"
bash "$SCRIPT_DIR/01-parse-and-create-repo.sh" "$OWNER" "$REPO"
echo ""
# Phase 2
echo "▸ Phase 2/3: 生成项目骨架文件"
bash "$SCRIPT_DIR/02-generate-skeleton.sh" "$OWNER" "$REPO"
echo ""
# Phase 3
echo "▸ Phase 3/3: 创建初始 Issue 和里程碑"
bash "$SCRIPT_DIR/03-create-issues-milestones.sh" "$OWNER" "$REPO"
echo ""
# 生成 HTML 可视化报告
echo "▸ 生成 HTML 可视化报告..."
SHARED_SCRIPT="$SCRIPT_DIR/../../gitlink-shared/scripts/md-to-html.js"
if [ -f "$OUTPUT_DIR/init-report.md" ]; then
node "$SHARED_SCRIPT" "$OUTPUT_DIR/init-report.md" 2>/dev/null || true
fi
echo ""
echo "============================================"
echo " 全流程完成"
echo " 结束时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo " 📄 Markdown: $OUTPUT_DIR/init-report.md"
echo " 🗂 骨架: $OUTPUT_DIR/skeleton/"
echo " 🌐 HTML: 已生成"
echo "============================================"