For the complete documentation index, see llms.txt. This page is also available as Markdown.

Flux de travail

Les flux de travail PowerShell Universal vous permettent d'enchaîner des scripts et des invites d'IA dans un seul flux d'automatisation. Les flux de travail sont utiles lorsque vous devez transmettre la sortie d'une étape à la suivante, créer des embranchements selon les résultats précédents ou ajouter un traitement assisté par l'IA entre les étapes d'automatisation.

Les flux de travail peuvent être créés dans la console d'administration et gérés depuis PowerShell. Lorsqu'un flux de travail s'exécute, il crée une tâche de flux de travail que vous pouvez surveiller depuis le même historique de tâches utilisé pour les scripts.

Création d'un flux de travail

Pour créer un flux de travail dans la console d'administration, allez à Automation / Workflows et cliquez sur Create Workflow.

Les flux de travail nécessitent un nom et peuvent facultativement définir des paramètres. Ces paramètres sont affichés lorsque le flux de travail est démarré manuellement et sont accessibles aux expressions et aux activités pendant l'exécution.

Utilisation du concepteur de flux de travail

Le concepteur de flux de travail fournit un éditeur visuel pour disposer et configurer votre flux de travail. Lorsque vous ouvrez un flux de travail, PSU affiche le concepteur pour cette définition de flux de travail.

Ajout d'activités

PowerShell Universal prend en charge les activités de type script et invite d'IA dans les flux de travail. En arrière-plan, les flux de travail utilisent aussi des activités conteneurs telles que les nœuds d'organigramme et de séquence pour définir la disposition globale.

Pour ajouter une activité, faites-la glisser depuis le volet des activités situé à gauche du concepteur vers une zone de dépôt sur le canevas.

Définition des propriétés d'activité

Sélectionnez une activité pour modifier ses propriétés dans le volet de droite. Les propriétés disponibles dépendent du type d'activité.

Pour les activités de script, PSU expose les paramètres PowerShell du script comme propriétés d'activité. Cela permet de lier des valeurs fixes ou des expressions d'exécution sans réécrire le script uniquement pour l'utiliser dans un flux de travail.

Utilisation des expressions PowerShell

Certaines propriétés d'activité prennent en charge les expressions PowerShell. Les expressions sont évaluées à l'exécution et peuvent référencer les valeurs d'entrée du flux de travail et la sortie de l'activité précédente.

Utilisez des expressions lorsqu'une valeur de propriété doit être calculée à l'exécution au lieu d'être stockée comme littéral fixe. Par exemple, vous pouvez activer ou désactiver un comportement selon un paramètre de flux de travail ou sélectionner des valeurs dans la sortie de l'étape précédente.

Données de flux de travail

Les expressions et les activités peuvent accéder à l'état du flux de travail au moyen de variables intégrées.

Objet Workflow

Utilisez la variable $Workflow dans les expressions PowerShell pour accéder aux valeurs des paramètres de flux de travail.

Par exemple, vous pouvez définir une propriété booléenne selon l'environnement sélectionné.

Vous pouvez aussi transmettre directement un paramètre de flux de travail de type chaîne à une propriété d'activité.

Les paramètres de flux de travail sont définis sur le flux de travail lui-même. Utilisez-les pour des valeurs qui devraient être fournies au démarrage du flux de travail, comme un nom d'environnement, une période de conservation ou une cible d'approbation.

PSUItem

La variable $PSUItem donne accès à la sortie de l'activité précédente. Le type d'objet dépend de ce que cette activité a retourné.

Par exemple, un script peut accepter $PSUItem en entrée.

Vous pouvez aussi référencer PSUItem dans les invites d'IA.

Vous pouvez aussi utiliser $PSUItem ou $Output dans les expressions PowerShell pour modifier le comportement d'une activité selon la sortie de l'activité précédente.

Utilisez $PSUItem lorsque vous voulez transmettre une sortie structurée d'une activité à la suivante. C'est la principale façon de créer des flux de travail à plusieurs étapes sans stocker l'état intermédiaire ailleurs.

Deconstruct Hashtable Output

Survol Deconstruct Hashtable Output contrôle ce qui arrive à la valeur de retour d'une étape Script une fois l'étape terminée. Lorsque l'option est activée, PowerShell Universal prend un Hashtable à objet unique retourné par le script et répartit ses clés/valeurs dans l'état de sortie de la portée du flux de travail, de sorte que les étapes suivantes peuvent référencer chaque clé comme une sortie de flux de travail de premier ordre au lieu de fouiller dans $PSUItem. Lorsque l'option est désactivée, cette répartition n'a pas lieu. L'étape suivante voit toujours la sortie brute de l'étape précédente au moyen de $PSUItem, mais chaque clé doit être décompressée manuellement. Comportement Lorsque l'activité Script se termine, PowerShell Universal : 1. Lit la sortie du pipeline de l'étape. 2. Si DeconstructHashtableOutput est true : • Continue seulement si l'étape a retourné exactement un objet de sortie avec des données non vides. • Si l'objet de base est un Hashtable, parcourt chaque clé et copie chaque paire key → value dans l'état de sortie du flux de travail (accessible depuis les étapes suivantes). 3. Dans tous les cas, stocke la sortie brute pour $PSUItem dans l'étape suivante (état de l'activité précédente). Exemple Script de l'étape 1 :

Avec DeconstructHashtableOutput = $true (valeur par défaut), l'étape 2 peut référencer chaque clé directement au moyen de l'état de sortie du flux de travail :

En définissant l'état de sortie de l'activité de flux de travail, l'activité suivante peut recevoir la sortie comme entrée pour les paramètres correspondants.

Avec DeconstructHashtableOutput = $false, l'étape 2 voit toujours la table de hachage au moyen de $PSUItem et doit la décompresser explicitement :

Pièges • Exactement un objet de pipeline. La déconstruction ne se déclenche que lorsque le script émet une seule sortie. Tout Write-Output égaré, toute expression non supprimée ou toute émission accidentelle de plusieurs valeurs la désactive silencieusement — même si le paramètre est activé. Si vous voyez des sorties de flux de travail vides, convertissez la sortie indésirable en $null ou acheminez-la vers Out-Null pour limiter le pipeline à une seule table de hachage. • Hashtable seulement — pas PSCustomObject. Le code vérifie la présence de Hashtable sur l'objet de base. [pscustomobject]@{ ... } ne sera pas déconstruit. Utilisez @{ ... } si vous voulez le comportement de répartition. • La sortie vide ou composée d'espaces est ignorée. Si la sortie unique du script ne contient pas de données, la déconstruction est ignorée. • $PSUItem fonctionne toujours dans les deux cas. Désactiver le paramètre n'empêche pas d'accéder à la sortie de l'étape précédente — cela change seulement si les clés sont exposées comme sorties de flux de travail nommées. Quand la désactiver La valeur par défaut ($true) est le bon choix pour la plupart des flux de travail. Désactivez-la lorsque : • Votre script doit légitimement émettre plusieurs objets de pipeline et que vous ne voulez pas que PSU tente une sémantique de répartition. • Vous voulez que les étapes suivantes reçoivent la table de hachage comme un seul objet opaque au moyen de $PSUItem et gèrent elles-mêmes la décompression. • Vous retournez un Hashtable dont les clés entrent en conflit avec des noms déjà présents dans l'état de sortie du flux de travail et vous voulez éviter de les écraser. Définir la valeur au moyen de New-PSUWorkflowActivity

Exemple de modèle de flux de travail

Un modèle courant est le suivant :

  1. Exécuter un script pour recueillir des données.

  2. Transmettre la sortie à une invite d'IA ou à un autre script.

  3. Utiliser le résultat dans un script final pour agir.

Par exemple :

  • Une activité de script retourne une liste de processus.

  • Une invite d'IA identifie le processus qui utilise le plus de mémoire.

  • Un script final reçoit ce résultat au moyen de $PSUItem et envoie une notification.

Cette approche permet à chaque étape de rester ciblée et facilite le test et le dépannage du flux de travail.

Exécution des flux de travail

Sur demande

Les flux de travail peuvent être exécutés sur demande en cliquant sur l'icône Play dans la console d'administration. Si le flux de travail définit des paramètres, PSU les demande dans le dialogue d'exécution. Après le démarrage du flux de travail, PSU vous redirige vers la page de la tâche du flux de travail.

Planification

Les flux de travail prennent en charge les mêmes options de planification que les scripts, y compris les horaires CRON, ponctuels et continus. Vous pouvez créer des horaires de flux de travail depuis Automation / Schedules ou en assignant un horaire directement au flux de travail.

Utilisez les horaires lorsque le flux de travail doit s'exécuter sans intervention manuelle, par exemple pour un nettoyage nocturne, une validation d'environnement ou une classification périodique assistée par l'IA.

Invoke-PSUWorkflow

Invoke-PSUWorkflow vous permet d'exécuter des flux de travail depuis PowerShell ou depuis d'autres parties de la plateforme PowerShell Universal. Comme avec Invoke-PSUScript, vous pouvez fournir des valeurs de paramètres lorsque vous invoquez le flux de travail.

Gestion des flux de travail avec PowerShell

Vous pouvez gérer les flux de travail au moyen du module Universal en plus de la console d'administration.

Les applets de commande de flux de travail principales sont :

  • Get-PSUWorkflow

  • New-PSUWorkflow

  • Set-PSUWorkflow

  • Remove-PSUWorkflow

  • New-PSUWorkflowParameter

  • New-PSUWorkflowActivity

  • Invoke-PSUWorkflow

Définition des paramètres de flux de travail

Utilisez New-PSUWorkflowParameter pour définir les métadonnées d'entrée du flux de travail, comme une valeur par défaut, si le paramètre est obligatoire et le texte d'aide affiché aux utilisateurs.

Définition des activités dans PowerShell

Utilisez New-PSUWorkflowActivity pour créer des définitions d'activité de flux de travail.

  • Utilisez -Parameters pour les valeurs littérales.

  • Utilisez -Expressions pour les expressions PowerShell évaluées à l'exécution.

  • Pour -Type Script, PSU peut exposer les paramètres dynamiques du script cible.

Création d'un flux de travail dans PowerShell

New-PSUWorkflow accepte soit une chaîne de définition brute, soit un bloc de script qui retourne une définition d'activité de flux de travail unique.

Surveillance des exécutions de flux de travail

Les exécutions de flux de travail apparaissent dans l'historique des tâches comme les tâches de script. Utilisez la page de la tâche pour inspecter :

  • état actuel

  • sortie de flux

  • sortie du pipeline

  • erreurs

C'est le meilleur endroit pour dépanner les étapes de flux de travail en échec et vérifier les données transmises entre les activités.

Dépannage

  • Si une propriété doit être calculée à l'exécution, utilisez une expression au lieu d'une valeur fixe.

  • $PSUItem contient uniquement la sortie de l'activité précédente. La première activité d'un flux de travail n'aura pas de sortie antérieure.

  • Les propriétés d'activité de script sont basées sur les métadonnées du script cible. Si un paramètre de script n'apparaît pas comme prévu, vérifiez le chemin du script et le nom du paramètre.

  • Les noms de paramètres d'activité et les clés d'expression doivent correspondre à des propriétés valides pour ce type d'activité.

  • Si vous avez besoin d'une exécution récurrente, attachez un horaire plutôt que d'invoquer le flux de travail manuellement.

Sujets connexes

Mis à jour

Ce contenu vous a-t-il été utile ?