コネクションプロファイル

単一の Workato オンプレミスエージェント (OPA) を複数のオンプレミスアプリケーションに接続できます。 コネクションプロファイル は、各アプリケーションを一意に識別し、接続に必要な設定情報を格納します。


基本情報

コネクションプロファイルとは

コネクションプロファイルとは、オンプレミスアプリケーションを一意に識別し、オンプレミスアプリケーションに関する情報を格納するファイルです。プロファイルは、<INSTALL_HOME>/conf/config.yml にある設定ファイルに格納されています。

一般的な設定ファイルは以下のようになります。

yaml
database:
  profile1:   # Connection names can't contain 
    ...       # spaces or special characters
  profile2:   # But may contain underscores (_) and hyphens (-)
    ...

files:
  profile3:
    ...
  profile4:
    ...

jms:
  profile5:
    ...

ldap:
  profile6:
    ...

server:
  classpath:
    ...
  staging:
    ...

接続できるシステムの種類

config.yml ファイルには、以下の種類のシステムのプロファイルを格納できます。

インターネット接続が制限されているサーバーにインストールされた OPA に対して、プロキシサーバーを設定することもできます。

新しい設定の適用方法

デフォルトでは、config.yml が変更されるたびに OPA を再起動する必要があります。詳細については、オンプレミスエージェントの実行に関するガイドを参照してください。

オンプレミスエージェントで変更を自動的に適用できるようにするには、autoReload オプションを使用するよう、以下のコードを config.yml ファイルの最上部に追加します。

yaml
config:
  autoReload: true

このオプションが有効になっている場合、config.yml に対する変更は autoReload によって処理されます。OPA を手動で再起動する必要はありません。

autoReload とサーバープロファイル

autoReload は、サーバープロファイルに対する変更には適用されません。これらの変更を適用するには、手動で OPA を開始および停止します。


データベースプロファイル

データベースコネクションプロファイルは、OPA がデータベースに接続するために使用する情報を提供します。コネクションプロファイルは config.ymldatabase セクションにあります。

OPA は、複数のデータベースへの接続に対応しています。接続したいデータベースごとに、database キー下にセクションを追加します。例 :

yaml
database:
  your-connection-name:         # Specify the connection name, ex: sales-database
    adapter: sqlserver
    host: localhost
    port: 1433
    database: sales
    username: sales_analyst
    password: secretPassword456

このセクションでは、以下の項目について説明します。

プロファイルのプロパティ

データベースコネクションプロファイルには、以下のプロパティを含めることができます。

名前種類説明
adapter任意プロファイルが使用されるデータベースのタイプ。たとえば、プロファイルが PostgreSQL データベース用のものである場合、この値は postgresql になります。

OPA によりサポートされているデータベースでなければなりません。詳細については、設定例を参照してください。
url任意データベース用の JDBC 接続 URL。たとえば jdbc:postgresql://sales.database:5432/sales は PostgreSQL データベースに接続します。

注 : コネクションプロファイルの設定をすべて行うには、url または host 値を指定する必要があります。

詳細については、設定例を参照してください。
host任意データベースのホストアドレス。たとえば、localhost です。

注 : コネクションプロファイルの設定をすべて行うには、url または host 値を指定する必要があります。
port任意データベースのポート。選択したタイプのデータベースでデフォルトのポートを使用している場合は、このプロパティを省略できます。

たとえば PostgreSQL データベースは、デフォルトでポート 5432 を使用します。PostgreSQL でこのポートを使用する場合、port プロパティをコネクションプロファイルに追加する必要はありません。

デフォルトのポートは、サポートされているデータベースのセクションに記載されています。
database任意データベースの名前。例 : sales

注 : url プロパティが指定されている場合は、このプロパティを省略できます。
username必須データベースへの接続に使用されるデータベースユーザーのユーザー名。
password必須データベースユーザー (username) のパスワード。この値には、外部のシークレットマネージャーから取得したシークレットを使用できます。詳細については、設定例を参照してください。
driverClass必須JDBC 接続でのみ必要です。指定されたデータベースの JDBC ドライバークラスの完全修飾名。ドライバークラスは、エージェントの classpath プロパティで利用できる必要があります。
ssl任意SSL 接続を設定するためのオプション。SSL は以下のデータベースでサポートされています。
  • MySQL - バージョン5.7以降
  • PostgreSQL - バージョン11.x 以降
以下のプロパティを含みます。
名前種類説明
cert必須SSL 証明書に対するファイルパス。
trustAll任意true の場合、クライアントはすべての証明書チェーンを信頼します。自己署名のサーバー証明書がサポートされています。デフォルトは false です。
verifyHost任意true の場合、サーバー証明書に格納された名前がドメイン名と照合されます。デフォルトは false です。

サポートされているデータベース

以下の表は、OPA が現在サポートしているデータベースに関する次の情報を示しています。

  • データベース名 : データベースの名前です。
  • アダプター : データベースの adapter 値です。この値は、OPA が接続しているデータベースの種類を指定するために使用されます。
  • デフォルトのポート : データベースのデフォルトの port です。
  • 注意事項 : データベースの設定時の注意事項です。
データベース名アダプターデフォルトのポート注意事項
Amazon Redshiftredshift5439
JDBC 互換データベースjdbc以下が必要です。
  • コネクションプロファイル内の url および driverClass プロパティ
  • 設定済みの server プロファイル
詳細については、JDBC の例を参照してください。
Microsoft SQL Serversqlserver1433
MySQLmysql3306
Oracleoracle1521Oracle Service を使用している場合はurl プロパティが必要です。

SID を使用している場合は、adapter プロパティまたは url プロパティのいずれかを使用できます。

詳細については、Oracle の例を参照してください。
PostgreSQLpostgresql5432

設定例

ブロックをクリックすると例が表示されます。

adapter プロパティの使用

以下の例では、adapter プロパティを使用して Microsoft SQL Server と Amazon Redshift データベースに接続します。

yaml
database:
  sales:
    adapter: sqlserver
    host: localhost
    port: 1433
    database: sales
    username: sales_analyst
    password: secretPassword123
  operations:
    adapter: redshift
    host: localhost
    port: 5439
    database: customers
    username: cs_analyst
    password: secretPassword789
url プロパティの使用

以下の例では、url プロパティを使用して PostgreSQL データベースに接続します。

yaml
database:
  sales:
    url: jdbc:postgresql://sales.database:5432/sales
    username: sales_analyst
    password: secretPassword123
    ApplicationName: workato
password プロパティにシークレットを使用

以下の例では、外部シークレットマネージャーから取得したシークレットを使用して、データベースパスワードを提供します。詳細については、シークレットマネージャーの説明を参照してください。

yaml
database:
  sales_database:
    adapter: sqlserver
    host: localhost
    port: 1433
    database: test
    username: sales_user
    password: { secret: 'sales-db-password-password' }
Oracle データベースへの接続

Oracle データベースに接続する場合、 SID または サービス のいずれかに接続できます。

SID を使用する場合は、adapter プロパティまたは url プロパティのいずれかを使用できます。

サービス を使用する場合は、url プロパティを指定する必要があります。

yaml
database:
  erp:
    url: jdbc:oracle:thin:@localhost:1521/PROD
    username: admin
    password: SecretPassword456
JDBC 互換データベースへの接続

JDBC 互換データベースに接続するには、以下が必要です。

yaml
database:
  tpc:
    url: jdbc:presto://warehouse.intra:8889/tpch
    driverClass: com.facebook.presto.jdbc.PrestoDriver
    adapter: jdbc
    username: my_user

server:
  classpath: jdbc
SSL の有効化

以下の例では、PostgreSQL データベースに SSL を設定します。

: 現在、SSL 接続は MySQL (5.7以上) データベースおよび PostgreSQL (11以上) データベースでサポートされています。

yaml
database:
  sales:
    adapter: postgresql
    host: localhost
    port: 5432
    database: sales
    username: sales_analyst
    password: secretPassword123
    ssl:
      cert: /path/client_ca.crt
      trustAll: false
      verifyHost: true

オンプレミスファイルプロファイル

オンプレミスファイルを使用するには、files セクションでファイルシステムプロファイルを定義する必要があります。 その際、相対パスの解決に使用される、ファイルアクセス用の base フォルダーを指定する必要があります。たとえば、C:\Documents\ ディレクトリ内の HR フォルダーは以下のように設定します。

yaml
files:
  hrfiles:
    base: "C:\\Documents\\HR"

別の例として、Desktop ディレクトリの employees フォルダーにアクセスできるようにするには、以下のようなファイルパスを指定します。

yaml
files:
  hrfiles:
    base: "/Users/me/Desktop/employees"

SAP プロファイル

server セクションと sap セクションの両方に、SAP コネクションプロファイルを定義する必要があります。

サーバープロファイルで、lib_ext とは、SAP JCo コネクターライブラリを配置するディレクトリのことです。まだ作成されていない場合は、このディレクトリを OPA の root ディレクトリ下に作成し、SAP JCo コネクターライブラリをそこに配置します。lib_ext フォルダーには、すでに sap-connector-impl-X.X.jar が含まれているはずです。サーバープロファイルの詳細については、こちらをご確認ください。

SAP コネクターが対応しているコネクションのタイプには、直接接続メッセージサーバー接続の2つがあります。

SAP のデフォルトのポート

Workato の SAP コネクターでは、デフォルトで以下のポートを使用します。

  • SAP メッセージサーバー経由 : 36xx (xx は SAP のシステム番号)
  • SAP メッセージサーバーなし (SAP に対する直接呼び出し) : 33xx (SNC あり) および 48xx (SNC なし)

さらに、HTTP(s) インバウンド通信 (SAP からプロビジョニングされた REST OData サービス、SOAP WebServices などを使用する場合など) の場合は、ポートはデフォルトで8000 (HTTP) および44300 (HTTPs) になります。このポートが SAP でカスタムの方法で設定されている場合、ポート番号は SAP で以下の手順で確認できます。

  1. ICM モニタ ( SMICM ) トランザクションに移動します。
  2. [Goto] > [Services] の順に選択して、ICM で設定されたサービスと関連付けられたポートを表示します。

これらのポートがデフォルトと異なる場合は、Workato サポートまでお問い合わせください。

SAP - 直接接続

以下に Direct コネクションタイプの例を示します。SAP システムがアプリケーションサーバーとして直接公開される場合は、このコネクションタイプを使用します。

yaml
server:
  classpath:
    - lib_ext

sap:
  # Direct connection to an ABAP application server
  sap_profile_1: # This is on-prem agent connection profile name
    network_connection:
      gateway_host: "xx.xx.xx.xx"
      system_number: "00"
      program_id: "WORKATO"  # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
    user_logon:
      client: "800"
      language: "EN"
      user: "USERN"
      password: "PASSW"
パラメータ説明クリックして画像を拡大
gateway_hostDNS 名または IP アドレスのいずれかになります。存在する場合、これは SAP ホストへの直接接続を示しています。xx.xx.xx.xx という形式になります。これは、直接接続する SAP アプリケーションサーバーの IP アドレスです。オンプレミス SAP アプリケーションサーバーへのログインに使用される、SAP Logon Pad に表示される可能性があります。ホスト
system_number2桁の SAP システム番号です。アプリケーションサーバーが受信リクエストをリッスンしている論理ポートを識別します。通常、TCP ポート 33XX で確認できます (XX はシステム番号)。システム番号
program_id任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。プログラム ID
clientWorkato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。クライアント
language任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。言語
userWorkato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。ユーザー
passwordSAP ユーザーのパスワード。パスワード

SAP - メッセージサーバー接続

以下に messageserver コネクションタイプの例を示します。SAP システムがメッセージサーバーゲートウェイの背後にある場合は、このコネクションタイプを使用します。

yaml
server:
  classpath:
    - lib_ext

sap:
  # Message Server connection to an ABAP application server
  sap_profile_2: # This is on-prem agent connection profile name
    network_connection:
      message_server_host: "10.30.xx.xx"
      logon_group: "PUBLIC"
      system_id: "DEV"
      program_id: "WORKATO" # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
    user_logon:
      client: "800"
      language: "EN"
      user: "USERN"
      password: "PASSW"
パラメータ説明クリックして画像を拡大
message_server_hostxx.xx.xx.xx という形式のメッセージサーバーのホスト。これは、接続しているメッセージサーバーの IP アドレスです。メッセージサーバーのホスト
logon_group(任意) アプリケーションサーバーの論理グループ名。SAP Tcode SMLG で確認できます。グループ
system_idメッセージサーバーが属しているシステムのシステム ID。接続エラーが発生する場合は、SAP ノート52959を参照してください。
program_id任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。プログラム ID
clientWorkato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。クライアント
language任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。言語
userWorkato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。ユーザー
passwordSAP ユーザーのパスワード。パスワード

JMS プロファイル

jms セクションに、JMS コネクションプロファイルを定義する必要があります。JMS プロバイダーは、コネクションプロファイルの provider プロパティで指定されます。オンプレミスエージェントによって、以下の JMS プロバイダーがサポートされています。

メッセージングサービスプロバイダー
Amazon Simple Queue Serviceamazon-sqs または sqs
Apache ActiveMQactivemq
Azure Service Buscustom

Amazon SQS

Amazon SQS に接続するには、以下の設定プロパティが必要です。

yaml
jms:
  MyAmazonProfile:
    provider: amazon-sqs
    region: <Your Amazon API region, eg 'us-east-2'>
    accessKey: <Your Amazon API access key>
    secretKey: <Your Amazon API secret>

メッセージを送信する前に、必ず SQS キューを作成する必要があります。

Apache ActiveMQ

実行中の ActiveMQ ブローカーに接続するには、以下のようにブローカー URL を指定するだけです。

yaml
jms:
  MyActiveMQProfile:
    provider: activemq
    url: tcp://localhost:61616

ActiveMQ ブローカーをエージェントに組み込むことはできません。vm:// ブローカー接続の使用はサポートされていません。

Azure Service Bus

Azure Service Bus では、カスタム JMS プロバイダーを使用します。Azure Service Bus に接続するには、以下の設定プロパティが必要です。

yaml
jms:
  azureServiceBus:
    provider: custom
    class: org.apache.qpid.jms.JmsConnectionFactory
    remoteURI: amqps://<host-name>.servicebus.windows.net
    username: <policy-name>
    password: "<primary-key>"

こちらから jar ファイルをダウンロードし、lib_ext フォルダーに展開します。

config.yml ファイルにクラスパスを追加します。クラスパスプロパティの詳細については、こちらをご確認ください。

yaml
server:
 classpath: lib_ext

Apache Kafka プロファイル

kafka セクションに Kafka コネクションプロファイルを定義する必要があります。Kafka に接続するには、以下の設定プロパティが必要です。

yaml
kafka:
  MyKafkaProfile:
    ... connection properties ...

bootstrap.serversbatch_size など、任意の Kafka producer または consumer の設定プロパティを指定できます。

ただし、一部のプロパティは、オンプレミスエージェントにより上書きされ、設定できません。保護されたプロパティを再定義しようとすると、警告が表示されます。保護されたプロパティには、以下のようなものがあります。

プロパティ名コメント
key.serializerStringSerializer のみがエージェントによってサポートされています。
value.serializerStringSerializer のみがエージェントによってサポートされています。
key.deserializerStringSerializer のみがエージェントによってサポートされています。
value.deserializerStringSerializer のみがエージェントによってサポートされています。
auto.offset.resetレシピによって定義されています。
enable.auto.commit内部で定義されています。

Workato Agent では、以下 (Kafka 以外) の設定プロパティもサポートしています。

プロパティ名説明
timeout一般的な操作のタイムアウト値 (ミリ秒) です。
urlプロトコルが kafka または kafka+ssl であるサーバー URL のカンマ区切りのリストです。
ssl.truststoreKafka への安全な接続を確保するために、PEM形式でエンコードされたトラストストアのインライン化を許可します。
ssl.keystore.keyKafka への安全な接続を確保するために、秘密鍵のインライン化を許可します。
ssl.keystore.certKafka への安全な接続を確保するために、クライアント証明書のインライン化を許可します。

