3a72413 Merge pull request #5 from genichin/copilot/add-verification-steps-sdlc-prompt d362b6b feat: add verification stage to run-sdlc pipeline 9b52ae1 Initial plan 893d465 Merge pull request #3 from genichin/copilot/add-sdlc-prompt-feature 57b3941 feat: add /run-sdlc prompt for automated SDLC pipeline execution 27396ab Initial plan 6979011 Clarify draft creation for new SDLC prompts 1c5557b fix(bootstrap): sdlc 디렉토리 구조 단순화 및 summary 템플릿 추가 af343e5 docs(prompt): SDLC 프롬프트 저장소 현황 탐색 및 대조 절차 강화 cc55e06 chore: Release/Operations 프로세스 템플릿 및 프롬프트 추가 및 README 최신화 386695b commit 4533017 draft 82b7690 draft-design 0503411 draft 9984db0 confirm-discovery, draft-planning, review-planning 명령 추가 cba64f0 add confirm-discovery prompt 9391537 draft 58f2de8 feat: execute implementation during run-sdlc flow 693e3f6 feat: auto-create downstream drafts in run-sdlc 404bc63 docs: translate SDLC orchestration prompts to English 9018e8f feat: add SDLC scaffold and sequential run commands d60e21c docs: clarify when to create a new discovery 0629eee feat: add operation issue triage prompt cdc8d87 feat: make update.sh auto-overwrite by default with --no-overwrite option ead06c2 chore: add execute tool to all prompt files git-subtree-dir: .vendor/stage-pilot git-subtree-split: 3a72413acd2edd95053631f900d3c99c1caef359
75 lines
1.4 KiB
Bash
75 lines
1.4 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
log() {
|
|
printf '[bootstrap] %s\n' "$*"
|
|
}
|
|
|
|
fail() {
|
|
printf '[bootstrap] ERROR: %s\n' "$*" >&2
|
|
exit 1
|
|
}
|
|
|
|
current_os() {
|
|
uname -s
|
|
}
|
|
|
|
HOST_ROOT="${1:-$(pwd)}"
|
|
|
|
ensure_host_structure() {
|
|
local dirs=(
|
|
".github"
|
|
".github/agents"
|
|
".github/instructions"
|
|
".github/prompts"
|
|
".github/runbooks/services"
|
|
".github/scripts"
|
|
".github/templates"
|
|
"docs/sdlc"
|
|
)
|
|
|
|
for dir in "${dirs[@]}"; do
|
|
mkdir -p "${HOST_ROOT}/${dir}"
|
|
done
|
|
}
|
|
|
|
report_github_structure() {
|
|
log "Host .github structure:"
|
|
if command -v find >/dev/null 2>&1; then
|
|
find "${HOST_ROOT}/.github" -maxdepth 2 -mindepth 1 | sed "s#${HOST_ROOT}/##" | sort
|
|
else
|
|
log "find command not available; skipping structure scan."
|
|
fi
|
|
}
|
|
|
|
main() {
|
|
os_name="$(current_os)"
|
|
[ -d "${HOST_ROOT}" ] || fail "Host root not found: ${HOST_ROOT}"
|
|
|
|
log "Host root: ${HOST_ROOT}"
|
|
ensure_host_structure
|
|
|
|
# Intentionally do not install dependencies in bootstrap.
|
|
# This script only prepares the host directory layout.
|
|
log "${os_name} detected. Skipping Python/Node installation by design."
|
|
|
|
report_github_structure
|
|
|
|
if command -v python3 >/dev/null 2>&1; then
|
|
log "python3: $(python3 --version 2>&1)"
|
|
else
|
|
log "python3: not found"
|
|
fi
|
|
|
|
if command -v node >/dev/null 2>&1; then
|
|
log "node: $(node --version 2>&1)"
|
|
else
|
|
log "node: not found"
|
|
fi
|
|
|
|
log "Bootstrap completed successfully."
|
|
}
|
|
|
|
main "$@"
|