Afterglow v1.14.1 — 1.14.0 broken release 재발행

릴리스일: 2026-05-09 유형: patch (CI/인프라 fix only) 호환성: 코드 변경은 1.14.0 과 동일. backward-compatible.


요약

v1.14.0 은 release pipeline 이 두 단계에서 fail 하여 ghcr 에 멀티아치 :v1.14.0 manifest 가 만들어지지 않은 broken release 였다. 동일 보안 패치 + workflow fix 두 건을 묶어 v1.14.1 로 재발행.

1.14.0 → 1.14.1 코드 차이 = workflow CI fix 2건만. 보안 패치 내용은 1.14.0 과 100% 동일.


1.14.0 의 broken pipeline 원인

PR #18 — npm: command not found (해결 완료)

docker-build.ymlApply tag version (tag push only) 스텝이 npm run version:apply-tag 를 호출하지만 runner (linux + self-hosted macos 모두) 에 npm 이 없었음 → tag push 시 4개 build 잡 모두 setup 단계에서 exit 127.

수정: tag push 일 때만 actions/setup-node@v4 (node 20) 설치하는 conditional 스텝 추가.

PR #19 — arm64 uv cache lock race (해결 완료)

PR #18 fix 후 v1.14.0 retag 했더니 build/push 자체는 모두 성공 (ghcr 에 :v1.14.0-amd64, :v1.14.0-arm64 4개 모두 푸시됨) 했지만 arm64 post-job 에서 fail:

Cache is currently in-use, waiting for other uv processes to finish
error: Timeout (300s) when waiting for lock on /Users/katherine/.cache/uv/.lock

self-hosted macos arm64 runner 가 backend/frontend 두 잡을 동시에 실행하면서 같은 ~/.cache/uv/.lockuv cache prune --ci 가 동시 진입. arm64 잡 fail → Manifest job 이 needs:build success 미충족으로 skip → 멀티아치 :v1.14.0 미생성.

수정:

- name: Install uv (tag push only)
  uses: astral-sh/setup-uv@v6
  with:
    enable-cache: $

linux self-hosted runner (잡별 별도 인스턴스) 만 캐시 활성화. macos arm64 는 캐시 비활성화 — tag push 빈도가 낮아 캐시 미사용 영향은 작음.


보안 패치 내용 (1.14.0 과 동일)

전문은 v1.14.0.md 참고. 요약:

  • Defense-in-depth IDOR 가드: Network/Router/SG/FIP/Subnet, Loadbalancer, Trove (특히 enable_root_user), Cinder, Manila access-rule, Object-storage
  • K3s 보안: kubeconfig audit log, callback source IP 로깅, HKDF v3 sub-key 도메인 분리, v2/legacy ciphertext fallback + deprecation
  • Health Bearer 토큰: 30일 sliding → 7일 절대 만료
  • Dependabot: python-multipart 0.0.27 (CVE-2026-42561 HIGH), postcss → 8.5.14 (CVE-2026-41305 MEDIUM, vite transitive override)

운영 영향

1.13.x 사용자

v1.14.0 운영 가이드 의 모든 항목이 그대로 적용. 1.14.0 을 건너뛰고 1.14.1 로 직행해도 무방.

1.14.0 (broken) 부분 사용자

1.14.0 의 ghcr 이미지가 일부만 push 된 상태이므로 운영에서 1.14.0 을 사용 중인 경우는 거의 없을 것이다. 다음 중 하나로 마이그레이션:

  • ghcr :v1.14.1 멀티아치 image 로 전환 (권장)
  • 또는 :v1.14.0-amd64 / :v1.14.0-arm64 single-platform tag 를 그대로 사용 (단, deployment 가 multi-arch 가정이면 작동 안 함)

검증

  • 단위 테스트: 1247 passed, 20 skipped, 0 failed (1.14.0 과 동일)
  • ruff lint + format check: 통과
  • workflow fix CI: amd64 잡 4개 + arm64 잡 4개 + Manifest 잡 2개 모두 통과 예상

후속 작업 (별도 PR)

v1.14.0.md 참고. 변경 없음.


Afterglow — OpenStack Dashboard. MIT License.

This site uses Just the Docs, a documentation theme for Jekyll.