로컬에서 패키지 빌드 및 테스트 - 기한 클라우드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

로컬에서 패키지 빌드 및 테스트

Amazon S3에 패키지를 게시하거나 Deadline Cloud 팜에서 CI/CD 자동화를 설정하기 전에 로컬 파일 시스템 채널을 사용하여 워크스테이션에서 conda 패키지를 빌드하고 테스트할 수 있습니다. 이 접근 방식을 사용하면 레시피를 로컬에서 빠르게 반복하고 패키지를 확인할 수 있습니다.

rattler-build publish 명령은 레시피를 빌드하고, 결과 패키지를 채널에 복사하고, 한 번에 채널을 인덱싱합니다. 로컬 파일 시스템 디렉터리를 대상으로 지정하면 디렉터리가 없는 경우에서 자동으로 채널을 rattler-build 생성하고 초기화합니다.

다음 지침은 Blender의 Deadline Cloud 샘플 리포지토리의 4.5 샘플 레시피를 사용합니다GitHub. 샘플 리포지토리에서 다른 레시피를 대체하거나 자체 레시피를 사용할 수 있습니다.

사전 조건

시작하기 전에 워크스테이션에 다음 도구를 설치합니다.

  • pixi - 패키지를 설치하고 테스트rattler-build하는 데 사용하는 패키지 관리자입니다. pixi.sh pixi를 설치합니다.

  • 래틀러 빌드 - Deadline Cloud conda 레시피에서 사용하는 패키지 빌드 도구입니다. pixi를 설치한 후 다음 명령을 실행하여를 설치합니다rattler-build.

    pixi global install rattler-build
  • git - 샘플 리포지토리를 복제하는 데 필요합니다. 에서 용 Windowsgit는 일부 Windows 샘플 레시피에 필요한 bash쉘도 제공합니다. Windows

로컬 채널에 패키지 빌드 및 게시

이 절차에서는 Deadline Cloud 샘플 리포지토리를 복제하고 rattler-build publish를 사용하여 패키지를 빌드하고 로컬 파일 시스템 채널에 게시합니다.

로컬 채널에 패키지를 빌드하고 게시하려면
  1. Deadline Cloud 샘플 리포지토리를 복제합니다.

    git clone https://github.com/aws-deadline/deadline-cloud-samples.git
  2. 디렉터리를 conda_recipes로 변경합니다.

    cd deadline-cloud-samples/conda_recipes
  3. 다음 명령을 실행하여 Blender 4.5 레시피를 빌드하고 패키지를 로컬 채널 디렉터리에 게시합니다.

    Linux 및에서 다음 명령을 macOS실행합니다.

    rattler-build publish blender-4.5/recipe/recipe.yaml \ --to file://$HOME/my-conda-channel

    Windows (cmd)에서 다음 명령을 실행합니다.

    rattler-build publish blender-4.5/recipe/recipe.yaml ^ --to file://%USERPROFILE%/my-conda-channel

    rattler-build publish 명령은 다음 작업을 수행합니다.

    • 레시피에서 패키지를 빌드합니다.

    • 디렉터리가 없는 경우 채널 디렉터리를 생성합니다.

    • 패키지 파일을 채널에 복사합니다.

    • 패키지 관리자가 패키지를 찾을 수 있도록 채널을 인덱싱합니다.

    패키지 레시피가 conda-forge와 같은 특정 채널의 패키지에 의존하는 경우 명령에 -c conda-forge를 추가합니다.

레시피를 변경한 후 패키지를 다시 빌드하려면 --build-number=+1를 추가하여 빌드 번호를 자동으로 증가시킵니다.

rattler-build publish blender-4.5/recipe/recipe.yaml \ --to file://$HOME/my-conda-channel \ --build-number=+1

에 대한 자세한 내용은 래틀러 빌드 게시 설명서를 rattler-build publish참조하세요.

빌드 디버깅

빌드에 실패하면는 사용자가 조사할 수 있도록 빌드 디렉터리를 rattler-build 보존합니다. 다음 명령을 실행하여 모든 환경 변수가 빌드 중에 설정된 상태로 빌드 환경에서 대화형 셸을 엽니다.

rattler-build debug shell

디버그 쉘에서 파일을 수정하고, 개별 빌드 명령을 실행하고, 종속성을 추가하여 문제를 격리할 수 있습니다. 자세한 내용은 래틀러 빌드 설명서의 빌드 디버깅을 참조하세요.

패키지 테스트

패키지를 빌드하고 게시한 후 임시 pixi 프로젝트를 생성합니다. 프로젝트를 사용하여 로컬 채널에서 패키지를 설치하고 올바르게 작동하는지 확인합니다.

패키지를 테스트하려면
  1. 임시 테스트 디렉터리를 생성하고 로컬 채널로 pixi 프로젝트를 초기화합니다.

    Linux 및에서 다음 명령을 macOS실행합니다.

    mkdir package-test-env cd package-test-env pixi init --channel file://$HOME/my-conda-channel

    Windows (cmd)에서 다음 명령을 실행합니다.

    mkdir package-test-env cd package-test-env pixi init --channel file://%USERPROFILE%/my-conda-channel
  2. 프로젝트에 패키지를 추가합니다.

    pixi add blender=4.5
  3. 패키지가 올바르게 작동하는지 확인합니다.

    pixi run blender --version

패키지에 만족하면 Amazon S3 conda 채널에 패키지를 게시하여 Deadline Cloud 작업자가 패키지를 설치할 수 있도록 할 수 있습니다. S3 conda 채널에 패키지 게시를 참조하세요.

정리

테스트 후 테스트 프로젝트와 로컬 채널을 제거할 수 있습니다.

테스트 리소스를 정리하려면
  1. 테스트 프로젝트 디렉터리를 제거합니다.

    Linux 및에서 다음 명령을 macOS실행합니다.

    rm -rf package-test-env

    Windows (cmd)에서 다음 명령을 실행합니다.

    rmdir /s /q package-test-env
  2. 로컬 conda 채널 디렉터리를 제거합니다.

    Linux 및에서 다음 명령을 macOS실행합니다.

    rm -rf $HOME/my-conda-channel

    Windows (cmd)에서 다음 명령을 실행합니다.

    rmdir /s /q %USERPROFILE%\my-conda-channel
  3. (선택 사항) 빌드된 패키지 파일이 포함된 rattler-build 출력 디렉터리를 제거합니다.

    Linux 및에서 다음 명령을 macOS실행합니다.

    rm -rf deadline-cloud-samples/conda_recipes/output

    Windows (cmd)에서 다음 명령을 실행합니다.

    rmdir /s /q deadline-cloud-samples\conda_recipes\output