From d714667f8114be5a14dbcead1b771d418a49987a Mon Sep 17 00:00:00 2001 From: wbsong111 Date: Tue, 4 Aug 2026 11:22:21 +0900 Subject: [PATCH] =?UTF-8?q?generate-sbom.sh:=20=EC=9E=AC=EC=8B=9C=EB=8F=84?= =?UTF-8?q?=20=EB=A1=9C=EA=B7=B8=EC=9D=98=20unbound=20variable=20=EB=B2=84?= =?UTF-8?q?=EA=B7=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "실패 \$nf개" — \$nf 뒤에 중괄호 없이 한글이 바로 붙어 있어, LANG=C.UTF-8 로케일에서 bash가 변수명 경계를 잘못 인식해 "nf<한글 바이트>: unbound variable"로 죽었다 (set -u). 로컬에서 flowise 차트 SBOM 생성 중 실제로 재현됨 — SBOM 생성 자체(6/6 성공)는 끝난 뒤 재시도 필요 여부를 보고하는 로그 문장에서만 발생해 데이터 손상은 없었다. \${nf}개 로 중괄호 처리해 고쳤다. 같은 패턴(바인딩 안 된 \$var 뒤에 한글이 구분자 없이 붙는 경우)이 다른 파이프라인 스크립트에도 있는지 전수 검색했고 이 한 곳뿐이었다. Co-Authored-By: Claude Sonnet 5 --- scripts/pipeline/generate-sbom.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/pipeline/generate-sbom.sh b/scripts/pipeline/generate-sbom.sh index a9011e2..b8d8263 100755 --- a/scripts/pipeline/generate-sbom.sh +++ b/scripts/pipeline/generate-sbom.sh @@ -129,7 +129,7 @@ while [ "$attempt" -lt "$RETRIES" ]; do <(awk -F'\t' '$2=="OK"{print $1}' "$RESULTS" | sort -u))" nf="$(printf '%s\n' "$FAILED" | grep -c .)" [ "$nf" -eq 0 ] && { echo ">> [$(ts)] 재시도할 실패 없음" | tee -a "$LOG" >&2; break; } - echo ">> [$(ts)] 재시도 $attempt/$RETRIES — 실패 $nf개 (parallel=$RETRY_PARALLEL)" | tee -a "$LOG" >&2 + echo ">> [$(ts)] 재시도 $attempt/$RETRIES — 실패 ${nf}개 (parallel=$RETRY_PARALLEL)" | tee -a "$LOG" >&2 printf '%s\n' "$FAILED" \ | xargs -P "$RETRY_PARALLEL" -I{} bash "$SELF" --gen-one {} "$SBOM_DIR" "$LOG" \ >> "$RESULTS"