View a markdown version of this page

Ganchos, eventos e pontos de integração para trabalhos - Nuvem de prazos

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á.

Ganchos, eventos e pontos de integração para trabalhos

O Deadline Cloud fornece vários pontos de integração nos quais você pode executar sua própria lógica em torno de um trabalho. Um ponto de integração é um local no ciclo de vida do trabalho em que o Deadline Cloud executa um código personalizado ou entrega o controle a um serviço que você configura, como um script que prepara um trabalhador ou uma regra que reage a um evento do trabalho. Você usa pontos de integração para adaptar o Deadline Cloud ao seu pipeline de produção: para instalar software, definir variáveis de ambiente, validar ou alterar um trabalho, processar resultados ou acionar a automação posterior.

Os pontos de integração diferem em três questões:

  • Onde o código é executado — na sua estação de trabalho, no trabalhador ou na AWS nuvem.

  • Quando é executado — na submissão, antes ou depois do trabalho ou em resposta a um evento.

  • Onde você o configura: em uma configuração de estação de trabalho, em um pacote de tarefas, em uma propriedade de fila ou frota ou em sua própria conta. AWS

O diagrama a seguir mostra onde cada ponto de integração é executado durante o ciclo de vida do trabalho. O controle flui desde o envio na estação de trabalho até a execução do trabalhador e até a automação orientada por eventos em sua conta. AWS

  • Estação de trabalho — Os ganchos do remetente e os scripts de configuração do host são executados uma vez.

  • Trabalhador — Ambientes de fila, trabalho e etapas usam ações de entrada e saída com escopo de sessão. A execução da tarefa executa seu trabalho. As etapas dependentes são executadas após a conclusão da tarefa.

  • AWS conta — EventBridge eventos, CloudWatch métricas e alarmes respondem de forma assíncrona às mudanças de estado.

Pontos de integração do ciclo de vida do trabalho na estação de trabalho, no trabalhador e na nuvem.

A tabela a seguir resume os pontos de integração. Escolha um com base nas respostas às perguntas anteriores. As seções após a tabela descrevem cada opção e contêm links para instruções detalhadas.

Ponto de integração Funciona em Configurado em Quando é executado Use para

Ganchos para remetentes

Estação de trabalho

Configuração da estação de trabalho (todas as tarefas) ou um pacote de tarefas

Durante o envio, antes da criação do trabalho

Injete ou substitua variáveis de ambiente, valide ou reescreva um pacote de tarefas, sincronize com o software de rastreamento de produção no momento do envio

Scripts de configuração do host

Operador

Propriedade da frota (frota gerenciada por serviços)

Uma vez por trabalhador, na inicialização, com privilégios de administrador

Configuração de rede, instalação de software que precisa de privilégios elevados

Ambientes de fila

Operador

Propriedade da fila

Quando uma sessão entra ou sai, para cada trabalho na fila

Project-level configuração: instalações de software não administrativo, variáveis de ambiente compartilhadas, configuração de licença ou daemon

Ambientes de trabalho

Operador

Pacote de trabalho ou modelo de trabalho

Antes e depois de um trabalho

Per-job configuração e desmontagem

Ambientes Step

Operador

Pacote de tarefas ou modelo de etapa

Antes e depois de uma etapa

Per-step configuração e desmontagem

Etapas dependentes

Operador

Pacote de tarefas ou modelo de etapa () dependsOn

Depois de uma etapa anterior, o mesmo trabalho é bem-sucedido

Post-render trabalho que precisa dos arquivos de saída localmente, como codificar quadros em um filme ou gerar miniaturas

Eventos Amazon EventBridge (EventBridge)

AWS Nuvem

Sua AWS conta (regra e meta)

Em uma alteração do estado de trabalho, etapa, tarefa, frota ou orçamento

Rastreamento de produção, notificações, automação na nuvem, encadeamento de trabalhos em filas

Métricas e alarmes da Amazon CloudWatch (CloudWatch)

AWS Nuvem

Sua AWS conta

Continuamente, contra um limite

Condições que não têm nenhum evento, como disponibilidade da licença (LicensesInUse) e capacidade da frota

Execute a lógica personalizada na estação de trabalho

