Skip to content

fix(ci): 빌드 게이트 콘텐츠 동기화 안전화 - #17

Merged
sungbin1015 merged 1 commit into
mainfrom
design
Jun 9, 2026
Merged

sungbin1015 merged 1 commit into
mainfrom
design

Conversation

@sungbin1015

Copy link
Copy Markdown
Collaborator

변경

  • `merge-develop.yml`·`pr-build.yml`의 콘텐츠 동기화 step에 `rm -rf docs blog static/img` 추가
  • 이후 `git checkout origin/main -- docs blog static/img`로 main 콘텐츠 완전 교체

배경

이전 패턴 `git checkout origin/main -- docs/ blog/ static/img/`은
추가·수정만 반영하고 삭제는 반영하지 않는다. 그 결과:

  • develop/PR 브랜치의 sidebar·콘텐츠가 stale 상태일 때, main에서 rename·삭제된 옛 파일이 작업트리에 잔재로 남음
  • 그 stale 파일이 새 `authors.yml` 키나 sidebar 정의와 충돌해 빌드 게이트가 깨짐

실제 사고 사례: KST 11:00 `merge-develop.yml` 실행에서
`2026-05-27-테스트-...md` (옛 파일명, `jay` author 키 참조)가 develop에
남아 있어 새 `authors.yml` (`김주홍` 키)와 충돌 → 빌드 fail.

안전성

`rm -rf`는 빌드 step의 ephemeral 작업트리에서만 동작.
실제 머지 단계(`git merge develop`)는 commit graph 기반이라 develop의
변경은 정상 보존됨.

검증

  • pr-build.yml에서 GH Actions 환경 빌드 통과 확인 (이번 PR 자체로 검증)

merge-develop.yml과 pr-build.yml 빌드 게이트가
git checkout origin/main -- docs/ blog/ static/img/ 만 수행해,
develop 또는 PR 브랜치에만 있고 main에선 삭제·rename된 stale 파일이
작업트리에 남아 옛 frontmatter(예: 삭제된 author 키)로 빌드가 깨졌음.

rm -rf 후 git checkout으로 콘텐츠 디렉토리를 main 버전으로 완전 교체.
@sungbin1015
sungbin1015 merged commit 83f6004 into main Jun 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant