CLIコマンドリファレンス
SDK gemをインストールした後にCLIで使用できるコマンドについて詳しく学びます。
workato
Workato gemのルートコマンド。 workato helpと同義です。
利用状況
$ workato
出力
Workato gemで使用可能なコマンドの説明。
workato edit
暗号化ファイルを作成または編集します。
利用状況
$ workato edit <PATH>
入力
| 入力 | 説明 |
|---|---|
| EDITOR | ファイルの編集に使用するエディタ。 例:nano |
| PATH | 作成または更新するファイルへのパスをドット表記で指定します。 |
オプション
| オプション | 説明 |
|---|---|
| --key, -k | 暗号化/復号化キーへのパス。 指定しない場合、デフォルトは master.keyです。master.keyファイルが存在せず、オプションも指定されていない場合、新しいmaster.keyファイルが作成されます。
|
結果
暗号化ファイルが作成または更新されます。 ファイルが以前に存在せず、オプションが指定されていない場合はmaster.keyが作成されます。
例
Windowsの場合:
$ set EDITOR=notepad
$ workato edit settings.yaml.enc
Macの場合:
$ EDITOR="nano" workato edit settings.yaml.enc
workato exec
テストのために、コネクタ内の特定のlambda関数を実行します。
利用状況
$ workato exec <PATH> <OPTIONS>
入力
| 入力 | 説明 |
|---|---|
| PATH | 実行するlambdaへのパスをドット表記で指定します。 例:actions.search_customers.executeは、アクションsearch_customersおよびexecute lambdaに対応します。 パスactions.search_customersを使用してアクション全体をシミュレートすることもできます。
|
オプション
| オプション | 説明 |
|---|---|
| -c or --connector | 実行するconnector.rbファイルへのパス。 指定しない場合、デフォルトはconnector.rbです。
|
| -s or --settings | 認証情報を保存するsettings.yamlファイルへのパス。 指定しない場合、デフォルトはsettings.yaml.enc、次にsettings.yamlです。
|
| -n or --connection | settings.yamlファイル内のコネクション名。 複数の認証情報セットがある場合にのみ必要です。
|
| -i or --input | 入力を保存するJSONファイルへのパス。 execute、webhook_notification、またはpolllambdaに使用されます。
|
| --closure | closureを保存するJSONファイルへのパス。 初回poll後のpollをシミュレートするために、polllambdaで使用されます。
|
| -a or --args | メソッドまたはpicklistsの引数を保存するJSONファイルへのパス。 呼び出しをシミュレートするために、methodsまたはpick_listslambdaで使用されます。 引数が必要であるにもかかわらず指定されていない場合、エラーが発生することがあります。
|
| --extended-input-schema and --extended-output-schema | extended_input_schemaおよびextended_output_schemaを保存するJSONファイルへのパス。 execute、webhook_notification、またはpolllambdaに使用されます。
|
| --config-fields | config_fieldsデータを保存するJSONファイルへのパス。 object_definitions、input_fields、またはoutput_fieldslambdaに使用されます。
|
| --continue | continueデータを保存するJSONファイルへのパス。 multistepが実装されているexecutelambdaに使用されます。
|
| --from | 特定のstream呼び出しの開始バイト範囲。 streamslambdaに使用されます。
|
| --frame_size | 特定のstream呼び出しで要求されるフレームサイズ(バイト単位)。 streamslambdaに使用されます。
|
| --webhook-headers | 受信webhookヘッダーデータを保存するJSONファイルへのパス。 webhook_notificationlambdaに使用されます。
|
| --webhook-params | 受信webhookパラメーターデータを保存するJSONファイルへのパス。 webhook_notificationlambdaに使用されます。
|
| --webhook-payload | 受信webhookペイロードデータを保存するJSONファイルへのパス。 webhook_notificationlambdaに使用されます。
|
| --webhook-url | webhook URLを保存するファイルへのパス。 webhook_subscribelambdaに使用されます。
|
| -o or --output | lambda関数の出力を保存するファイルへのパス。 |
| --oauth2-code | acquirelambda関数を呼び出すために使用するOAuth2 code。
|
| --redirect-url | refreshlambda関数を呼び出すために使用するredirect-url。
|
| --refresh-token | refreshlambda関数を呼び出すために使用するrefresh-token。
|
| --verbose | 実行の詳細を表示するには、このオプションを含めます。 これは、すべてのHTTPリクエストおよびリクエストペイロードが表示されることを意味します。 レスポンス本文は表示されませんが、byebugで検査できます。
|
| --debug | 最後に発生したエラーだけでなく、stacktrace全体のエラーを表示するには、このオプションを含めます。 |
結果
lambda関数の出力。
例
特定のメソッドを呼び出します。
$ workato exec methods.sample_method --args='input/sample_method_input.json'acquire lambdaを呼び出します。 コネクタとsettingsがすべて指定されています。
workato exec connection.authorization.acquire --connector='zoominfo.rb' --settings='settings.yaml' --connection='My Valid Connection' --verbosetest lambdaを呼び出します。 コネクタとsettingsがすべて指定されています。
workato exec test --connector='zoominfo.rb' --settings='settings.yaml' --connection='My Valid Connection' --verbose特定のアクションを呼び出し、入力を渡します。
$ workato exec actions.search_customers.execute --input='input/search_customer_input.json' --verbose特定のpollingトリガーを呼び出し、入力を渡します。 このコマンドは、closureでcan_poll_moreがtrueに設定されている場合に、一連のレコードをページネーションするトリガーをシミュレートします。
$ workato exec triggers.new_updated_customers.poll --input='input/new_updated_customers_input.json' --verbose特定のpollingトリガーを呼び出し、入力を渡します。 出力はpollの単一ページになります。 このコマンドは単一のトリガーpollをシミュレートし、最初のページのみを返します。
$ workato exec triggers.new_updated_customers.poll_page --input='input/new_updated_customers_input.json' --verboseworkato generate
指定されたJSONまたはCSVに基づいてWorkatoスキーマを生成するか、指定されたコネクタに基づいてテストを生成します
利用状況
$ workato generate <SUBCOMMAND>
入力
| 入力 | 説明 |
|---|---|
| SUBCOMMAND | 生成する特定のアセット。 `schema`または`test`。 |
workato generate schema
指定されたJSONまたはCSVファイルを取得し、コネクタで使用するWorkato Schemaに変換します
利用状況
$ workato generate schema --api-token <API-TOKEN> <OPTIONS>
オプション
| オプション | 説明 |
|---|---|
| --json | Workato Schemaに変換するJSONファイルへのパス |
| --csv | Workato Schemaに変換するCSVファイルへのパス |
| --col-sep | 指定されたCSVファイル内の列区切り文字。 デフォルト:カンマ。 指定可能な値:comma、space、tab、colon、semicolon、pipe |
| --api-email | 非推奨。 API email and keys認証は、より安全なAPIクライアント認証に置き換えられました。 API clientの作成方法を確認する。 SDK Gemの新しいバージョンでは、非推奨のAPI email and keysが2023年までサポートされます。 |
| --api-token | 必須。 適切な権限を持つAPI clientのAPI token。 API email and keys認証は、より安全なAPIクライアント認証に置き換えられました。 API clientの作成方法を確認する。 必要なAPIクライアント権限:
|
例
サンプルJSONペイロードをWorkatoスキーマに変換
$ workato generate schema --api-token --json='fixtures/actions/search_customers/input.json'サンプルのパイプ区切りCSVファイルをWorkatoスキーマに変換
$ workato generate schema --api-token --csv='fixtures/actions/report/input.csv' --col-sep=pipeworkato generate test
指定されたコネクタを取得し、指定された機能のRSpecテストを生成します。
利用状況
$ workato generate test <OPTIONS>
オプション
| オプション | 説明 |
|---|---|
| -c or --connector | 実行するconnector.rbファイルへのパス。 指定しない場合、デフォルトはconnector.rbです。 |
| -a or --action | テストを生成する特定のアクションの名前。 指定しない場合、すべての機能のテストを生成します。 |
| -t or --trigger | テストを生成する特定のトリガーの名前。 指定しない場合、すべての機能のテストを生成します。 |
| -p or --pick-list | テストを生成する特定のpicklistの名前。 指定しない場合、すべての機能のテストを生成します。 |
| -o or --object-definition | テストを生成する特定のobject_definitionの名前。 指定しない場合、すべての機能のテストを生成します。 |
| -m or --method | テストを生成する特定のメソッドの名前。 指定しない場合、すべての機能のテストを生成します。 |
例
すべてのコネクタ機能のスケルトンテストを生成
$ workato generate test特定のアクションのスケルトンテストを生成
$ workato generate test action=get_customersworkato help
指定されたSDK gemコマンドのヘルプを表示します。
利用状況
$ workato help <COMMAND>
入力
| 入力 | 説明 |
|---|---|
| COMMAND | ヘルプを表示するコマンド。 例:edit |
出力
指定されたSDK gemコマンドの詳細なヘルプ。
例
$ workato help edit
Usage:
workato edit PATH
Options:
-k, [--key=KEY] # Path to file with encrypt/decrypt key. NOTE: key from WORKATO_CONNECTOR_MASTER_KEY has higher priority
[--verbose], [--no-verbose]
Edit encrypted file, e.g. settings.yaml.enc
workato new
選択したディレクトリに新しいコネクタプロジェクトを作成します。
新しいコネクタプロジェクトを作成すると、HTTP mocking動作としてsecureまたはsimpleのどちらを選択するかを尋ねられます。
Please select default HTTP mocking behavior suitable for your project?
1 - secure. 不明なリクエストに対してエラーを発生させ、すべてのリクエスト記録を暗号化します。
新しいcassetteを記録するには、VCR_RECORD_MODE Environment変数を設定する必要があります
Example: VCR_RECORD_MODE=once bundle exec rspec spec/actions/test_action_spec.rb
2 - simple. 新しいリクエストの場合は新しいinteractionを記録します。リクエストはプレーンテキストとして保存され、secret tokensが公開されます。
secureを選択すると、unit tests用に作成されたVCR recordingsが暗号化されます。 これを推奨します。 VCR_RECORD_MODEのEnvironment変数も設定する必要があります。
利用状況
$ workato new <PATH>
入力
| 入力 | 説明 |
|---|---|
| PATH | コネクタプロジェクトを作成するパス。 |
結果
新しいコネクタプロジェクトを生成します。
例
$ workato new ~/Desktop/my-new-connector
workato oauth2
GEMバージョン要件
コマンドworkato oauth2にはSDK Gemバージョン0.1.2以降が必要です。
該当するコネクタにOAuth2 Authorization code grant flowを実装するために使用します。 該当するコネクタは、connection hashに`type: 'oauth2`があるものです。 詳細については、この便利なOkta記事を確認してください。
利用状況
$ workato oauth2 <OPTIONS>
オプション
| オプション | 説明 |
|---|---|
| -c or --connector | コネクタソースコードへのパス。 指定しない場合、デフォルトはconnector.rbです。
|
| -s or --settings | 認証情報を保存するsettings.yamlファイルへのパス。 指定しない場合、デフォルトはsettings.yaml.enc、次にsettings.yamlです。
|
| -n or --connection | settings.yamlファイル内のコネクション名。 複数の認証情報セットがある場合にのみ必要です。
|
| --key, -k | 暗号化/復号化キーへのパス。 指定しない場合、デフォルトは master.keyです。master.keyファイルが存在せず、オプションも指定されていない場合、新しいmaster.keyファイルが作成されます。
|
| --port | デフォルトでは、SDK GemはOAuth callbackを受信するために使用されるwebserverを"http://localhost:45555/oauth/callback"で起動します。 ポートを変更するには、このオプションを使用します。 つまり、--port='3010'は"http://localhost:3010/oauth/callback"でwebserverを起動します これは、OAuth appが特定のredirect uriに設定されている場合に便利です。 |
| --ip | デフォルトのipアドレスを上書きできます。 デフォルトは"127.0.0.1"です |
| --https, --no-https | 自己署名証明書を使用してwebserverを起動できます。 OAuth Appが"https://"プレフィックス付きのredirect uriを必要とする場合に必要です。 |
| --verbose | 実行の詳細を表示するには、このオプションを含めます。 これは、すべてのHTTPリクエストおよびリクエストペイロードが表示されることを意味します。 レスポンス本文は表示されませんが、byebugで検査できます。
|
結果
WorkatoでOAuth2 Authorization Code Grant Flowをエミュレートします。 該当するコネクタは、connection hashに`type: 'oauth2`があるものです。 詳細については、この便利なOkta記事を確認してください。
例
$ workato oauth2
workato push
特定のフォルダにPUSH
--folderパラメータを使用しない限り、workato pushコマンドはWorkatoワークスペース内の特定のフォルダにpushしません。 例:workato push --folder <folder ID>。
VIRTUAL PRIVATE WORKATO (VPW)のお客様
この機能を使用するには、お使いのVirtual Private Workato(VPW)インスタンスに固有の設定手順が必要です。 VPWをご利用のお客様は、インスタンスの設定詳細について、VPWのプライベートドキュメントを参照してください。
選択したWorkatoフォルダに新しいコネクタプロジェクトを作成します。
利用状況
$ workato push --api-token <API-TOKEN> <OPTIONS>
オプション
| オプション | 説明 |
|---|---|
| --api-email | 非推奨。 API email and keys認証は、より安全なAPIクライアント認証に置き換えられました。 API clientの作成方法を確認する。 SDK Gemの新しいバージョンでは、非推奨のAPI email and keysが2023年までサポートされます。 |
| --api-token | 必須。 適切な権限を持つAPI clientのAPI token。 API email and keys認証は、より安全なAPIクライアント認証に置き換えられました。 API clientの作成方法を確認する。 必要なAPIクライアント権限:
|
| --folder | コネクタのpush先となるWorkatoワークスペース内のフォルダのID。 デフォルトでは、--folderパラメータとフォルダIDを追加しない限り、コネクタは特定のフォルダにpushされません。フォルダを表示しているとき、フォルダIDはURLにあります。 例:URLが https://app.workato.com/?fid=106070#assetsの場合、フォルダIDは106070です。
|
| -t or --title | コネクタのタイトル。 指定しない場合、デフォルトはコネクタコード内のtitleキーです。 |
| -d or --description | コネクタの説明へのパス。Markdownまたはプレーンテキストファイルを指定できます。 指定しない場合、デフォルトはREADME.mdです。
|
| -l or --logo | コネクタロゴのpngまたはjpegへのリンク。 指定しない場合、デフォルトはlogo.pngです。
|
| -n or --notes | このアップロード済みバージョンに添付されるバージョンノート。 |
| -c or --connector | コネクタソースコードへのパス。 指定しない場合、デフォルトはconnector.rbです。
|
| --environment | コネクタコードをpushするには、このデータセンター固有のURLを使用します。 設定されていない場合、デフォルトはWORKATO_BASE_URL Environment変数です。 例: - `https://app.workato.com` - `https://app.eu.workato.com` - `https://app.jp.workato.com` - `https://app.sg.workato.com` - `https://app.au.workato.com` - `https://app.il.workato.com` - `https://app.workatoapp.cn` - `https://app.kr.workato.com` - `https://app.trial.workato.com` |
例
workato push --api-tokenLast updated: