View a markdown version of this page

Automatize a criação de pacotes com o Deadline Cloud - Deadline Cloud

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Automatize a criação de pacotes com o Deadline Cloud

Para CI/CD fluxos de trabalho ou quando você precisa criar pacotes para vários sistemas operacionais, você pode criar uma fila de criação de pacotes do Deadline Cloud. Os cronogramas de fila criam trabalhos em sua frota, que criam os pacotes e os publicam em seu canal conda do Amazon Simple Storage Service (Amazon S3). Essa automação simplifica a manutenção de compilações contínuas de pacotes para versões de software em todas as configurações necessárias.

Você pode criar uma fila de criação de pacotes usando um modelo AWS CloudFormation (CloudFormation) ou manualmente no console do Deadline Cloud. O CloudFormation modelo implanta uma fazenda completa com uma fila de produção e uma fila de criação de pacotes já configuradas. A criação da fila a partir do console oferece mais controle sobre as configurações individuais.

Crie uma fila de criação de pacotes com CloudFormation

Você pode usar um CloudFormation modelo para criar um farm do Deadline Cloud que inclui uma fila de criação de pacotes. O modelo configura uma fila de produção e uma fila de criação de pacotes com um canal conda privado do Amazon S3.

Antes de implantar o modelo, crie um bucket do Amazon S3 para armazenar anexos de tarefas e seu canal conda. Você pode criar um bucket a partir do console do Amazon S3. Você precisa do nome do bucket ao implantar o modelo.

Para implantar o CloudFormation modelo
  1. Baixe o modelo https://github.com/aws-deadline/deadline-cloud-samples/raw/mainline/cloudformation/farm_templates/starter_farm/deadline-cloud-starter-farm-template.yaml deadline-cloud-starter-farm-template.yaml do repositório de amostras do Deadline Cloud em. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/cloudformation/farm_templates/starter_farm GitHub

  2. No CloudFormation console, escolha Criar pilha e, em seguida, Com novos recursos (padrão).

  3. Selecione a opção de fazer upload de um arquivo de modelo e, em seguida, faça o upload do deadline-cloud-starter-farm-template.yaml arquivo.

  4. Insira um nome para a pilha, comoStarterFarm, e forneça o nome de um bucket do Amazon S3 para anexos de tarefas e o canal conda.

  5. Siga as etapas do CloudFormation console para concluir a criação da pilha.

Para obter mais informações sobre os parâmetros do modelo e as opções de personalização, consulte o README do starter farm no repositório de amostras do Deadline Cloud em. GitHub

Crie uma fila de criação de pacotes a partir do console

Siga as instruções em Criar uma fila no Guia do usuário do Deadline Cloud. Faça as seguintes alterações em:

  • Na etapa 5, escolha um bucket existente do Amazon S3. Especifique um nome de pasta raiz, por exemploDeadlineCloudPackageBuild, para que os artefatos de construção permaneçam separados dos anexos normais do Deadline Cloud.

  • Na etapa 6, você pode associar a fila de criação de pacotes a uma frota existente ou criar uma frota totalmente nova se sua frota atual não for adequada.

  • Na etapa 9, crie uma nova função de serviço para sua fila de criação de pacotes. Você modificará as permissões para dar à fila as permissões necessárias para fazer upload de pacotes e reindexar um canal conda.

Configurar as permissões da fila de criação de pacotes

Para permitir que a fila de criação de pacotes acesse o /Conda prefixo no bucket Amazon S3 da fila, você deve modificar a função da fila para conceder acesso a ela. read/write A função precisa das seguintes permissões para que os trabalhos de criação de pacotes possam carregar novos pacotes e reindexar o canal.

  • s3:GetObject

  • s3:PutObject

  • s3:ListBucket

  • s3:GetBucketLocation

  • s3:DeleteObject

  1. Abra o console do Deadline Cloud e navegue até a página de detalhes da fila de criação de pacotes.

  2. Escolha a função de serviço de fila e, em seguida, escolha Editar fila.

  3. Role até a seção Função do serviço de fila e escolha Exibir essa função no console do IAM.

  4. Na lista de políticas de permissão, escolha a AmazonDeadlineCloudQueuePolicy para sua fila.

  5. Na guia Permissões, escolha Editar.

  6. Adicione uma nova seção à função de serviço de fila, como a seguir. 111122223333Substitua amzn-s3-demo-bucket e por seu próprio bucket e conta.

    { "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" } } },

Enviar um trabalho de criação de pacote

Depois de criar uma fila de criação de pacotes e configurar as permissões da fila, você pode enviar trabalhos para criar pacotes conda. O submit-package-job script no repositório de amostras do Deadline Cloud GitHub envia um trabalho de criação para uma receita de conda.

Você precisará do seguinte:

Para enviar um trabalho de criação de pacote
  1. Abra a GUI de configuração do Deadline Cloud e defina o farm e a fila padrão para sua fila de criação de pacotes.

    deadline config gui
  2. Vá para o conda_recipes diretório no repositório de amostras.

    cd deadline-cloud-samples/conda_recipes
  3. Execute o submit-package-job script com o diretório de receitas. O exemplo a seguir cria a receita Blender 4.5.

    ./submit-package-job blender-4.5/

    Se a receita exigir um arquivo de origem que você ainda não tenha baixado, o script fornecerá instruções de download. Baixe o arquivo e execute o script novamente.

Depois de enviar o trabalho, use o monitor Deadline Cloud para ver o progresso e o status do trabalho.

O monitor Deadline Cloud mostra o progresso e o status de um trabalho criando um pacote conda.

O monitor mostra as duas etapas do trabalho: criar o pacote e depois reindexar o canal conda. Quando você clica com o botão direito do mouse na tarefa da etapa de criação do pacote e escolhe Exibir registros, o monitor mostra as ações da sessão:

  • Sincronizar anexos — Copia os anexos do trabalho de entrada ou monta um sistema de arquivos virtual.

  • Launch conda — A ação do ambiente de filas. O trabalho de construção não especifica pacotes conda, então essa ação termina rapidamente.

  • Launch CondaBuild Env — Cria um ambiente virtual conda com o software necessário para criar um pacote conda e reindexar um canal.

  • Execução da tarefa — cria o pacote e carrega os resultados para o Amazon S3.

À medida que as ações são executadas, elas enviam registros para a Amazon CloudWatch (CloudWatch). Quando um trabalho for concluído, selecione Exibir registros de todas as tarefas para ver registros adicionais sobre a configuração e a desmontagem do ambiente.