SSL/TLS を使用して Kafka に接続するときに、上記の ssl.* オプションを使用できます。このオプションを使用すると、config.yml ファイル内に PEM 形式でエンコードされた証明書と秘密鍵を維持できます。たとえば、YAML と互換性のある複数行の構文を以下のように使用できます。

yaml
kafka:
  MyKafkaProfile:
    ssl.truststore:
    |
      -----BEGIN CERTIFICATE-----
      502mPNNAYkY4a7Zu84DLCXLFurEa4BhLBqLkzC6WdTrBN9z6Rp/svTIl6VgjSTP6
      .....
      -----END CERTIFICATE-----

パスワードで保護された秘密鍵はインライン化できないことに注意してください。


Active Directory プロファイル

Active Directory コネクションプロファイルは、ldap セクションで定義する必要があります。プロファイルの例 :

yaml
ldap:
  active_directory_main:
    url:
      - ldap://acme1.ldap.com:389
      - ldaps://acme2.ldap.com:636
    username: Administrator
    password: foobar
    base: dc=acme,dc=com
    ssl:
      cert: /path/to/PEM-encoded-certificate-or-trusted-CA
      trustAll: true
プロパティ名説明
url
必須
使用する LDAP サーバーの URL。URL は ldap://myserver.example.com:389 という形式でなければなりません。

SSL アクセスには、LDAPS プロトコルを使用します。URL は、同じ形式 (ldaps://myserver.example.com:636) になります。

フェイルオーバー機能が必要な場合は、複数の URL を指定できます。
username
必須
LDAP サーバーでの認証時に使用するユーザー名 (プリンシパル)。これは通常、管理者ユーザーの識別名になります。たとえば cn=Administrator、または単に Administrator などです。
password
必須
LDAP サーバーでの認証時に使用するパスワード (資格情報)。
base
任意
すべてのリクエストのベース DN。この属性が設定されている場合、LDAP 操作に対して指定される、または LDAP 操作から取得されるすべての識別名は、この LDAP パスに対して相対的になります。これにより、大規模な LDAP ツリーでの作業が大幅に簡素化されます。

ただし、ベースパスにアクセスしなければならない場合もあります。詳細については、「ベース LDAP パスへの参照の取得」を参照してください。
ssl
任意
certPEM 形式でエンコードされた証明書または信頼される CA へのパス。
pemPEM 形式でエンコードされた証明書の全内容。
key 相互 SSL をセットアップするための秘密鍵。pem が指定されている場合は、必須です。
trustAll 自己署名証明書を有効にするには、true に設定します。

HTTP プロファイル

http 設定セクションでは、以下のように内部 HTTPS リソースへのエージェントのアクセスを設定できます。

yaml
http:
  trustAll: true
  verifyHost: true

自己署名証明書を使用する内部 HTTPS リソースにアクセスできるようエージェントを設定できます。自己署名証明書を有効にするには、trustAll プロパティを true に設定します。

通常、サーバー証明書の共通名 (またはサブジェクト代替名) のフィールドはターゲットのホスト名と一致している必要があります。ホスト名が一致していないサーバー証明書をエージェントが受け入れるようにするには、verifyHost プロパティを false に設定して (デフォルトは true)、ホスト名の検証を無効にします。


NTLM プロファイル

特定の HTTP リソースでは、NTLM 認証が必要です。この認証は、NTLM コネクションプロファイルを使用して実行できます。以下に、いくつかの NTLM プロファイルの例を示します。

yaml
ntlm:
  MyNtlmProfile:
    auth: "username:password@domain/workstation"
    base_url: "http://myntlmhost.com"
    cm_default_max_per_route: 15
    cm_max_total: 100
    verifyHost: true
    trustAll: false

  AnotherNtlmProfile:
    auth: "domain/workstation"
    username: "username"
    password: "password"
    base_url: "http://myntlmhost.com"
    cm_default_max_per_route: 15
    cm_max_total: 100
    verifyHost: true
    trustAll: false

以下のプロファイルプロパティがサポートされています。

プロパティ名説明
authNTLM 認証の完全な資格情報。これには、ユーザー名、パスワード、ドメイン、ワークステーションを含めることができます。

OPA バージョン2.4.7以降では、ユーザー名とパスワードに @/ などの特殊文字が含まれている場合、以下に示すようにユーザー名とパスワードを個別に設定できます。
usernameNTLM 認証のユーザー名。
(OPA バージョン2.4.7以降の場合のみ)
passwordNTLM 認証のパスワード。
(OPA バージョン2.4.7以降の場合のみ)
base_urlNTLM リソースのベース URL。
cm_default_max_per_route任意。 ルート/ホストごとの接続数を設定します (正数を指定すること、デフォルトは5)。
cm_max_total任意。 接続の最大数を設定します (正数を指定すること、デフォルトは10)。
http_connect_timeout任意。 接続のリクエスト時に使用するミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。
http_connection_request_timeout任意。 接続が確立されるまでのミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。
http_socket_timeout任意。 ソケットのミリ秒単位のタイムアウト値。データを待機するときのタイムアウト値、つまり2つの連続するデータパケット間の最大非アクティブ期間です (正数を指定すること、デフォルトは10000)。
verifyHost任意。 SSL/TLS 接続に対してホスト名の検証を有効にするかどうかを指定します (デフォルトは true)。
trustAll任意。 SSL/TLS 接続に対してすべての証明書を信頼するかどうかを指定します (デフォルトは false)。

NTLM 接続でサポートされている HTTP メソッドは、GETPOSTPUTPATCHDELETEHEAD です。


コマンドラインスクリプトプロファイル

このプロファイルにより、ユーザーは OPA で任意のスクリプトまたはコマンドを実行できます。設定ファイルのスクリプト定義にはパラメータを指定できます。

アクションを宣言するときに、パラメータの値を指定する必要があります。

Unix でのプロファイルの例を以下に示します。

yaml
command_line_scripts:
  workday_reports:
    concurrency_limit: 3
    timeout: 30
    scripts:
     copy_file:
       name: Copy file
       command:
         - /bin/cp
         - '{{source_file}}'
         - '{{target_directory}}'
       parameters:
         - { name: source_file }
         - { name: target_directory }           

     append_file_to_another:
       name: Append file to another
       command:
         - bash
         - -c
         - cat {{source_file}} >> {{target_file}}
       parameters:
         # Parameter quoting
         - { name: source_file, quote: '"' }
         # Advanced parameter quoting
         - { name: target_file, quote: { start: '"', end: '"', quote: '"', escape_char: \ } }

     generate_report:
       name: Generate report
       command:
         - python
         - /home/user/script.py
         - --from
         - '{{from_date}}'
         # Conditional fragment
         - { value: --to, if: to_date }
         # Conditional fragment
         - { value: '{{to_date}}', if: to_date }
       parameters:
         - { name: from_date }
         - { name: to_date, schema: { optional: true, control_type: select, pick_list: [01/01/2018, 02/02/2018] } }

コマンドラインスクリプトのプロファイルは、config.yml の command_line_scripts セクションに配置されています。各プロファイルには複数のスクリプトを含めることができます。プロファイルの設定プロパティは以下のとおりです。

プロパティ名説明
scriptsスクリプトのハッシュ。各キーの値にはスクリプトプロファイルが含まれます。
concurrency_limit任意。 同時に実行されるスクリプトの最大数。指定されない場合は、デフォルトの10になります。制限に達すると、リクエストはキューに入れられます。
timeout任意。 各スクリプト実行の最大期間 (秒単位)。指定されない場合は、デフォルトの90秒になります。

ハッシュキーは、スクリプトプロファイルの一意の識別子として使用されます。スクリプトの設定プロパティは以下のとおりです。
プロパティ名説明
nameレシピ UI に表示されるスクリプトのわかりやすい名前です。
commandコマンド呼び出しの配列。各項目の値では、Mustache テンプレートの変数を使用してパラメータの値を置換できます。
parameters任意。 パラメータ配列 (デフォルトは空の配列)。

コマンド呼び出し要素の設定には文字列だけを指定できますが、以下のプロパティを含めることもできます。
プロパティ名説明
valueコマンド呼び出し要素の値。
ifパラメータ名。パラメータ値が空の場合は、このコマンド呼び出し要素は考慮されません。

パラメータの設定プロパティは以下のとおりです。
プロパティ名説明
nameパラメータ名。
quote任意。 パラメータの引用文字のルール (デフォルトではルールなし)。
schema任意。 パラメータのスキーマ。

引用文字の設定には、1つの文字列のみを指定することも、または複数のプロパティを指定することもできます。プロパティは以下のとおりです。
プロパティ名説明
start開始の引用文字。
end終了の引用文字。
quoteパラメータ値内のエスケープされる引用文字。
escape_charエスケープ文字。

引用文字の設定に1つの文字列を使用する場合、その値は startend、および quote プロパティの値と見なされます。また escape_char プロパティの値は Unix では「\」、Windows では「""」に設定されます。


パラメータのスキーマ設定には、以下のようなプロパティを指定できます。
プロパティ名説明
任意任意。 パラメータのオプションのフラグ (デフォルトは false)。
label任意。 レシピ UI に表示されるスクリプトのわかりやすい名前 (デフォルトでは、パラメータの名前)。
control_type任意。 「text」または「select」。「select」の場合は、「pick_list」プロパティも定義する必要があります。デフォルトは「text」です。
pick_list任意。 パラメータ値を選択するための値です。「control_type」プロパティの値が「select」に設定されている場合は、このプロパティを定義する必要があります。

拡張機能プロファイル

Java 拡張機能を使用するには、拡張機能プロファイルを定義する必要があります。jar ファイルが配置される場所の定義は server セクションで、また Java クラスの個々のプロファイルの作成は extensions セクションで行います。Java 拡張機能の設定の例を以下に示します。

yaml
server:
  classpath: ext

extensions:
  security:
    controllerClass: com.mycompany.onprem.SecurityExtension
    secret: HA63A3043AMMMM

server パラメータの設定プロパティは以下のとおりです。

プロパティ名説明
classpathユーザー定義のクラスの場所を指定します。

extensions プロファイルの設定プロパティは以下のとおりです。

プロパティ名説明
controllerClass拡張機能をマッピング先の Java クラスを OPA に通知するための必須フィールドです。
secretJava クラスで使用されるオプションの環境プロパティです。複数のプロパティを追加できます。

Java 拡張機能の作成方法の説明をご覧ください。


サーバープロファイル

サーバープロファイルでは、OPA アセットがオンプレミスサーバーのどこに配置されるのかを定義します。サーバープロファイルは config.ymlserver セクションに配置されます。

yaml
server:
  classpath: lib_ext
  staging: staging

このセクションでは、以下の項目について説明します。

プロファイルのプロパティ

サーバープロファイルには、以下のプロパティを含めることができます。

名前種類説明
classpath必須Java ドライバーまたはユーザー定義のクラスを格納するディレクトリを定義します。例 : jar ファイル または ドライバークラス

: これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。
staging必須 **ターゲットシステムへの読み込み中に、一時的にデータを格納するステージングフォルダーを定義します。 : これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。

指定しないままにすると、OPA はステージングフォルダーを内部で管理します。

ステージングフォルダーに格納されているファイルは、OPA によりターゲットシステムに読み込まれた後、自動的に削除されます。

** OPA バージョン2.9.3以前では必須です。バージョン2.10以降では任意です。

設定例

以下のディレクトリ構造を用いたプロファイルの設定例をいくつか見てみましょう。この例では、オンプレミスエージェントは /opt/workato-agent にインストールされます。

yaml
/opt
├── /workato_agent
    ├── /conf
    ├── /bin
    ├── /lib_ext
    ├── /staging

以下の例では、Java ドライバークラスまたはユーザー定義のクラスを格納する jdbc ディレクトリを定義します。

yaml
server:
  classpath: lib_ext

次に、staging プロパティの設定方法を説明します。このプロパティでは、OPA がターゲットシステムへの読み込み中にファイルを一時的に格納する場所を定義します。

たとえば、SQL Server の[Export query result] アクションを実行する場合、CSV 出力は /staging ディレクトリに一時的に格納され、ファイルが読み込まれた後に削除されます。

yaml
server:
  classpath: lib_ext
  staging: staging

Last updated: