Repository navigation
Conversation
|
좋은 것 같습니다. 문제없으면 차례대로 병합하면 될까요? @jisung-02 |
|
넵 차례로 병합해주시면 감사하겠습니다. |
|
리소스 할당량 초과 관련 로직도 있나요? 그와 관련된 테스트도 있으면 좋을 것 같습니다. |
|
@haramj OpenStack 프로젝트 할당량을 기준으로 처리하고 있습니다. VM 생성 가능 수 조회는 CPU·RAM·인스턴스 수의 사용량과 예약량을 반영하며, 실제 생성 시 최종 초과 여부는 OpenStack에서 검증합니다. RCP 사용자별 개수·용량 제한은 현재 이 변경에 포함되어 있지 않습니다. #91은 DB 스키마만 추가하는 단계라, 실제 생성 로직이 있는 #93에 할당량 초과 처리와 테스트를 추가했습니다(a0e3eb2). OpenStack이 초과를 명시한 403/413 응답을 반환하면 작업을 즉시 테스트는 VM 수·CPU·RAM, 볼륨 수·용량, 컨테이너 수 초과 응답을 재현해 실패 처리, 재시도 중단, 예약 해제, 요청 키 중복 방지를 검증했습니다. 일반 권한 오류와 요청 속도 제한 등을 할당량 초과로 오인하지 않는 검사도 추가했습니다. 후속 #94에도 반영하고, 할당량 초과로 끝난 작업은 복구 검사에서 제외했습니다(8e0e823).
|
|
Merge 해도될까요?! LGTM 입니다 |
리소스 작업과 후속 이벤트를 기존 운영 DB에 저장하기 위한 Ent 스키마를 추가합니다. 서버의 생성·삭제 API와 작업 실행 방식은 이 PR에서 변경하지 않습니다.
ResourceOperation: 요청 식별자, 소유자, 작업 상태, 중복 방지 키OutboxEvent: 재시도 일정, 점유 만료 시간, 완료 기록ResourceObservation: 실제 자원 상태와 DB 불일치 관측 기록변경 약 1.27만 줄 중 직접 작성한 스키마는 81줄이며, 나머지는 Ent 자동 생성 코드입니다. 자동 생성 변경을 이 PR에 모아 후속 PR에서는 구현 로직만 검토할 수 있도록 했습니다. 기존 자원 테이블의 레코드는 유지합니다.
검증: 이 단계에서
go test ./...통과. 최종 분할 결과의 Ent 재생성 일치 및 모듈 정리 검사도 통과했습니다.분할·병합 순서: #91 → #92 → #93 → #94
각 PR은 직전 PR의 브랜치를 기준으로 작성했습니다. 이전 PR을 squash 방식으로 병합한다면 후속 브랜치를 갱신해 이전 변경이 다시 표시되지 않도록 해야 합니다.