본 번역은 검증되지 않았습니다. AIP를 통해 영문원문으로부터 번역되었습니다.

Python 라이브러리 공유하기

여러 Transforms Python 저장소 간에 코드를 공유하는 권장 워크플로는 Python 라이브러리 패키지, 특히 Conda 라이브러리를 게시하는 것입니다. Python 라이브러리 게시는 Transforms Python 1.23.1+에서 지원됩니다.

Python 라이브러리 게시하기

Python 라이브러리를 게시하기 위한 필요한 단계는 다음과 같습니다:

  1. 새로운 저장소 생성을 통해 공유 라이브러리의 Python 코드를 담게 됩니다.

  2. 저장소의 이름을 정하세요. 초기화될 때 저장소의 이름으로 라이브러리가 명명됩니다. 다른 Code Repositories는 이 이름을 사용하여 라이브러리를 찾고 사용합니다. 나중에 gradle.properties 파일에 접근하여 condaPackageName 파라미터를 편집함으로써 이름을 바꿀 수 있습니다(이 파일은 숨겨져 있으므로, 파일 에디터에서 먼저 "숨겨진 파일 보기"를 선택해야 할 수도 있습니다).

라이브러리 명명

condaPackageName은 ASCII 소문자, 숫자, 또는 하이픈만 포함할 수 있습니다. 비알파뉴메릭/비하이픈 문자의 어떤 시퀀스도 하나의 하이픈으로 대체됩니다(예를 들어, my_library repomy-library-repo로, Foobar _baz$$$foobar-baz-로 게시됩니다).

  1. Python 라이브러리 템플릿 섹션에서 생성 버튼을 클릭합니다.

  2. 패키지 생성: 라이브러리의 __init__.py 파일을 포함하는 모든 폴더가 패키지로 게시됩니다. 이 폴더로 저장소가 초기화되며, 필요한 경우 이름을 바꾸고 추가 패키지를 추가할 수 있습니다.

  3. 모듈 생성: 패키지 폴더 내에 코드를 포함하는 Python 파일을 추가할 수 있습니다. 이 모듈은 나중에 다른 저장소에서 가져와 사용됩니다.

Artifact 저장소와 Transforms 저장소 간 매핑 다이어그램

  1. 저장소에 태그 추가: 릴리스를 만들 준비가 되면 "Branches" 탭으로 이동하여 "Tags"를 선택하고 새 태그를 생성합니다. 기본적으로 Python 라이브러리는 태그가 달린 커밋에 대해서만 게시됩니다. 이 기본 동작을 변경하려면 build.gradle 파일을 수정해야 합니다.

python-package-tagging

경고

태그 이름은 SLS Versions 문서에서 명시된 것처럼 SLS 버전 지침을 따라야 합니다.

  1. 검사가 성공적으로 완료되면 라이브러리 버전이 게시됩니다. 태그 목록 및 저장소의 검사 탭에서 검사 상태를 확인할 수 있습니다.

기본적으로, 라이브러리에 대한 변경사항은 태그를 생성할 때만 게시됩니다. 브랜치의 현재 상태나 특정 커밋에 대해 태그를 생성할 수 있습니다. 검사가 통과되면 라이브러리가 게시되고 사용자는 최신 버전으로 업그레이드할 수 있습니다.

새 버전이 게시되었을 때, 사용하는 저장소가 자동으로 최신 버전을 사용하도록 업그레이드되지 않습니다. 저장소를 수동으로 최신 버전을 사용하도록 업그레이드하려면, Python 라이브러리 찾기 및 사용Conda lock 파일에 대한 문서를 참조하여 Conda 환경을 다시 해결하는 방법을 확인하세요.

  1. 라이브러리 사용자에게 권한을 부여하세요. 기본적으로, 사용자는 공유 저장소에 "보기 권한 보유 사용자" 역할을 가져야 합니다. 변환 저장소 설정의 Artifacts 탭 아래에 라이브러리 저장소에 대한 출처를 추가하세요.

저장소 설정 Artifacts 탭의 스크린샷

이 시점에서 라이브러리는 다른 앱 및 저장소가 사용할 수 있어야 합니다. Python 패키지 찾기 및 사용에 대해 더 자세히 알아보세요.