ServiceNow CLI
Il ServiceNow CLI s’agit d’une interface de ligne de commande qui vous permet d’effectuer des opérations d’instance à partir de votre système local. Vous pouvez étendre l’interface de ligne de commande pour inclure de nouvelles commandes qui répondent aux besoins de votre application.
Avantages
L’vous ServiceNow CLI permet de :
- Effectuez des opérations CRUD de base sur les enregistrements de votre instance.
- Développez des composants personnalisés et déployez-les sur votre instance pour personnaliser une interface utilisateur.
- Créez des commandes personnalisées qui vous permettent de gérer des applications personnalisées à partir de la ligne de commande.
- Utilisez les scripts in pour simplifier les tâches de ServiceNow CLI configuration et les activités opérationnelles.
Architecture
Les commandes sont stockées dans une table sur l’instance à laquelle vous êtes connecté. Lorsque le ServiceNow CLI se connecte à l’instance, il reçoit toutes les commandes disponibles prises en charge par cette instance.
Les commandes sont mappées à un point de terminaison REST qui s’exécute de manière asynchrone. Pour plus d'informations, consultez Créer une commande personnalisée dans ServiceNow CLI.
Activer ServiceNow CLI
Installer ServiceNow CLI en le demandant à partir de ServiceNow Store. Visitez le site Web ServiceNow Store pour découvrir toutes les applications disponibles et pour obtenir des informations sur la procédure à suivre pour soumettre des demandes à la boutique. Pour obtenir des informations sur les notes de publication cumulatives pour toutes les applications publiées, consultez les ServiceNow Storenotes de publication relatives à l'historique des versions.
Fichier de configuration
Ils ServiceNow CLI stockent les informations de profil dans un fichier config.json qui, par défaut, est stocké dans votre répertoire personnel à l’adresse suivante :
- Linux et Mac : ~/.snc/config.json
- Windows : %USERPROFILE%\.snc\config.json
La CLI utilise ce fichier pour déterminer les informations à utiliser pour se connecter à une instance et les paramètres à utiliser pour générer une sortie. Par défaut, le ServiceNow CLI utilise les paramètres trouvés dans le profil par défaut pour se connecter à une instance. Pour utiliser d’autres paramètres, vous pouvez créer et référencer d’autres profils nommés . Pour en savoir plus, consultez Configurer et gérer vos ServiceNow CLI profils de connexion.
L’exemple suivant montre un fichier de configuration avec un profil par défaut et un profil nommé. Chaque profil peut utiliser des informations d’identification différentes et spécifier différents hôtes et formats de sortie.
{
"profiles":{
"default":{
"host":"https://myinstance.service-now.com",
"loginmethod":"basic",
"username":"admin",
"output":"json",
"hostversion":"Paris",
"appversion":"1.0"
},
"user1":{
"host":"https://otherinstance.service-now.com",
"loginmethod":"basic",
"username":"user1",
"output":"yaml",
"hostversion":"Paris",
"appversion":"1.0"
}
}
}Structure de commande
ServiceNow CLI Les commandes suivent la structure suivante :
- L’appel de base au programme
SNC. - Groupe de commandes de niveau supérieur suivi de tous les groupes de commandes enfants.
- Commande qui spécifie l’opération à effectuer.
- Arguments CLI généraux requis par l’opération. Vous pouvez spécifier les arguments dans n’importe quel ordre.
$ snc <command-group> <command> [arguments]Les arguments peuvent prendre différents types de valeurs d’entrée, telles que des nombres, des chaînes et des objets JSON. Les types pris en charge dépendent de la commande que vous spécifiez.
Valeurs des arguments
De nombreuses valeurs d’argument dans le ServiceNow CLI sont de simples valeurs de chaîne ou numériques, telles que la table et le nom de table dans l’exemple suivant.
$ snc record create --table incident --data "{short_description: 'New Incident'}"Vous pouvez entourer de guillemets ou non les chaînes qui ne contiennent pas d’espace. Toutefois, vous devez utiliser des guillemets autour des chaînes qui incluent un ou plusieurs espaces.
Formats de sortie
Il ServiceNow CLI prend en charge quatre formats de sortie :
json: la sortie est au format JSON. Il s’agit de l’option par défaut.{ "default": { "appversion": "1.0.8", "host": "https://myinstance.service-now.com", "hostversion": "Paris", "loginmethod": "basic", "output": "json", "username": "admin" }, "user1": { "appversion": "1.0.8", "host": "https://otherinstance.service-now.com", "hostversion": "Paris", "loginmethod": "basic", "output": "yaml", "username": "admin" } }yaml: la sortie est formatée en YAML. Utilisez YAML pour gérer la sortie avec des services et des outils qui émettent ou consomment des chaînes au format YAML.default: appversion: 1.0.8 host: https://myinstance.service-now.com hostversion: Paris loginmethod: basic output: json username: admin user1: appversion: 1.0.8 host: https://otherinstance.service-now.com hostversion: Paris loginmethod: basic output: yaml username: admintext: la sortie est mise en forme sous la forme de plusieurs lignes de valeurs de chaîne séparées par des tabulations. Utilisez cette sortie avec les outils de texte UNIX traditionnels tels que grep, sed et awk, ainsi qu’avec le traitement de texte effectué par PowerShell.default https://myinstance.service-now.com Paris 1.0.8 basic admin json user1 https://otherinstance.service-now.com Paris 1.0.8 basic admin yamltable: La sortie est formatée sous la forme d’un tableau qui présente les informations dans un format lisible par l’homme.NAME HOST HOST VERSION APP VERSION LOGIN METHOD USERNAME OUTPUT ------------------------------------------------------------------------------- default myinstance Paris 1.0.8 basic admin json user1 otherinstance Paris 1.0.8 basic admin yamlnone: l’interface de ligne de commande n’imprime pas la sortie sur la console. Les messages de réussite, d’erreur et de progression s’affichent toujours.
Vous pouvez spécifier la sortie de la commande de deux manières :
- Utiliser l’option
de sortiedans un profil nommé dans le fichier de configuration - L’exemple suivant définit le format de sortie par défaut sur texte.
{ "profiles":{ "default":{ "output":"text" } } - Utiliser l’argument
--outputsur la ligne de commande - L’exemple suivant définit la sortie d’une commande unique sur JSON. Cette option de la commande remplace toute valeur actuellement définie dans le fichier de configuration.
$ snc record query --table incident --query ‘active=true’ --output json