feat: version list with verification + deployed badge (stage 3)
- pulp_client: list_versions / list_distributions / get_publication
- GET /repos/{uuid}/versions: 버전 목록 페이지(최신순)
- 현재 운영 배포 버전 판별: Distribution→publication→repository_version 역추적
- views.build_version_view: vN, 생성일시, 패키지 수, 증감(+/-), 검증 배지, 배포 여부
- views.verification_detail: gpgcheck/repo-gpgcheck/checksum 상세 (화면4)
- 대시보드 저장소명 → 버전 페이지 링크, [이 버전 배포] 버튼은 단계4용 placeholder
- 단계1 TODO(배포 버전 역추적) 해소
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -69,6 +69,23 @@ class PulpClient:
|
||||
"""RepositoryVersion 단건 조회 (href 기준). content_summary 등 포함."""
|
||||
return self.get(version_href)
|
||||
|
||||
def list_versions(self, uuid: str) -> list[dict[str, Any]]:
|
||||
"""저장소의 RepositoryVersion 목록: GET .../{uuid}/versions/ → results."""
|
||||
data = self.get(f"{API_PREFIX}/repositories/rpm/rpm/{uuid}/versions/")
|
||||
return data.get("results", [])
|
||||
|
||||
def list_distributions(self) -> list[dict[str, Any]]:
|
||||
"""Distribution 목록: GET /pulp/api/v3/distributions/rpm/rpm/ → results.
|
||||
|
||||
운영자가 yum/dnf baseurl 로 바라보는 공개 URL들. publication 으로 배포 버전 추적.
|
||||
"""
|
||||
data = self.get(f"{API_PREFIX}/distributions/rpm/rpm/")
|
||||
return data.get("results", [])
|
||||
|
||||
def get_publication(self, publication_href: str) -> dict[str, Any]:
|
||||
"""Publication 단건 조회 (repository_version 역추적용)."""
|
||||
return self.get(publication_href)
|
||||
|
||||
def get_repo(self, uuid: str) -> dict[str, Any]:
|
||||
"""저장소 단건 조회 (remote href 등 확인용)."""
|
||||
return self.get(f"{API_PREFIX}/repositories/rpm/rpm/{uuid}/")
|
||||
|
||||
Reference in New Issue
Block a user