🛠 계획된 리팩토링
관리자 우분투 계정 삭제 경로가 현재 infra API 경로를 사용하도록 통일
현재 AdminUserService.deleteUbuntuAccount()는
오래된 Infra API인 POST /accounts/deleteuser/{username}를 직접 호출하고 있습니다.
이를 제거하고, 현재 사용 중인
UbuntuAccountService.deleteUbuntuAccount(username)
기반 흐름을 사용하도록 변경합니다.
이번 리팩토링은 삭제 정책 변경이 아닌 삭제 구현 경로 통일을 목적으로 합니다.
기존 정책은 그대로 유지합니다.
- 관리자 삭제 성공 시 Request는 물리 삭제하지 않고
DELETED 상태로 저장
- Pod 삭제 정책 변경 없음
- NodePort allocation 정리 정책 변경 없음
- BE 포트 기록 정리 정책 변경 없음
- ResourceGroup 연결 정보 변경 없음
- 사용자/PVC/account/UID/GID hard deletion 정책 변경 없음
🛠 배경
현재 우분투 계정 삭제는 삭제 진입점에 따라 서로 다른 infra API 흐름을 사용하고 있습니다.
- 만료 삭제:
UbuntuAccountService.deleteUbuntuAccount(username) 사용
- 관리자 삭제:
POST /accounts/deleteuser/{username} 직접 호출
이로 인해 다음과 같은 문제가 발생할 수 있습니다.
- 관리자 삭제만 오래된 infra API를 사용함
- Config Server API 변경 시 관리자 삭제 경로가 누락될 수 있음
- 삭제 예외 처리 및 404 멱등 처리 기준이 경로마다 달라질 수 있음
AdminUserService가 사용자 관리와 infra API 호출 책임을 함께 가짐
- 만료 삭제와 관리자 삭제의 infra 호출 방식이 달라질 수 있음
따라서 관리자 삭제 경로도 현재 infra API 경로인 UbuntuAccountService를 사용하도록 통일하고, 오래된 POST /accounts/deleteuser/{username} 호출을 제거합니다.
📝 Check List
🛠 계획된 리팩토링
관리자 우분투 계정 삭제 경로가 현재 infra API 경로를 사용하도록 통일
현재
AdminUserService.deleteUbuntuAccount()는오래된 Infra API인
POST /accounts/deleteuser/{username}를 직접 호출하고 있습니다.이를 제거하고, 현재 사용 중인
UbuntuAccountService.deleteUbuntuAccount(username)기반 흐름을 사용하도록 변경합니다.
이번 리팩토링은 삭제 정책 변경이 아닌 삭제 구현 경로 통일을 목적으로 합니다.
기존 정책은 그대로 유지합니다.
DELETED상태로 저장🛠 배경
현재 우분투 계정 삭제는 삭제 진입점에 따라 서로 다른 infra API 흐름을 사용하고 있습니다.
UbuntuAccountService.deleteUbuntuAccount(username)사용POST /accounts/deleteuser/{username}직접 호출이로 인해 다음과 같은 문제가 발생할 수 있습니다.
AdminUserService가 사용자 관리와 infra API 호출 책임을 함께 가짐따라서 관리자 삭제 경로도 현재 infra API 경로인
UbuntuAccountService를 사용하도록 통일하고, 오래된POST /accounts/deleteuser/{username}호출을 제거합니다.📝 Check List
AdminUserService에UbuntuAccountService의존성 추가POST /accounts/deleteuser/{username}직접 호출 제거UbuntuAccountService.deleteUbuntuAccount(username)를 사용하도록 수정DELETED로 저장되는지 확인DELETE /api/admin/users/ubuntu/{username}동작 확인DELETE /api/admin/users/{id}에서 연결된 Request 삭제 흐름 확인