Os ganchos do remetente são executados durante o envio, antes que o trabalho chegue ao serviço. Você os configura por estação de trabalho, onde eles se aplicam a todos os trabalhos enviados dessa estação de trabalho, ou dentro de um pacote de trabalhos, onde se aplicam a esse pacote. Os ganchos do remetente podem alterar o pacote em diferentes pontos do fluxo de envio. Use-os para injetar variáveis de ambiente, validar um envio ou sincronizar com o software de rastreamento de produção no momento do envio.

Para obter mais informações, consulte Ganchos de envio.

Execute uma lógica personalizada no trabalhador

Os pontos de integração a seguir são executados no host de renderização. Eles estão aninhados do escopo mais amplo ao mais estreito:

  • Os scripts de configuração do host são executados uma vez quando um trabalhador é iniciado, com privilégios de administrador. Os scripts de configuração do host são específicos para frotas gerenciadas por serviços (SMFs). Em uma frota gerenciada pelo cliente (CMF), em vez disso, você cria sua própria imagem. Use scripts de configuração de host para configuração de rede e instalações de software em nível de administrador.

  • Cada ambiente de fila, trabalho e etapa define onEnter e ageonExit. As ações são executadas quando a sessão do trabalhador entra em um escopo e, na ordem inversa, quando a sessão sai do escopo. Ambientes de fila são um bom lugar para a configuração em nível de projeto que se aplica a todos os trabalhos em uma fila, como software compartilhado, variáveis de ambiente e configuração de licença ou daemon. Os ambientes de trabalho e etapas restringem o escopo a um único trabalho ou etapa.

  • As etapas dependentes adicionam uma segunda etapa que costuma dependsOn depender da etapa de renderização. Por exemplo, você pode renderizar e depois codificar um filme ou renderizar e gerar miniaturas. A etapa permanece na mesma tarefa, então as saídas já são locais. As etapas dependentes exigem um remetente personalizado ou um pacote de tarefas escrito à mão. Job-to-job dependências não são nativas. Para encadear trabalhos separados, use eventos na nuvem, conforme descrito na seção a seguir.

nota

Os ambientes têm escopo de sessão, não por tarefa. Uma onExit ação é executada na desmontagem da sessão, não após cada tarefa. Se você estiver migrando um callback pós-tarefa do Deadline 10, use uma etapa dependente em vez de uma ação ambiental. onExit

Para saber mais, consulte:

Responda a eventos na nuvem

EventBridge e CloudWatch permitem que você reaja à atividade profissional sem consumir a capacidade da fazenda. Use-os quando sua lógica responder aos resultados do trabalho, em vez de ser executada como parte de um trabalho.

  • O Deadline Cloud envia eventos com a fonte aws.deadline para o barramento de eventos padrão em sua AWS conta. Os eventos abrangem mudanças no estado de tarefas, etapas e tarefas, recomendações de tamanho da frota e limites de orçamento. Você possui a regra, a função AWS Lambda (Lambda) e a fila de cartas mortas (DLQ). Conecte uma regra a uma função Lambda para notificações, registro de ativos ou para encadear trabalhos em filas (evento para Lambda ou () para). CreateJob A entrega é o melhor esforço possível e os eventos podem chegar fora de ordem, portanto, torne seus consumidores idempotentes e configure novas tentativas e um DLQ.

  • CloudWatch métricas e alarmes abrangem condições que EventBridge não cobrem, principalmente a disponibilidade de licenças e a capacidade da frota. Não existe nenhum evento para a disponibilidade da licença, então você alerta sobre as contagens de LicensesInUse métricas e limites. O Fleet Size Recommendation Change evento e a RecommendedFleetSize métrica também impulsionam o escalonamento automático da frota gerenciado pelo cliente.

Para saber mais, consulte:

Escolha um ponto de integração

Use as diretrizes a seguir para escolher um ponto de integração para uma necessidade comum:

  • Para alterar um trabalho antes de ser enviado, use um gancho de envio.

  • Para executar a lógica no host de renderização durante o trabalho, use um script de configuração do host ou um ambiente de fila, trabalho ou etapa. Escolha o escopo mais amplo adequado e use um ambiente de fila para configuração em nível de projeto.

  • Para processar as saídas das tarefas enquanto elas ainda são locais, use uma etapa dependente.

  • Para reagir aos resultados do trabalho sem consumir a capacidade da fazenda, use uma EventBridge regra com uma função Lambda.

  • Para condições que não tenham nenhum evento, como limites de licença ou capacidade, use um CloudWatch alarme.

Recursos adicionais do

Para conceitos relacionados e material de referência, consulte o seguinte: