- 概要
- UiPath CLI
- Azure DevOps 拡張機能
- Jenkins プラグイン

CI/CD 連携ユーザー ガイド
UiPath のジョブを実行
ビルド後のステップ [UiPath のジョブを実行] は、Orchestrator インスタンスに既にデプロイされているプロセスを開始します。v2020.10 の Orchestrator では、このタスクによって実行されるプロセスを [プロセス] タブで確認できます。v2021.10 以降の Orchestrator では、このタスクによって実行されるプロセスを [オートメーション] の [プロセス] で確認できます。
構成
| ジョブのパラメーター | 説明 |
|---|---|
| プロセス (必須) | プロセス名です。プロセス名は Orchestrator の UI から取得できます。 NAME: ProcessA ENVIRONMENT: Production ProcessName: ProcessA_Production で形成する必要があります)。 |
| パラメーター | JSON 入力ファイルのフル パスです。プロセスが入力を必要とする場合に使用されます。 JSON ファイル形式の例: \{ "StringArgument_In": "MyConfigurationValue", "IntArgument_In": 1, "DictionaryArgument_In": \{ "Key1": "Value1", "Key2": "Value2" } } \{ "StringArgument_In": "MyConfigurationValue", "IntArgument_In": 1, "DictionaryArgument_In": \{ "key1": "value1", "key2": "value2" } } |
| 優先度 | ジョブの実行の優先度です。 |
| ストラテジ | ジョブの実行ストラテジとして、ジョブを動的に割り当てるか、特定のロボットに割り当てるかを指定します。次のいずれかのオプションから選択します。
|
| ジョブの種類 (モダン フォルダーでのみ使用可能) | ジョブを実行するランタイムのライセンス モデルを選択します。 |
| Orchestrator のアドレス | プロセスを実行する Orchestrator インスタンスのアドレスです。 |
| Orchestrator テナント | Orchestrator テナントを指定します。 |
| Orchestrator のフォルダー | 指定したプロセスがデプロイされたフォルダーを指定します。 サブフォルダーを入力するには、親フォルダーの名前とサブフォルダーの名前の両方を入力してください。例: AccountingTeam\TeamJohn |
| 認証 | Orchestrator に対する認証を行うには、Jenkins で事前に資格情報を作成する必要があります。認証には、次の 4 つの方法があります。 (1) ユーザー名とパスワードを使用してオンプレミスの Orchestrator に認証する (2) 更新トークン (API キー) を使用してクラウドの Orchestrator に認証する (3) 外部アプリの認証を使用してクラウドの Orchestrator に認証する ( 4 ) On-Premises Orchestrator に認証する |
| ジョブ結果の出力パス | ジョブの結果の出力パスを指定します (例: testResults.json )。結果は JSON 形式で出力されます。指定しない場合、結果は成果物ステージング ディレクトリに UiPathResults.json として出力されます。出力は、JSON 形式です。 |
| Timeout | ジョブの実行のタイムアウトを秒単位で指定します。 |
| ジョブの失敗時に失敗 | 少なくとも 1 つのジョブが失敗すると、タスクが失敗します。既定値は [True] です。 |
| ジョブの完了まで待機 | ジョブの実行が完了するまで待機します。既定値は [True] です。 |
| ログのトレース レベル | トレース ログを以下のいずれかのレベルで有効化するために使用する設定です。
|
| ジョブの数 | ジョブの実行回数です。既定値は 1 です。 |
| ユーザー (モダン フォルダーでのみ使用可能) | ユーザーの名前です。ユーザーは、Orchestrator のユーザーではなくマシンのユーザーである必要があります。 ローカル ユーザーの場合、形式は MachineName\\UserName です。 |
| マシン (モダン フォルダーでのみ使用可能) | マシンの名前です。 |
| ロボット名 | コンマで区切られた特定のロボット名のリストです。 |
パイプラインの例
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
UiPathRunJob(
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
failWhenJobFails: true,
folderName: 'A_Classic',
orchestratorAddress: 'https://testorchestrator.some-domain.com',
orchestratorTenant: 'Default',
parametersFilePath: '',
priority: 'Low',
processName: 'ProcessA_EnvB',
resultFilePath: 'output.json',
strategy: Dynamically(jobsCount: 1, machine: 'TestMachine', user: 'TestUser'), timeout: 3600, waitForJobCompletion: true, traceLoggingLevel: 'None'
)
UiPathRunJob(
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
failWhenJobFails: true,
folderName: 'A_Classic',
orchestratorAddress: 'https://testorchestrator.some-domain.com',
orchestratorTenant: 'Default',
parametersFilePath: '',
priority: 'Low',
processName: 'ProcessA_EnvB',
resultFilePath: 'output.json',
strategy: Robot('robot1,robot2'),
timeout: 1800,
waitForJobCompletion: false,
traceLoggingLevel: 'None'
)
}
}
}
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
UiPathRunJob(
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
failWhenJobFails: true,
folderName: 'A_Classic',
orchestratorAddress: 'https://testorchestrator.some-domain.com',
orchestratorTenant: 'Default',
parametersFilePath: '',
priority: 'Low',
processName: 'ProcessA_EnvB',
resultFilePath: 'output.json',
strategy: Dynamically(jobsCount: 1, machine: 'TestMachine', user: 'TestUser'), timeout: 3600, waitForJobCompletion: true, traceLoggingLevel: 'None'
)
UiPathRunJob(
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
failWhenJobFails: true,
folderName: 'A_Classic',
orchestratorAddress: 'https://testorchestrator.some-domain.com',
orchestratorTenant: 'Default',
parametersFilePath: '',
priority: 'Low',
processName: 'ProcessA_EnvB',
resultFilePath: 'output.json',
strategy: Robot('robot1,robot2'),
timeout: 1800,
waitForJobCompletion: false,
traceLoggingLevel: 'None'
)
}
}
}
JSON 入力ファイル
[ジョブを実行] タスクを設定するには、Orchestrator でプロセスを実行するために必要なパラメーターを含む JSON ファイルを入力します。Orchestrator はプリミティブな値のみを検証します。Orchestrator に渡すことができる入力パラメーターに必要な形式の概要を以下に示します。
| パラメーター | 必須の形式 | 例 |
|---|---|---|
| 文字列 | 値を引用符で囲みます。 | 'string value' |
| Int32 | 整数の場合と同じように値を指定します。 | 11 |
| Boolean | 値を true または false として指定します。 | true |
| Double | 浮動小数点の値を指定します。 | 3.5 |
| DateTime | 有効な JSON 表現を指定します。 | "2012-04-23T18:25:43.511Z" |
| 配列 | 有効な JSON として値を指定します。 | [1,1,2,3,5,8] OR ["firstString", "secondString"] |
JSON スキーマの例
以下は、JSON ファイルに必要なパラメーターを入力する方法を示す JSON スキーマの例です。プロセスを Orchestrator にパブリッシュするために使用する Studio プロジェクトに、JSON ファイルに渡される引数が存在していることを確認してください。
{
'in_JenkinsBaseUrl': 'http://localhost:8080/jenkins/',
'in_JenkinsBuildName': '02_UiPathApplicationDemo'
}
{
'in_JenkinsBaseUrl': 'http://localhost:8080/jenkins/',
'in_JenkinsBuildName': '02_UiPathApplicationDemo'
}