4주차 과제 - 김유경

OpenStack Endpoint [CRUD]

흐름

  1. CLI 입력

  2. 옵션 파싱 & take_action()

  3. SDK Identity 프록시 호출

  4. 프록시 공통 헬퍼(CRUD)

  5. Endpoint 리소스가 HTTP 요청 생성/전송

  6. 응답 출력

CRUD 매핑

  • 생성: openstack endpoint create … → SDK identity.create_endpoint(…) → POST /endpoints

  • 조회: openstack endpoint show → find_endpoint/get_endpoint → GET /endpoints/{id}

  • 목록: openstack endpoint list [–service … --interface … --region …] → endpoints(**filters) → GET /endpoints?..

  • 수정: openstack endpoint set […] → update_endpoint(id, **attrs) → PATCH /endpoints/{id}

  • 삭제: openstack endpoint delete → delete_endpoint(id) → DELETE /endpoints/{id}

파일 역할

  • openstacksdk/openstack/identity/v3/endpoint.py: 리소스 정의(base_path, 허용 플래그, 쿼리)

  • openstacksdk/openstack/identity/v3/_proxy.py: 고수준 메서드(create/get/update/delete/list)

  • openstacksdk/openstack/proxy.py: 공통 헬퍼(create/_get/_update/_delete/_list)

  • openstacksdk/openstack/resource.py: 실제 HTTP 전송(POST/GET/PATCH/DELETE) & 응답 파싱

  • python-openstackclient/openstackclient/identity/v3/endpoint.py: CLI 파싱 & 실행

자세한 정리 :dizzy: