CI 가 초록이었지만 CLI 테스트 6개가 전부 SKIP 이었다. packages/cli test: ok 1 - 빌드 산출물이 있어야 한다 # SKIP pnpm build 먼저 실행해라 packages/cli test: # pass 0 테스트가 dist 를 검사하는데 빌드보다 먼저 돌았다. 건너뛰고도 초록이라 '테스트 통과'가 거짓이 됐다. 순서를 바꾸고, 건너뛴 테스트가 있으면 죽이는 단계를 넣었다. SKIP 은 통과가 아니다. .npmrc 에 sharp 빌드를 허용했다. pnpm 10 은 기본으로 빌드 스크립트를 막는데, sharp 없이는 astro:assets 이미지 최적화가 안 된다.
This commit is contained in:
parent
1a185df3df
commit
84dc5c823c
2 changed files with 20 additions and 2 deletions
|
|
@ -36,11 +36,25 @@ jobs:
|
||||||
- name: 타입 검사
|
- name: 타입 검사
|
||||||
run: pnpm typecheck
|
run: pnpm typecheck
|
||||||
|
|
||||||
|
# 빌드가 테스트보다 먼저다.
|
||||||
|
# CLI 테스트는 dist 를 검사하므로, 빌드 전에 돌리면 6개가 전부 SKIP 되고
|
||||||
|
# 그래도 초록으로 통과한다. 실측에서 그랬다 — pass 0 인데 성공이었다.
|
||||||
|
- name: 빌드
|
||||||
|
run: pnpm build
|
||||||
|
|
||||||
- name: 테스트
|
- name: 테스트
|
||||||
run: pnpm test
|
run: pnpm test
|
||||||
|
|
||||||
- name: 빌드
|
# SKIP 은 통과가 아니다. 건너뛴 테스트가 있으면 여기서 죽인다.
|
||||||
run: pnpm build
|
- name: 테스트가 실제로 돌았는지 확인
|
||||||
|
run: |
|
||||||
|
out="$(pnpm -r --filter './packages/**' test 2>&1)"
|
||||||
|
if echo "$out" | grep -q "# SKIP"; then
|
||||||
|
echo "$out" | grep -n "# SKIP" >&2
|
||||||
|
echo "건너뛴 테스트가 있다. 초록불이 거짓이 된다." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "$out" | grep -E "^.*# (pass|fail) " || true
|
||||||
|
|
||||||
- name: 배포물 점검 (npx 경로 검증)
|
- name: 배포물 점검 (npx 경로 검증)
|
||||||
run: |
|
run: |
|
||||||
|
|
|
||||||
4
.npmrc
4
.npmrc
|
|
@ -1,3 +1,7 @@
|
||||||
auto-install-peers=true
|
auto-install-peers=true
|
||||||
strict-peer-dependencies=false
|
strict-peer-dependencies=false
|
||||||
# 릴리스 프로비넌스는 CI에서만 켠다(로컬 publish 금지)
|
# 릴리스 프로비넌스는 CI에서만 켠다(로컬 publish 금지)
|
||||||
|
|
||||||
|
# sharp 는 astro:assets 의 이미지 최적화에 쓴다.
|
||||||
|
# pnpm 10 은 기본으로 빌드 스크립트를 막아서 명시적으로 허용해야 한다.
|
||||||
|
only-built-dependencies[]=sharp
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue