Introduction
Utilisez Exécuter un shell sur un autre appareil pour exécuter un script shell en ligne sur un appareil runner sélectionné plutôt que sur l'appareil qui traverse l'automatisation. Cela est utile lorsqu'une commande nécessite des outils, un accès réseau ou des ressources disponibles sur un appareil dédié.
L'automatisation conserve le contexte de l'appareil qui a initié le flux de travail. Les variables système, les champs personnalisés et les variables d'automatisation sont résolus à partir de cet appareil de flux de travail avant que le script shell ne s'exécute sur le runner.
Ajouter l'action
Ouvrez l'automatisation et sélectionnez Modifier.
Sélectionnez + à l'endroit où vous souhaitez ajouter l'action.
Dans la Système catégorie, sélectionnez Exécuter un shell sur un autre appareil.
Dans Appareil runner, recherchez et sélectionnez l'appareil qui exécutera le script shell.
Sélectionnez le langage, le délai d'expiration et Exécuter en tant que contexte.
Saisissez le script dans l'éditeur.
Configurez les conditions et les options supplémentaires, puis sélectionnez Enregistrer.
Le runner fait partie de la configuration de l'action. Chaque appareil du flux de travail qui atteint cette action envoie son script shell rendu à ce runner sélectionné.
Contexte de l'appareil du flux de travail et de l'appareil runner
L'exécution à distance sépare l'appareil géré de l'appareil qui effectue le travail.
Contexte | Appareil utilisé |
Conditions de déclenchement et d'action | Appareil du flux de travail |
Variables système telles que | Appareil du flux de travail |
Valeurs des champs personnalisés | Appareil du flux de travail |
Variables d'automatisation | Exécution d'automatisation en cours pour l'appareil du flux de travail |
Exécution du shell, système d'exploitation, outils installés et accès réseau | Appareil runner |
Exécuter en tant que contexte utilisateur | Appareil runner |
ℹ️ REMARQUE : Une référence telle que {{ level_device_hostname }} retourne le nom d'hôte de l'appareil du flux de travail, et non celui du runner. Utilisez le runner uniquement comme emplacement où le script shell s'exécute.
Exemple
Une automatisation s'exécute pour un poste de travail qui ne peut pas accéder directement à un système de gestion interne. Un serveur disposant des outils et de l'accès réseau requis est sélectionné comme runner. La commande s'exécute sur le serveur tandis qu'une variable telle que {{ level_device_hostname }} identifie toujours le poste de travail qui traverse l'automatisation.
Configurer le script shell
Choisissez le langage, le délai d'expiration et Exécuter en tant que contexte pour l'appareil runner, puis saisissez votre script dans l'éditeur. Insérez des variables système, des variables d'automatisation et des champs personnalisés à l'aide du sélecteur de variables. Level résout ces valeurs à partir de l'appareil du flux de travail avant d'envoyer le script au runner.
Voir Action Shell pour les détails sur le langage, l'éditeur, la sortie, le code de sortie, les conditions et les options supplémentaires qui s'appliquent également ici.
Capturer la sortie
Utilisez Attribuer la sortie de l'action à une variable pour stocker la sortie standard du runner dans une variable d'automatisation. La valeur devient disponible pour les actions ultérieures dans l'exécution d'automatisation de l'appareil du flux de travail.
Disponibilité du runner et gestion des échecs
Le runner doit être disponible pour recevoir et exécuter l'action. S'il ne répond pas, Level effectue de nouvelles tentatives avant que l'action n'expire et soit marquée comme échouée. Le paramètre En cas d'échec de l'action, les paramètres de nouvelle tentative et de délai d'expiration déterminent ce que l'automatisation fait ensuite.
Le code de sortie du script shell est évalué à partir de son exécution sur le runner :
Code de sortie | Résultat |
0 | Action marquée comme réussie |
Différent de zéro | Action marquée comme échouée |
Utilisation de l'appareil runner
Level enregistre lorsqu'un appareil est utilisé comme runner d'automatisation. Un runner référencé par une automatisation active ne peut pas être supprimé tant que vous n'avez pas supprimé ou remplacé cette utilisation dans l'automatisation.
⚠️ AVERTISSEMENT : Avant de modifier ou de supprimer un runner, examinez chaque automatisation qui l'utilise. Ces automatisations dépendent de la disponibilité du runner, de ses outils, de son système d'exploitation et de son accès réseau.
FAQ
Le script shell s'exécute-t-il sur les deux appareils ? Non. Le runner exécute le script. L'appareil du flux de travail fournit le contexte d'automatisation et les valeurs des variables.
Quel appareil les variables système décrivent-elles ? Elles décrivent l'appareil du flux de travail qui traverse l'automatisation.
Quel système d'exploitation et quel contexte utilisateur s'appliquent ? Le système d'exploitation de l'appareil runner et le paramètre Exécuter en tant que paramètre sélectionné pour l'action.
Où la sortie capturée est-elle stockée ? Elle est stockée dans l'exécution d'automatisation de l'appareil du flux de travail et peut être utilisée par les actions ultérieures.
Pourquoi ne puis-je pas supprimer l'appareil runner ? Une automatisation active y fait toujours référence. Ouvrez l'utilisation de l'automatisation de l'appareil, puis supprimez ou remplacez le runner dans ces automatisations.
Pour les détails sur les variables, voir Variables système et Variables d'automatisation.


