Python SDK
모든 릴리스는 그 버전의 OpenAPI 스펙에서 생성한 Python 클라이언트를 wheel과 sdist로 첨부합니다. 아직 PyPI 패키지는 없으며(로드맵), 배포한 인스턴스의 버전에 맞는 wheel을 해당 릴리스 페이지에서 내려받으면 됩니다.
대상 독자
API를 손으로 requests 호출을 짜는 대신 타입이 있는 메서드로 부르고 싶은 Python 엔지니어(CI 연동, 사내 대시보드, 일괄 작업 등).
trusca 저장소에 들어 있지 않은 이유
OpenAPI Generator는 이 API 표면 전체에 대해 약 900개 파일을 만들어냅니다(모델마다 모듈 하나, 태그마다 모듈 하나). 이걸 저장소에 커밋하면 API 모양이 바뀔 때마다 몇천 줄짜리 diff가 생기고, 그 내용은 아무도 손으로 고칠 일이 없는 코드입니다. 대신 릴리스 태그 시점에 새로 생성해 Release에 첨부합니다. 같은 릴리스에 함께 첨부되는 CycloneDX SBOM과 같은 방식으로, tools/python-sdk/generate.sh를 .github/workflows/release.yml이 그 태그의 OpenAPI 스펙을 재생성한 직후 실행합니다.
설치
pip install trusca_client-2.2.0-py3-none-any.whl
wheel의 버전은 배포한 인스턴스의 버전과 맞추세요. 서버가 더 새 버전이면 이전 클라이언트의 모델이 모르는 필드가 추가됐을 수 있고(응답의 여분 필드는 무시되므로 무해합니다), 반대로 어떤 동작의 이름이 바뀌었다면 이전 클라이언트는 옛 이름으로 호출해 404를 받게 됩니다.