View a markdown version of this page

Hooks, événements et points d'intégration pour les jobs - Deadline Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Hooks, événements et points d'intégration pour les jobs

Deadline Cloud fournit plusieurs points d'intégration où vous pouvez exécuter votre propre logique autour d'une tâche. Un point d'intégration est un endroit du cycle de vie des tâches où Deadline Cloud exécute un code personnalisé ou un contrôle manuel sur un service que vous configurez, tel qu'un script qui prépare un collaborateur ou une règle qui réagit à un événement de travail. Vous utilisez des points d'intégration pour adapter Deadline Cloud à votre pipeline de production : pour installer des logiciels, définir des variables d'environnement, valider ou modifier une tâche, traiter les résultats ou déclencher une automatisation en aval.

Les points d'intégration diffèrent sur trois points :

  • Où le code s'exécute : sur votre poste de travail, sur le travailleur ou dans le AWS cloud.

  • Quand il s'exécute : lors de la soumission, avant ou après le travail, ou en réponse à un événement.

  • Où vous le configurez : dans le cadre d'un poste de travail, d'un ensemble de tâches, d'une file d'attente ou d'un parc de véhicules, ou de votre propre AWS compte.

Le schéma suivant montre où s'exécute chaque point d'intégration pendant le cycle de vie de la tâche. Contrôlez les flux, depuis la soumission sur le poste de travail jusqu'à l'automatisation basée sur les événements dans votre AWS compte, en passant par l'exécution par le personnel.

  • Poste de travail : les hooks de soumission et les scripts de configuration de l'hôte ne s'exécutent qu'une seule fois.

  • Travailleur : les environnements de file d'attente, de travail et d'étapes utilisent des actions d'entrée et de sortie définies par session. L'exécution des tâches exécute votre travail. Les étapes dépendantes sont exécutées une fois la tâche terminée.

  • AWS compte : EventBridge les événements, CloudWatch les métriques et les alarmes répondent de manière asynchrone aux changements d'état.

Points d'intégration du cycle de vie des tâches entre le poste de travail, le travailleur et le cloud.

Le tableau suivant récapitule les points d'intégration. Choisissez-en une en fonction des réponses aux questions précédentes. Les sections situées après le tableau décrivent chaque option et renvoient à des instructions détaillées.

Point d'intégration Fonctionne sur Configuré dans Quand il fonctionne Utiliser pour

Crochets pour soumetteurs

Poste de travail

Configuration du poste de travail (toutes les tâches) ou d'un ensemble de tâches

Lors de la soumission, avant la création de la tâche

Injecter ou remplacer des variables d'environnement, valider ou réécrire un ensemble de tâches, synchroniser avec un logiciel de suivi de production au moment de la soumission

Scripts de configuration d'hôte

Nœuds

Propriété du parc automobile (parc géré par des services)

Une fois par travailleur, au démarrage, avec des privilèges d'administrateur

Configuration réseau, installation de logiciels nécessitant des privilèges élevés

environnements de files d'attente

Nœuds

Propriété de file d'attente

Lorsqu'une session entre ou sort, pour chaque tâche de la file d'attente

Project-level configuration : installations de logiciels non administrateurs, variables d'environnement partagées, configuration de licences ou de démons

Environnements de travail

Nœuds

Bundle de tâches ou modèle de tâche

Avant et après le travail

Per-job installation et démontage

Environnements Step

Nœuds

Ensemble de tâches ou modèle d'étapes

Avant et après une étape

Per-step installation et démontage

Étapes dépendantes

Nœuds

Ensemble de tâches ou modèle d'étape (dependsOn)

Après une étape précédente, le même travail réussit

Post-render travaux nécessitant les fichiers de sortie locaux, tels que le codage d'images dans un film ou la génération de vignettes

Événements Amazon EventBridge (EventBridge)

AWS Nuage

Votre AWS compte (règle et cible)

Lors d'un changement d'état d'une tâche, d'une étape, d'une tâche, d'une flotte ou d'un budget

Suivi de la production, notifications, automatisation du cloud, enchaînement des tâches entre les files d'attente

Métriques et alarmes Amazon CloudWatch (CloudWatch)

AWS Nuage

Votre AWS compte

En continu, par rapport à un seuil

Conditions sans événement, telles que la disponibilité des licences (LicensesInUse) et la capacité de la flotte

Exécutez une logique personnalisée sur le poste de travail

Les hooks de soumission s'exécutent pendant la soumission, avant que la tâche n'atteigne le service. Vous les configurez par poste de travail, où ils s'appliquent à tous les travaux soumis depuis ce poste de travail, ou au sein d'un ensemble de tâches, où ils s'appliquent à cet ensemble. Les hooks de soumission peuvent modifier le bundle à différents moments du flux de soumission. Utilisez-les pour injecter des variables d'environnement, valider une soumission ou synchroniser avec un logiciel de suivi de production au moment de la soumission.

