From 98d3aaf2368ef844934faac0f268e40e59dc6dca Mon Sep 17 00:00:00 2001 From: Yun Chan Date: Thu, 20 Aug 2026 17:10:04 +0900 Subject: [PATCH] =?UTF-8?q?CI=20=EC=8A=A4=ED=81=AC=EB=A6=BD=ED=8A=B8?= =?UTF-8?q?=EC=97=90=20=EC=8B=A4=ED=96=89=20=EB=B9=84=ED=8A=B8=EB=A5=BC=20?= =?UTF-8?q?=EC=A3=BC=EA=B3=A0=20bash=20=EB=A1=9C=20=EB=B6=80=EB=A5=B8?= =?UTF-8?q?=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 첫 CI 가 checkout 직후 멈췄다. exit status 126 ./build/ci/verify-node.sh: 허가 거부 Node 문제가 아니었다. Windows 에서 만든 파일이라 git 에 mode 100644 로 들어갔고, 리눅스 러너에서 실행 비트가 없어 126 으로 죽었다. git update-index --chmod=+x 로 세 스크립트에 실행 비트를 줬다 워크플로도 `./script` 대신 `bash script` 로 부르게 했다 — 실행 비트가 다시 빠져도 안 죽는 이중 안전장치다 이번 판단 착오도 기록해둔다. 러너 Node 가 18 인 것을 먼저 보고 그게 원인일 거라 짚었는데, 실제 로그는 그 앞 단계에서 끊겨 있었다. 추정하지 말고 로그를 봤어야 했다. --- .env.example | 11 +++++++++++ .forgejo/workflows/ci.yml | 2 +- .forgejo/workflows/release.yml | 6 +++--- build/ci/publish-npm.sh | 0 build/ci/upload-release-asset.sh | 0 build/ci/verify-node.sh | 0 6 files changed, 15 insertions(+), 4 deletions(-) mode change 100644 => 100755 build/ci/publish-npm.sh mode change 100644 => 100755 build/ci/upload-release-asset.sh mode change 100644 => 100755 build/ci/verify-node.sh diff --git a/.env.example b/.env.example index 41def0f..d89ac14 100644 --- a/.env.example +++ b/.env.example @@ -34,6 +34,17 @@ FORGEJO_REPO=designpaca # ── 사람이 발급해야 하는 것 ────────────────────────────────── # 아래는 전부 비워둔다. 값을 아는 사람만 채울 수 있다. +# ── Forgejo 로그인 (토큰을 모를 때 한 번만) ────────────────── +# 토큰이 없으면 계정으로 API 를 부를 수 있다(Basic Auth). +# 이 값으로 저장소를 만들고, 이어서 API 토큰을 발급받아 FORGEJO_TOKEN 에 채운다. +# 토큰이 생기면 아래 둘은 지워도 된다. +# +# 주의: 2단계 인증이 켜져 있으면 Basic Auth 가 막힌다. +# 그때는 웹에서 토큰만 발급해 FORGEJO_TOKEN 에 넣어라. +# git.chanpaca.net → 설정 → 애플리케이션 → 토큰 생성 +FORGEJO_USER= +FORGEJO_PASSWORD= + # Forgejo API 토큰. 저장소 생성·시크릿 등록에 쓴다. # git.chanpaca.net → 설정 → 애플리케이션 → 토큰 생성 # 권한: repository(write), user(read) diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 02e6a36..6f58136 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: git clean -qfdx - name: 환경 확인 - run: ./build/ci/verify-node.sh + run: bash build/ci/verify-node.sh - name: 의존성 설치 run: pnpm install --frozen-lockfile diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml index 4f8e3a6..45580e4 100644 --- a/.forgejo/workflows/release.yml +++ b/.forgejo/workflows/release.yml @@ -29,7 +29,7 @@ jobs: git clean -qfdx - name: 환경 확인 - run: ./build/ci/verify-node.sh + run: bash build/ci/verify-node.sh - name: 릴리스 정보 확정 run: | @@ -75,11 +75,11 @@ jobs: NPM_TOKEN: "${{ secrets.NPM_TOKEN }}" FORGEJO_NPM_TOKEN: "${{ secrets.FORGEJO_NPM_TOKEN }}" FORGEJO_NPM_OWNER: "${{ vars.FORGEJO_NPM_OWNER }}" - run: ./build/ci/publish-npm.sh packages/cli + run: bash build/ci/publish-npm.sh packages/cli - name: 릴리스 업로드 (draft) env: { RELEASE_TOKEN: "${{ secrets.RELEASE_TOKEN }}" } - run: ./build/ci/upload-release-asset.sh "$RELTAG" "$TARBALL" + run: bash build/ci/upload-release-asset.sh "$RELTAG" "$TARBALL" - name: 소개 페이지 배포 (Cloudflare Pages) env: diff --git a/build/ci/publish-npm.sh b/build/ci/publish-npm.sh old mode 100644 new mode 100755 diff --git a/build/ci/upload-release-asset.sh b/build/ci/upload-release-asset.sh old mode 100644 new mode 100755 diff --git a/build/ci/verify-node.sh b/build/ci/verify-node.sh old mode 100644 new mode 100755