기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Deadline Cloud를 사용하여 패키지 빌드 자동화
CI/CD 워크플로의 경우 또는 여러 운영 체제용 패키지를 빌드해야 하는 경우 Deadline Cloud 패키지 빌드 대기열을 생성할 수 있습니다. 대기열은 패키지를 빌드하고 Amazon Simple Storage Service(Amazon S3) conda 채널에 게시하는 플릿의 빌드 작업을 예약합니다. 이렇게 하면 필요한 모든 구성에서 소프트웨어 릴리스를 위한 지속적인 패키지 빌드를 유지 관리할 수 있습니다.
AWS CloudFormation (CloudFormation) 템플릿을 사용하거나 Deadline Cloud 콘솔에서 수동으로 패키지 빌드 대기열을 생성할 수 있습니다. CloudFormation 템플릿은 프로덕션 대기열과 패키지 빌드 대기열이 이미 구성된 전체 팜을 배포합니다. 콘솔에서 대기열을 생성하면 개별 설정을 더 잘 제어할 수 있습니다.
를 사용하여 패키지 빌드 대기열 생성 CloudFormation
CloudFormation 템플릿을 사용하여 패키지 빌드 대기열이 포함된 Deadline Cloud 팜을 생성할 수 있습니다. 템플릿은 프라이빗 Amazon S3 conda 채널을 사용하여 프로덕션 대기열과 패키지 빌드 대기열을 구성합니다.
템플릿을 배포하기 전에 작업 첨부 파일과 conda 채널을 보관할 Amazon S3 버킷을 생성합니다. Amazon S3 콘솔
CloudFormation 템플릿을 배포하려면
-
의 Deadline Cloud 샘플
리포지토리에서 deadline-cloud-starter-farm-template.yaml 템플릿을 다운로드합니다GitHub. -
CloudFormation 콘솔
에서 스택 생성을 선택한 다음 새 리소스 사용(표준)을 선택합니다. -
옵션을 선택하여 템플릿 파일을 업로드한 다음
deadline-cloud-starter-farm-template.yaml파일을 업로드합니다. -
StarterFarm와 같은 스택의 이름을 입력하고 작업 연결을 위한 Amazon S3 버킷의 이름과 conda 채널을 제공합니다. -
CloudFormation 콘솔 단계에 따라 스택 생성을 완료합니다.
템플릿 파라미터 및 사용자 지정 옵션에 대한 자세한 내용은의 Deadline Cloud 샘플 리포지토리에서 스타터 팜 README
콘솔에서 패키지 빌드 대기열 생성
Deadline Cloud 사용 설명서의 대기열 생성 지침을 따릅니다. 다음과 같이 변경합니다.
-
5단계에서 기존 Amazon S3 버킷을 선택합니다. 빌드 아티팩트가 일반적인 Deadline Cloud 연결과 분리
DeadlineCloudPackageBuild되도록와 같은 루트 폴더 이름을 지정합니다. -
6단계에서는 패키지 빌드 대기열을 기존 플릿과 연결하거나 현재 플릿이 적합하지 않은 경우 완전히 새로운 플릿을 생성할 수 있습니다.
-
9단계에서 패키지 빌드 대기열에 대한 새 서비스 역할을 생성합니다. 권한을 수정하여 대기열에 패키지를 업로드하고 conda 채널을 다시 인덱싱하는 데 필요한 권한을 부여합니다.
패키지 빌드 대기열 권한 구성
패키지 빌드 대기열이 대기열의 Amazon S3 버킷에 있는 /Conda 접두사에 액세스하도록 허용하려면 대기열의 역할을 수정하여 읽기/쓰기 액세스 권한을 부여해야 합니다. 이 역할에는 패키지 빌드 작업이 새 패키지를 업로드하고 채널을 다시 인덱싱할 수 있도록 다음 권한이 필요합니다.
-
s3:GetObject -
s3:PutObject -
s3:ListBucket -
s3:GetBucketLocation -
s3:DeleteObject
-
Deadline Cloud 콘솔을 열고 패키지 빌드 대기열의 대기열 세부 정보 페이지로 이동합니다.
-
대기열 서비스 역할을 선택한 다음 대기열 편집을 선택합니다.
-
대기열 서비스 역할 섹션으로 스크롤한 다음 IAM 콘솔에서이 역할 보기를 선택합니다.
-
권한 정책 목록에서 대기열에 대한 AmazonDeadlineCloudQueuePolicy를 선택합니다.
-
권한 탭에서 편집을 선택합니다.
-
다음과 같이 대기열 서비스 역할에 새 섹션을 추가합니다.
amzn-s3-demo-bucket및111122223333을 자체 버킷 및 계정으로 바꿉니다.{ "Effect": "Allow", "Sid": "CustomCondaChannelReadWrite", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } },
패키지 빌드 작업 제출
패키지 빌드 대기열을 생성하고 대기열 권한을 구성한 후 작업을 제출하여 conda 패키지를 빌드할 수 있습니다. 의 Deadline Cloud 샘플submit-package-job 리포지토리에 있는 스크립트는 conda 레시피에 대한 빌드 작업을 GitHub 제출합니다.
다음 항목이 필요합니다.
-
워크스테이션에 설치된 Deadline Cloud CLI
입니다. -
활성 AWS Deadline Cloud Monitor(Deadline Cloud Monitor) 로그인 세션입니다.
-
Deadline Cloud 샘플
리포지토리의 복제본입니다.
패키지 빌드 작업을 제출하려면
-
Deadline Cloud 구성 GUI를 열고 기본 팜과 대기열을 패키지 빌드 대기열로 설정합니다.
deadline config gui -
샘플 리포지토리의
conda_recipes디렉터리로 변경합니다.cd deadline-cloud-samples/conda_recipes -
레시피 디렉터리를 사용하여
submit-package-job스크립트를 실행합니다. 다음 예제에서는 Blender 4.5 레시피를 빌드합니다../submit-package-job blender-4.5/레시피에 아직 다운로드하지 않은 소스 아카이브가 필요한 경우 스크립트는 다운로드 지침을 제공합니다. 아카이브를 다운로드하고 스크립트를 다시 실행합니다.
작업을 제출한 후 Deadline Cloud 모니터를 사용하여 작업의 진행 상황과 상태를 확인합니다.
모니터는 작업의 두 단계, 즉 패키지를 빌드한 다음 conda 채널을 다시 인덱싱하는 단계를 보여줍니다. 패키지 빌드 단계의 작업을 마우스 오른쪽 버튼으로 클릭하고 로그 보기를 선택하면 모니터에 세션 작업이 표시됩니다.
-
첨부 파일 동기화 - 입력 작업 첨부 파일을 복사하거나 가상 파일 시스템을 탑재합니다.
-
Conda 시작 - 대기열 환경 작업입니다. 빌드 작업은 conda 패키지를 지정하지 않으므로이 작업은 빠르게 완료됩니다.
-
CondaBuild Env 시작 - conda 패키지를 빌드하고 채널을 다시 인덱싱하는 데 필요한 소프트웨어를 사용하여 conda 가상 환경을 생성합니다.
-
작업 실행 - 패키지를 빌드하고 결과를 Amazon S3에 업로드합니다.
작업이 실행되면 Amazon CloudWatch(CloudWatch)로 로그를 전송합니다. 작업이 완료되면 모든 작업에 대한 로그 보기를 선택하여 환경 설정 및 해체에 대한 추가 로그를 확인합니다.