ServiceNow SDK CLI
ServiceNow SDK コマンドラインインターフェイス (CLI) を使用して、ローカルアプリケーションとインスタンス上のアプリケーション間の変更を管理します。
システムのコマンドラインツールから、「now-sdk」と入力して CLI を起動し、使用可能なコマンドのリストを返すか、「now-sdk [command]」と入力して ServiceNow SDK の使用を開始します。
CLI には、次のコマンドとグローバルオプションが含まれています。
| オプション | 説明 |
|---|---|
| --version | CLI のバージョンを返します。 |
| --help、-h | コマンド、サブコマンド、パラメーターに関する情報を返します。 |
アップグレード
Xanadu リリースのインスタンスで使用するには、最新バージョンの ServiceNow SDK にアップグレードします。
ServiceNow SDKをアップグレードしても、以前にServiceNow SDKで作成または変換したアプリケーションは更新されません。
upgrade コマンドの構造は次のとおりです。now-sdk upgrade [--debug <flag>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| --debug、-d | ブーリアン | アップグレードプロセス中に生成されたデバッグログを返すオプション。 | false |
now-sdk upgrade --debug true認証
インスタンスで認証し、システム上のインスタンスにアクセスするためのユーザー認証情報を格納、更新、または表示します。
auth コマンドには save、clear、list、set-default サブコマンドと次の構造があります。now-sdk auth [<subcommand>]保存
システムのデバイスキーチェーンまたは認証情報マネージャーに認証情報を保存します。プロンプトで、インスタンスを認証するためのパスワードを入力します。
save サブコマンドの構造は次のとおりです。now-sdk auth save [<alias>] [--host <hostname>] [--username <username>] [--default]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| エイリアス | 文字列 | ホストおよびユーザーの認証情報の一意の識別子。 エイリアスは、 |
— |
| --host | 文字列 | アクセスするターゲットインスタンス、およびアプリケーションを展開およびフェッチするターゲットインスタンス。インスタンスは Xanadu リリースである必要があります。 | — |
| --username | 文字列 | インスタンスに対する認証に使用する Now Platform ユーザー名。ユーザーにはアドミンアクセスが必要です。 | — |
| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| --default、-d | ブール | alias をデフォルトのエイリアスとして設定するオプション。 |
false |
例:
now-sdk auth save devuser1 --host https://myinstance.service-now.com --username user1 --default
クリア
システムのデバイスキーチェーンまたは認証情報マネージャーの認証情報を削除します。
clear サブコマンドの構造は次のとおりです。 now-sdk auth clear [<alias>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| エイリアス | 文字列 | ホストおよびユーザーの認証情報の一意の識別子。 | すべて |
now-sdk auth clear devuser1リスト
システムのデバイスキーチェーンまたは認証情報マネージャーに保存された認証情報を表示します。パスワードは返されません。
list サブコマンドの構造は次のとおりです。 now-sdk auth list [<alias>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| エイリアス | 文字列 | ホストおよびユーザーの認証情報の一意の識別子。 | すべて |
now-sdk auth list devuser1set-default
コマンドでデフォルトで使用される認証情報を設定します。
set-default サブコマンドの構造は次のとおりです。 now-sdk auth set-default [<alias>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| エイリアス | 文字列 | ホストおよびユーザーの認証情報の一意の識別子。 | — |
now-sdk auth set-default devuser1作成
カスタムのスコープ対象のアプリケーションを作成し、指定されている場合はインスタンスに展開します。
create コマンドの構造は次のとおりです。now-sdk create <scopeName> <directory> [--appName <name>] [--packageName <name>] [--description <description>] [--sampleTable <flag>] [--offline <flag>] [--auth <alias>] [--interactive <flag>] [--open-browser <flag>] [--projectType <type>] [--template <type>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| scopeName | 文字列 | アプリケーションのスコープ。 スコープ名はインスタンス上で一意で、x_<prefix> で始まり、12 文字未満である必要があります。詳細については、「名前空間識別子」を参照してください。 |
— |
| ディレクトリ | 文字列 | アプリケーションのディレクトリとファイルを作成するローカルディレクトリ。 | 現在の作業ディレクトリ |
| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| --appName | 文字列 | アプリケーションの名前。 | — |
| --packageName | 文字列 | package.json ファイルで使用されるアプリケーションパッケージの名前。 パッケージ名は、NPM パッケージの命名基準に準拠している必要があります。 |
— |
| --description | 文字列 | アプリケーションの簡単な説明。 | — |
| --sampleTable | ブール | アプリケーションでサンプルテーブルを作成するためのオプション。 true の場合、<scope>_to_do という名前のサンプルテーブルが作成されます。 |
false |
| --offline、-o | ブール | インスタンスへのアプリケーションの展開をスキップするためのオプション。 true の場合、スコープ名は作成中に検証されないため、インスタンスに展開する前にスコープ名が有効であることを確認する必要があります。 注: auth パラメーターが設定されている場合、このパラメーターは無視されます。 |
false |
| --auth、-a | 文字列 | インスタンスへの認証に使用する認証情報のエイリアス。 | 設定されている場合は、デフォルトのエイリアス。 |
| --interactive、-i | ブール | アプリケーションを作成するためのプロンプトのガイド付きセットに回答するオプション。 | false |
| --open-browser、-b | ブール | アプリケーションを正常に展開した後に、デフォルトのブラウザでアプリケーションレコードを開くオプション。 注: offline パラメーターが true に設定されている場合、このパラメーターは無視されます。 |
false |
| --projectType | 文字列 | 作成するアプリケーションのタイプを指定するオプション。 このオプションは、アプリケーションで ServiceNow Fluent モジュールと JavaScript モジュールとサードパーティライブラリを使用するか (fluent)、JavaScript モジュールとサードパーティライブラリのみを使用するか (module) に基づいて、デフォルトのアプリケーション構造を決定します。 |
fluent |
| --template、 -t | 文字列 | モジュールで JavaScript と TypeScript のどちらを使用するかを指定するオプション。このオプションは、 package.json ファイルと now.config.json ファイルの構成を決定し、TypeScript プロジェクトの tsconfig.json ファイルを追加します。 | JavaScript |
now-sdk create x_snc_example /path/to/app_folder --appName example-app --description example_app_description --sampleTable true --auth devuser1 --open-browser true --projectType fluent --template typescriptconvert
インスタンスから既存のアプリケーションを変換して、Visual Studio Code でのローカル変更、および ServiceNow SDK でのアプリケーション変更のインスタンスへの展開をサポートします。
アプリケーションを変換すると、 ServiceNow SDK をローカルで使用するために必要なファイルとディレクトリが追加され、プロジェクトの種類に応じて ServiceNow Fluent アプリケーションメタデータがソースコードまたは XML ファイルとしてダウンロードされます。インスタンス上のアプリケーションは変更されません。
convert コマンドの構造は次のとおりです。now-sdk convert <scopeName> <packageName> [<directory>] [--auth <alias>] [--projectType <type>] [--template <type>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| scopeName | 文字列 | 既存アプリケーションのスコープ。 | — |
| packageName | 文字列 | — |
| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| ディレクトリ | 文字列 | アプリケーションのディレクトリとファイルを作成するローカルディレクトリ。 | 現在の作業ディレクトリ |
| --auth、-a | 文字列 | インスタンスへの認証に使用する認証情報のエイリアス。 | 設定されている場合は、デフォルトのエイリアス。 |
| --projectType | 文字列 | 作成するアプリケーションのタイプを指定するオプション。 このオプションは、アプリケーションで ServiceNow Fluent モジュールと JavaScript モジュールとサードパーティライブラリを使用するか (fluent)、JavaScript モジュールとサードパーティライブラリのみを使用するか (module) に基づいて、デフォルトのアプリケーション構造を決定します。 |
fluent |
| --template、 -t | 文字列 | モジュールで JavaScript と TypeScript のどちらを使用するかを指定するオプション。このオプションは、 package.json ファイルと now.config.json ファイルの構成を決定し、TypeScript プロジェクトの tsconfig.json ファイルを追加します。 | JavaScript |
例:
now-sdk convert x_snc_example example-app /path/to/app_folder --auth user1-dev --projectType fluent --template typescript
fetch
インスタンスからアプリケーションメタデータをダウンロードし、それに合わせてローカルアプリケーションのソースコードとメタデータファイルを更新します。
インスタンスからアプリケーションメタデータをフェッチする際に、JavaScript モジュールの更新は含まれません。
fetch コマンドの構造は次のとおりです。now-sdk fetch [--directory <package path>] [--auth <alias>] [--debug <flag>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| --directory | 文字列 | アプリケーションへのパス。 | 現在の作業ディレクトリ |
| --auth、-a | 文字列 | インスタンスへの認証に使用する認証情報のエイリアス。 | 設定されている場合は、デフォルトのエイリアス。 |
| --debug、-d | ブーリアン | フェッチプロセス中に生成されたデバッグログを返すオプション。 | false |
now-sdk fetch --auth devuser1 --directory /path/to/package --debug trueビルド
ソースファイルをコンパイルし、展開可能なパッケージを生成します。サードパーティライブラリの依存関係は、アプリケーションとともにインストールできる XML ファイルに変換されます。
build コマンドの構造は次のとおりです。now-sdk build <source> [--debug <flag>] [--generate-deletes <flag>] [--lint <flag>] [--optimize <flag>]| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| ソース | 文字列 | アプリケーションの package.json ファイルへのパス。 package.json は、アプリケーションのベースディレクトリに存在する必要があります。 |
現在の作業ディレクトリ |
| --debug、-d | ブール | ビルドプロセス中に生成されたデバッグログを返すオプション。 | false |
| --generate-deletes | ブール | ビルド間で削除されたファイルの削除レコードの更新を生成するオプション。 | true |
| --lint | ブーリアン | ビルド前にソースファイルをリントするオプション。 | true |
| --optimize、-o | ブーリアン | 変更されていない依存関係 XML ファイルを再利用してパッケージ化を最適化するオプション。 | true |
now-sdk build /path/to/package --debug true --generate-deletes true --lint true --optimize truedeploy
アプリケーションをインスタンスに展開します。deploy コマンドを使用する前に、build コマンドを使用して展開可能パッケージを生成する必要があります。
deploy コマンドの構造は次のとおりです。
now-sdk deploy [--source <package path>] [--reinstall <flag>] [--auth <alias>] [--open-browser <flag>]
| パラメーター | タイプ | 説明 | デフォルト値 |
|---|---|---|---|
| --source | 文字列 | アプリケーションの package.json ファイルへのパス。 package.json は、アプリケーションのベースディレクトリに存在する必要があります。 |
現在の作業ディレクトリ |
| --reinstall、-r | ブーリアン | インスタンス上のアプリケーションをアンインストールして再インストールし、インスタンス上のメタデータが展開パッケージ内のメタデータと一致するようにするオプション。 警告: インスタンスにはあるがローカルアプリケーションにはないメタデータは削除されます。 EcmaScript モジュール [sys_module] テーブルに不要な以前のバージョンのモジュールがある場合、再インストールパラメーター ( |
false |
| --auth、-a | 文字列 | インスタンスへの認証に使用する認証情報のエイリアス。 | 設定されている場合は、デフォルトのエイリアス。 |
| --open-browser、b | ブール | アプリケーションを正常に展開した後に、デフォルトのブラウザでアプリケーションレコードを開くオプション。 | false |
| --info、-i | ブール | 更新されたステータスやレコードなど、このアプリケーションの最新の展開に関する詳細を返すオプション。このパラメーターを使用すると、アプリケーションは展開されません。 | false |
now-sdk deploy --auth devuser1 --source /path/to/package --reinstall false --open-browser true