Pour de plus amples informations, veuillez consulter Crochets de soumission.

Exécuter une logique personnalisée sur le travailleur

Les points d'intégration suivants s'exécutent sur l'hôte de rendu. Ils sont imbriqués du plus large au plus étroit :

  • Les scripts de configuration de l'hôte s'exécutent une fois lorsqu'un utilisateur démarre, avec des privilèges d'administrateur. Les scripts de configuration d'hôte sont spécifiques aux flottes gérées par des services (SMF). Dans un parc géré par le client (CMF), vous créez plutôt votre propre image. Utilisez des scripts de configuration de l'hôte pour la configuration du réseau et les installations logicielles au niveau de l'administrateur.

  • Les environnements de file d'attente, de travail et d'étapes définissent chacun des onExit actions onEnter et des actions. Les actions s'exécutent lorsque la session du travailleur entre dans un champ d'application et, dans l'ordre inverse, lorsque la session quitte le champ d'application. Les environnements de file d'attente constituent un bon endroit pour la configuration au niveau du projet qui s'applique à toutes les tâches d'une file d'attente, telles que les logiciels partagés, les variables d'environnement et la configuration des licences ou des démons. Les environnements de travail et d'étapes limitent le champ d'application à une seule tâche ou étape.

  • Les étapes dépendantes ajoutent une deuxième étape qui dependsOn dépend habituellement de l'étape de rendu. Par exemple, vous pouvez effectuer le rendu puis encoder un film, ou le rendre puis générer des miniatures. L'étape reste dans la même tâche, les sorties sont donc déjà locales. Les étapes dépendantes nécessitent un expéditeur personnalisé ou un ensemble de tâches écrit à la main. Job-to-job les dépendances ne sont pas natives. Pour enchaîner des tâches distinctes, utilisez des événements dans le cloud, comme décrit dans la section suivante.

Note

Les environnements sont définis par session et non par tâche. Une onExit action s'exécute à la fin de la session, et non après chaque tâche. Si vous migrez un rappel de Deadline 10 après une tâche, utilisez une étape dépendante plutôt qu'une action environnementale. onExit

Pour plus d’informations, consultez les ressources suivantes :

Réagir aux événements dans le cloud

EventBridge et vous CloudWatch permettent de réagir à l'activité professionnelle sans épuiser la capacité de l'exploitation. Utilisez-les lorsque votre logique répond aux résultats d'une tâche plutôt que de les exécuter dans le cadre d'une tâche.

  • Deadline Cloud envoie les événements avec leur source aws.deadline au bus d'événements par défaut de votre AWS compte. Les événements concernent les modifications de l'état des tâches, des étapes et des tâches, les recommandations relatives à la taille du parc et les seuils budgétaires. Vous êtes propriétaire de la règle, de la fonction AWS Lambda (Lambda) et de la file d'attente de lettres mortes (DLQ). Associez une règle à une fonction Lambda pour les notifications, l'enregistrement des actifs ou pour enchaîner les tâches entre les files d'attente (événement vers Lambda ou () vers). CreateJob La livraison est le meilleur effort possible et les événements peuvent arriver hors norme. Rendez donc vos clients idempotents et configurez de nouvelles tentatives et une DLQ.

  • CloudWatch les indicateurs et les alarmes couvrent les conditions qui EventBridge ne le sont pas, notamment la disponibilité des licences et la capacité de la flotte. Il n'existe aucun événement concernant la disponibilité des licences. Vous pouvez donc vous renseigner sur le nombre de LicensesInUse métriques et de limites. L'Fleet Size Recommendation Changeévénement et la RecommendedFleetSize métrique favorisent également la mise à l'échelle automatique du parc géré par le client.

Pour plus d’informations, consultez les ressources suivantes :

Choisissez un point d'intégration

Suivez les instructions suivantes pour choisir un point d'intégration répondant à un besoin courant :

  • Pour modifier une tâche avant qu'elle ne soit soumise, utilisez un crochet d'envoi.

  • Pour exécuter la logique sur l'hôte de rendu autour de l'œuvre, utilisez un script de configuration de l'hôte ou un environnement de file d'attente, de tâche ou d'étape. Choisissez l'étendue la plus large qui convient et utilisez un environnement de file d'attente pour la configuration au niveau du projet.

  • Pour traiter les résultats d'une tâche alors qu'ils sont encore locaux, utilisez une étape dépendante.

  • Pour réagir aux résultats des tâches sans consommer la capacité de la ferme, utilisez une EventBridge règle avec une fonction Lambda.

  • Pour les conditions sans événement, telles que les limites de licence ou de capacité, utilisez une CloudWatch alarme.

Ressources supplémentaires

Pour les concepts connexes et les documents de référence, consultez les documents suivants :