ServiceNow CLI
ServiceNow CLI ist eine Befehlszeilenschnittstelle, mit der Sie Instanzvorgänge von Ihrem lokalen System aus ausführen können. Sie können die CLI um neue Befehle erweitern, die den Anforderungen Ihrer Anwendung entsprechen.
Vorteile
Mit ServiceNow CLI können Sie:
- Führen Sie grundlegende CRUD-Operationen für Datensätze in Ihrer Instanz durch.
- Entwickeln Sie benutzerdefinierte Komponenten, und stellen Sie sie in Ihrer Instanz bereit, um eine Benutzeroberfläche zu personalisieren.
- Erstellen Sie benutzerdefinierte Befehle, mit denen Sie benutzerdefinierte Anwendungen über die Befehlszeile verwalten können.
- Verwenden Sie ServiceNow CLI in Skripts, um Setup-Aufgaben und operative Aktivitäten zu vereinfachen.
Architektur
Befehle werden in einer Tabelle in der Instanz gespeichert, mit der Sie verbunden sind. Wenn ServiceNow CLI eine Verbindung zur Instanz herstellt, werden alle verfügbaren Befehle empfangen, die von dieser Instanz unterstützt werden.
Befehle werden einem REST-Endpunkt zugeordnet, der asynchron ausgeführt wird. Weitere Informationen finden Sie unter Erstellen Sie einen benutzerdefinierten Befehl in ServiceNow CLI.
ServiceNow CLI aktivieren
Installieren Sie ServiceNow CLI, indem Sie es von ServiceNow Store anfordern. Besuchen Sie die ServiceNow Store-Website, um alle verfügbaren Apps anzuzeigen und Informationen zum Senden von Anforderungen an den Store zu erhalten. Kumulative Informationen zum Release für alle veröffentlichten Apps finden Sie in den Release-Hinweisen zum ServiceNow Store-Versionsverlauf.
Konfigurationsdatei
ServiceNow CLI speichert Profilinformationen in einer Datei config.json, die standardmäßig in Ihrem Stammverzeichnis unter dem folgenden Pfad gespeichert ist:
- Linux und Mac: ~/.snc/config.json
- Windows: %USERPROFILE%\.snc\config.json
Die CLI verwendet diese Datei, um zu bestimmen, welche Informationen zum Herstellen einer Verbindung mit einer Instanz verwendet werden sollen und welche Einstellungen zum Generieren der Ausgabe verwendet werden sollen. Standardmäßig verwendet ServiceNow CLI die Einstellungen im Standardprofil, um eine Verbindung zu einer -Instanz herzustellen. Um alternative Einstellungen zu verwenden, können Sie zusätzliche benannte Profile erstellen und referenzieren. Weitere Informationen finden Sie unter Konfigurieren und verwalten Sie Ihre ServiceNow CLI -Verbindungsprofile.
Das folgende Beispiel zeigt eine Konfigurationsdatei mit einem Standardprofil und einem benannten Profil. Jedes Profil kann unterschiedliche Anmeldeinformationen verwenden und unterschiedliche Hosts und Ausgabeformate angeben.
{
"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"
}
}
}Befehlsstruktur
ServiceNow CLI -Befehle folgen dieser Struktur:
- Der Basisaufruf für das
SNC-Programm. - Die Befehlsgruppe der obersten Ebene, gefolgt von allen untergeordneten Befehlsgruppen.
- Der Befehl, der angibt, welcher Vorgang ausgeführt werden soll.
- Allgemeine CLI-Argumente, die für den Vorgang erforderlich sind. Sie können Argumente in beliebiger Reihenfolge angeben.
$ snc <command-group> <command> [arguments]Argumente können verschiedene Arten von Eingabewerten annehmen, z. B. Zahlen, Zeichenfolgen und JSON-Objekte. Die unterstützten Typen hängen vom angegebenen Befehl ab.
Argumentwerte
Viele Argumentwerte in ServiceNow CLI sind einfache Zeichenfolgen oder numerische Werte, z. B. die Tabelle und der Tabellenname im folgenden Beispiel.
$ snc record create --table incident --data "{short_description: 'New Incident'}"Sie können Zeichenfolgen, die keine Leerzeichen enthalten, in Anführungszeichen setzen oder nicht. Sie müssen jedoch Anführungszeichen um Zeichenfolgen verwenden, die ein oder mehrere Leerzeichen enthalten.
Ausgabeformate
ServiceNow CLI unterstützt vier Ausgabeformate:
json: Die Ausgabe wird als JSON formatiert. Dies ist die Standardeinstellung.{ "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: Die Ausgabe wird als YAML formatiert. Verwenden Sie YAML, um die Ausgabe mit Services und Tools zu verarbeiten, die YAML-formatierte Zeichenfolgen ausgeben oder verbrauchen.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: Die Ausgabe wird als mehrere Zeilen mit durch Tabulatoren getrennten Zeichenfolgenwerten formatiert. Verwenden Sie diese Ausgabe mit herkömmlichen UNIX-Textwerkzeugen wie grep, sed und awk und der von PowerShell durchgeführten Textverarbeitung.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: Die Ausgabe wird als Tabelle formatiert, die die Informationen in einem für Menschen lesbaren Format darstellt.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 yamlkeine: Die CLI gibt die Ausgabe nicht an die Konsole aus. Erfolgs-, Fehler- und Fortschrittsmeldungen werden weiterhin angezeigt.
Sie können die Befehlsausgabe auf zwei Arten angeben:
- Verwenden Sie die
Ausgabeoptionin einem benannten Profil in der Konfigurationsdatei - Im folgenden Beispiel wird das Standardausgabeformat auf Text festgelegt.
{ "profiles":{ "default":{ "output":"text" } } - Verwenden Sie das Argument
--outputin der Befehlszeile - Im folgenden Beispiel wird die Ausgabe eines einzelnen Befehls auf JSON festgelegt. Diese Option im Befehl überschreibt alle derzeit festgelegten Werte in der Konfigurationsdatei.
$ snc record query --table incident --query ‘active=true’ --output json