- Démarrage
- Studio
- Vue d'ensemble (Overview)
- Test d'activités
- Orchestrator
- Testing Robots
- Test Manager
- Intégrations CI/CD
Guide de l'utilisateur de Test Suite
Plugin Jenkins
Cette extension vous permet de créer et de déployer des processus d'automatisation UiPath, ainsi que d'exécuter des cas de test automatisés UiPath.
Pour constituer un pack des projets créés avec UiPath Studio à partir de la version 2020.10, vous devez utiliser la version 2.1 ou une version ultérieure de cette extension.
- Serveur Jenkins fonctionnant sous Windows ou Linux.
- Au moins un esclave Jenkins s'exécutant sous Windows (requis pour l'exécution de l'étape).
-
Instance Orchestrator (les authentifications de base, fédérée ou cloud sont prises en charge).
- Les fonctionnalités de test nécessitent Orchestrator version 2020.4 ou ultérieure.
- Lorsque vous utilisez un Orchestrator sur site sous HTTPS, assurez-vous d'importer le certificat SSL afin que les appels HTTPS à Orchestrator puissent être approuvés.
L'étape post-génération de UiPath Run Job démarre un processus qui a déjà été déployé sur une instance Orchestrator. Dans Orchestrator version 2020.10, vous pouvez trouver les processus exécutés par cette tâche dans l'onglet Processus (Processes). Dans les versions d'Orchestrator 2021.10 et supérieures, vous pouvez trouver les processus exécutés par cette tâche dans Automatisations (Automations), sous Processus (Processes).
Configuration
Paramètre de tâche |
Description |
---|---|
Processus (Process) (obligatoire) |
Nom du processus. Vous pouvez prendre le nom du processus dans l'interface utilisateur d'Orchestrator. Si le processus est déployé dans un dossier Moderne, cet argument doit être le Nom du processus dans l'onglet Processus (Processes). Si le processus est déployé dans un dossier classique, l'argument doit être formé par le nom du processus et l' environnement (par exemple :
NAME: ProcessA ENVIRONMENT: Production ProcessName: ProcessA_Production ).
|
Paramètres |
Chemin d'accès complet à un fichier d'entrée JSON. Ceci est utilisé lorsque le processus nécessite une entrée. Exemple de format de fichier JSON :
|
Priorité (Priority) |
La priorité d’exécution de la tâche. |
Strategy |
Spécifiez la stratégie d’exécution de tâche, les tâches affectées de manière dynamique ou les tâches spécifiques au robot. parmi les options suivantes :
|
Type de tâche (disponible pour les dossiers modernes uniquement) |
Choisir le modèle de licence du runtime sous lequel la tâche doit être exécutée. |
Adresse Orchestrator |
L'adresse de l'instance d'Orchestrator où vous exécuterez le processus. |
Locataire dʹOrchestrator |
Spécifiez le locataire Orchestrator. |
Dossier Orchestrator | Spécifiez le dossier dans lequel le processus spécifié a été déployé.
Pour saisir des sous-dossiers, assurez-vous de saisir à la fois le nom du dossier parent et le nom du sous-dossier. Par exemple, utilisez
AccountingTeam\TeamJohn .
|
Authentification |
Pour l'authentification auprès d'Orchestrator, vous devez créer des informations d'identification dans Jenkins dès le départ. Il existe quatre options pour l'authentification : (1)S’authentifier sur un système Orchestrator local à l’aide d’un nom d’utilisateur et d’un mot de passe (2) Authentifiez-vous auprès d’un Cloud Orchestrator à l’aide d’un jeton de réactualisation (clé API). (3) Authentifiez - vous auprès d' Orchestrator cloud à l' aide de l' authentification d' application externe. (4) Authentifiez-vous auprès d'un Orchestrator sur site à l'aide de l'authentification d'application externe. |
Chemin de sortie des résultats de tâche |
Spécifiez le chemin de sortie des résultats de la tâche (par exemple,
testResults.json ). Les résultats sont générés au format JSON.
En l’absence de spécification, les résultats sortent au format
UiPathResults.json dans le répertoire d’artefacts Staging. La sortie est au format json.
|
Délai d'attente |
Spécifiez le délai d’attente de l’exécution/des exécutions de tâches en secondes. |
Échec d’échec de tâche |
La tâche globale échoue lorsqu’au moins une tâche échoue. La valeur par défaut est Vrai. |
Attendre l’achèvement de la tâche |
Attendez l’achèvement de l’exécution/des exécutions de tâches. La valeur par défaut est Vrai. |
Niveau de journalisation du traçage |
Paramètre utilisé pour activer la journalisation du traçage à l'un des niveaux suivants :
|
Nb de tâches |
Le nombre d’exécutions de tâches. La valeur par défaut est 1. |
Utilisateur (disponible pour les dossiers Modern uniquement) |
Le nom de l’utilisateur. Il doit s’agir d’un utilisateur de machine, et non d’un utilisateur Orchestrator. Pour les utilisateurs locaux, le format doit être NomMachine\NomUtilisateur. |
Machine (disponible pour les dossiers Modern uniquement) |
Nom de la machine. |
Noms de robot |
Liste de noms de robot spécifiques séparés par une virgule. |
Exemple de pipeline
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'
)
}
}
}
uft-8
.
name,type,value,description
asset_1_name,text,asset_value,this is an test description # we can have comments
asset_2_name,integer,123
asset_3_name,boolean,false
asset_4_name,credential,"username::password"
name,type,value,description
asset_1_name,text,asset_value,this is an test description # we can have comments
asset_2_name,integer,123
asset_3_name,boolean,false
asset_4_name,credential,"username::password"
Quatre types d'actifs sont disponibles :
- Texte
- Entier
- Booléen
-
Identifiants Pour ce type de ressource, vous devez coder le nom d'utilisateur et le mot de passe en utilisant
::
pour séparer les deux champs.
Configuration
Paramètre de tâche |
Description |
---|---|
Action |
Que faire des ressources fournies : déployer ou supprimer. Si une ressource déployée existe, elle sera mise à jour à la place. |
Adresse Orchestrator |
L'adresse de l'instance d'Orchestrator où vous allez déployer ou mettre à jour les ressources. |
Locataire dʹOrchestrator |
Spécifiez l’instance d’Orchestrator vers laquelle les ressources vont être déployées ou mises à jour. |
Dossier Orchestrator |
Spécifiez le dossier dans lequel les ressources seront déployées ou mises à jour. Pour saisir des sous-dossiers, assurez-vous de saisir à la fois le nom du dossier parent et le nom du sous-dossier. Par exemple, utilisez
AccountingTeam\TeamJohn .
|
Authentification |
Pour l'authentification auprès d'Orchestrator, vous devez créer des informations d'identification dans Jenkins dès le départ. Il existe quatre options pour l'authentification : (1)S’authentifier sur un système Orchestrator local à l’aide d’un nom d’utilisateur et d’un mot de passe (2) Authentifiez-vous auprès d’un Cloud Orchestrator à l’aide d’un jeton de réactualisation (clé API). (3) Authentifiez - vous auprès d' Orchestrator cloud à l' aide de l' authentification d' application externe. (4) Authentifiez-vous auprès d’un Orchestrator sur site à l’aide de l’authentification d’application externeauthentification d’application externe. |
Chemin d’accès au fichier CSV |
Chemin d'accès au fichier CSV contenant les détails de l'actif. Le même fichier peut être utilisé pour déployer ou mettre à jour les ressources, bien que le type ne soit pas requis pour les mises à jour. Le champ
type peut également être vide, mais la colonne doit être présente. Pour la suppression, seule la colonne name est utilisée, les autres colonnes peuvent donc être vides, mais elles doivent être présentes.
Vous pouvez définir une description facultative pour chaque ressource (par exemple :
type , value , description ). Assurez-vous de supprimer tous les sauts de ligne, car chaque ligne est interprétée comme une nouvelle ressource.
|
Niveau de journalisation du traçage |
Paramètre utilisé pour activer la journalisation du traçage à l'un des niveaux suivants :
|
Exemple de pipeline
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
UiPathAssets (
assetsAction: DeployAssets(),
credentials: Token(accountName: '', credentialsId: ''),
filePath: '${WORKSPACE}/test.csv',
folderName: 'Default',
orchestratorAddress: 'https://test-orchestrator.somedomain.com',
orchestratorTenant: 'Default',
traceLoggingLevel: 'None'
)
UiPathAssets(
assetsAction: DeleteAssets(),
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
filePath: '${WORKSPACE}/test.csv',
folderName: 'Default',
orchestratorAddress: 'https://test-orchestrator.somedomain.com',
orchestratorTenant: 'Default',
traceLoggingLevel: 'None'
)
}
}
}
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
UiPathAssets (
assetsAction: DeployAssets(),
credentials: Token(accountName: '', credentialsId: ''),
filePath: '${WORKSPACE}/test.csv',
folderName: 'Default',
orchestratorAddress: 'https://test-orchestrator.somedomain.com',
orchestratorTenant: 'Default',
traceLoggingLevel: 'None'
)
UiPathAssets(
assetsAction: DeleteAssets(),
credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
filePath: '${WORKSPACE}/test.csv',
folderName: 'Default',
orchestratorAddress: 'https://test-orchestrator.somedomain.com',
orchestratorTenant: 'Default',
traceLoggingLevel: 'None'
)
}
}
}
Application : RPA
Type : tâche de génération
UiPath Pack est disponible dans les tâches et les pipelines standard, et vous permet de compresser un projet UiPath existant dans un package NuGet.
Configuration
Paramètre de tâche |
Description |
---|---|
Choisir une méthode de contrôle de version |
Les packages UiPath sont versionnés. Avec le pack UiPath, vous pouvez choisir entre 3 options différentes : (1) Génération automatique (2) Définir la version personnalisée (3) Utilisez la version actuelle définie dans le projet. |
Chemin d’accès au(x) projet(s) |
Emplacement du/des projet(s) à compresser. Il peut s’agir d’un chemin direct vers un fichier
project.json ou un répertoire contenant un ou plusieurs projets. Dans ce dernier cas, chaque projet de niveau un est compressé individuellement.
|
OutputFolder |
Chemin d'accès au dossier dans lequel vous souhaitez créer le package. |
Type de sortie |
Le type de sortie du ou des projets. Il existe 5 options pour le type de projet (s) : (1) Type de sortie du projet (2) Compresser un projet de processus (3) Compresser un projet de bibliothèque (4) Compresser un projet de tests (5) Pack d'un projet d'objets. |
Exécuter l’analyse du workflow |
Exécutez l'analyse du workflow avant l'emballage, en vérifiant le projet via des règles prédéfinies pour les violations. Échec de la tâche en cas d'erreurs. Par défaut, l'analyse n'est pas exécutée. |
Niveau de journalisation du traçage |
Paramètre utilisé pour activer la journalisation du traçage à l'un des niveaux suivants :
|
Utiliser Orchestrator |
Utilisez le flux Orchestrator lors de l'empaquetage des bibliothèques. L'instance d'Orchestrator doit être de version 20.4 ou supérieure. Le flux de bibliothèque doit autoriser l'authentification par clé API dans Locataire (Tenant) > Paramètre ( Setting ) > Déploiement(Deployment) . |
Adresse Orchestrator |
Spécifiez l’adresse de l’instance d’Orchestrator depuis laquelle les dépendances de bibliothèque doivent être restaurées. |
Locataire dʹOrchestrator |
Locataire Orchestrator à partir duquel les dépendances de bibliothèque doivent être restaurées. |
Authentification |
Pour l'authentification auprès d'Orchestrator, vous devez créer des informations d'identification dans Jenkins dès le départ. Il existe quatre options pour l'authentification : (1)S’authentifier sur un système Orchestrator local à l’aide d’un nom d’utilisateur et d’un mot de passe (2) Authentifiez-vous auprès d’un Cloud Orchestrator à l’aide d’un jeton de réactualisation (clé API). (3) Authentifiez - vous auprès d' Orchestrator cloud à l' aide de l' authentification d' application externe. (4) Authentifiez-vous auprès d'un Orchestrator sur site à l'aide de l'authentification d'application externe. |
Exemple de pipeline
ipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
steps {
UiPathPack (
outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}",
projectJsonPath: "UiBank\)\)\)\)project.json",
version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"]
useOrchestrator: true,
traceLoggingLevel: "None",
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”]
)
}
}
}
}
ipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('Build') {
steps {
UiPathPack (
outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}",
projectJsonPath: "UiBank\)\)\)\)project.json",
version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"]
useOrchestrator: true,
traceLoggingLevel: "None",
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”]
)
}
}
}
}
Application : RPA
Type : tâche post-construction
UiPath Deploy est disponible dans les tâches et les pipelines standard, et vous permet de déployer un package UiPath NuGet sur UiPath Orchestrator.
Configuration
Paramètre de tâche |
Description |
---|---|
Chemin d’accès au(x) package(s) |
Le dossier qui contient votre ou vos packages nuget UiPath. |
Adresse Orchestrator |
Spécifiez l’adresse de l’instance d’Orchestrator vers laquelle le(s) package(s) va/vont être déployé(s). |
Locataire dʹOrchestrator |
Spécifiez le locataire Orchestrator vers lequel le(s) package(s) va/vont être déployé(s). |
Dossier Orchestrator |
Dossier de destination du déploiement. Si le dossier est un dossier classique, vous devez également définir le champ
environments . La définition du champ environments n’est pas requise pour les dossiers modernes.
Pour saisir des sous-dossiers, assurez-vous de saisir à la fois le nom du dossier parent et le nom du sous-dossier. Par exemple, utilisez
AccountingTeam\TeamJohn .
|
Environnements (requis pour les dossiers classiques) |
Spécifiez l’environnement vers lequel le package va être déployé en tant que processus. Dans le cas d’un projet et d’un environnement comportant des processus existants, ces processus sont mis à jour de façon à utiliser la dernière version du projet. Spécifiez l’environnement vers lequel le package va être déployé en tant que processus. Dans le cas d’un projet et d’un environnement comportant des processus existants, ces processus sont mis à jour de façon à utiliser la dernière version du projet. |
Points d’entrée |
Spécifiez les points d'entrée pour créer ou mettre à jour un processus. Le point d'entrée spécifie le chemin du fichier à partir de la racine du projet. Conditions
|
Authentification |
Pour l'authentification auprès d'Orchestrator, vous devez créer des informations d'identification dans Jenkins dès le départ. Il existe quatre options pour l'authentification : (1)S’authentifier sur un système Orchestrator local à l’aide d’un nom d’utilisateur et d’un mot de passe (2) Authentifiez-vous auprès d’un Cloud Orchestrator à l’aide d’un jeton de réactualisation (clé API). (3) Authentifiez - vous auprès d' Orchestrator cloud à l' aide de l' authentification d' application externe. (4) Authentifiez-vous auprès d’un Orchestrator sur site à l’aide de l’authentification d’application externeauthentification d’application externe. |
Niveau de journalisation du traçage |
Paramètre utilisé pour activer la journalisation du traçage à l'un des niveaux suivants :
|
Assurez-vous que votre réseau autorise l'accès au flux de package NuGet suivant :
- https://api.nuget.org/v3/index.json
- https://uipath.pkgs.visualstudio.com/_packaging/nuget-packages/nuget/v3/index.json
- (https://uipath.pkgs.visualstudio.com/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json)
- https://www.myget.org/F/workflow
- http://www.myget.org/F/uipath
- https://www.myget.org/F/uipath-dev/api/v3/index.json
Exemple de pipeline
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('PostBuild') {
steps {
UiPathDeploy (
packagePath: "path\)\)\) o\)\)NuGetpackage",
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
folderName: "folder name",
environments: "environment",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”],
traceLoggingLevel: 'None'
)
}
}
}
}
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('PostBuild') {
steps {
UiPathDeploy (
packagePath: "path\)\)\) o\)\)NuGetpackage",
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
folderName: "folder name",
environments: "environment",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”],
traceLoggingLevel: 'None'
)
}
}
}
}
Test d'application
Type : tâche post-construction
UiPath Run tests est disponible dans les tâches et les pipelines standard, et vous permet :
- Exécutez un ensemble de tests existant dans Orchestrator.
- Empaquetez, déployez et exécutez des cas de test en spécifiant le chemin d'accès à un projet de test UiPath.
Une fois l'exécution du test terminée, l'onglet Résultat du test ( Test Result ) est publié dans le build Jenkins, affichant les résultats détaillés. De plus, un fichier de résultats de test JUnit est créé dans le chemin de sortie des résultats de test, lorsqu'il est spécifié, ou à la racine de l'espace de travail si non spécifié.
En fonction du résultat, le build sera soit marqué comme réussi (tous les cas de test sont réussis), soit comme échoué (au moins un cas de test a échoué).
Configuration
Paramètre de tâche |
Description |
---|---|
Cible |
|
Chemin de sortie des résultats de test |
L'ensemble de tests exécuté renvoie le résultat du test sous la forme de
junit.xml . Spécifiez le chemin où le résultat doit être stocké, par rapport au répertoire de l'espace de travail Jenkins (par exemple, result.xml ).
|
Paramètres d’entrée |
Définissez des arguments personnalisés pour vos cas de test afin de remplacer les valeurs par défaut au niveau de l'ensemble de tests. Grâce aux arguments, vous pouvez paramétrer les cas de test au moment de l'exécution. Pour définir des arguments, vous devez avoir publié un package avec des arguments. |
Adresse Orchestrator |
Spécifiez l’adresse de l’instance d’Orchestrator vers laquelle le(s) package(s) va/vont être déployé(s). |
Locataire dʹOrchestrator |
Spécifiez le locataire Orchestrator vers lequel le(s) package(s) va/vont être déployé(s). |
Dossier Orchestrator |
Dossier de destination du déploiement. Si le dossier est un dossier classique, vous devez également définir le champ
environments .
Pour les dossiers modernes, la définition du
environments . n'est pas nécessaire.
Pour saisir des sous-dossiers, assurez-vous de saisir à la fois le nom du dossier parent et le nom du sous-dossier. Par exemple, utilisez
AccountingTeam\TeamJohn .
|
Environnements (requis pour les dossiers classiques) |
Spécifiez l’environnement vers lequel le package va être déployé en tant que processus. Dans le cas d’un projet et d’un environnement comportant des processus existants, ces processus sont mis à jour de façon à utiliser la dernière version du projet. Spécifiez l’environnement vers lequel le package va être déployé en tant que processus. Dans le cas d’un projet et d’un environnement comportant des processus existants, ces processus sont mis à jour de façon à utiliser la dernière version du projet. |
Authentification |
Pour l'authentification auprès d'Orchestrator, vous devez créer des informations d'identification dans Jenkins dès le départ. Il existe quatre options pour l'authentification : (1)S’authentifier sur un système Orchestrator local à l’aide d’un nom d’utilisateur et d’un mot de passe (2) Authentifiez-vous auprès d’un Cloud Orchestrator à l’aide d’un jeton de réactualisation (clé API). (3) Authentifiez - vous auprès d' Orchestrator cloud à l' aide de l' authentification d' application externe. (4) Authentifiez-vous auprès d’un Orchestrator sur site à l’aide de l’authentification d’application externeauthentification d’application externe. |
Délai d'attente (secondes) |
Délai d'expiration de l'exécution du test. La valeur par défaut est de 7 200 secondes. Si le délai est dépassé avant que l'exécution sur Orchestrator ne soit terminée et renvoie le résultat, la construction sera annulée et marquée comme ayant échoué. |
Niveau de journalisation du traçage |
Paramètre utilisé pour activer la journalisation du traçage à l'un des niveaux suivants :
|
Exemple de pipeline
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('PostBuild') {
steps {
UiPathTest (
testTarget: [$class: 'TestSetEntry', testSet: "My Test Set"],
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
folderName: "folder name",
timeout: "10000",
traceLoggingLevel: 'None',
testResultsOutputPath: "result.xml",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: "credentialsId"]
)
}
}
}
}
pipeline {
agent any
environment {
MAJOR = '1'
MINOR = '0'
}
stages {
stage ('PostBuild') {
steps {
UiPathTest (
testTarget: [$class: 'TestSetEntry', testSet: "My Test Set"],
orchestratorAddress: "OrchestratorUrl",
orchestratorTenant: "tenant name",
folderName: "folder name",
timeout: "10000",
traceLoggingLevel: 'None',
testResultsOutputPath: "result.xml",
credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: "credentialsId"]
)
}
}
}
}
Étape 1 : Configurez votre application externe et vos étendues. Après avoir ajouté l'application, conservez l' ID de l'application, la clé secrète et les étendues d'application à portée de main, à utiliser pour l'étape suivante.
Étape 2 : Configurez les informations d'identification de l'application en tant que texte secret dans Jenkins. Pour cette étape, vous avez besoin du secret généré dans Automation Cloud.
Étape 3 : configurez l'authentification pour chaque tâche sous Actions post-construction, en ajoutant le nom du compte, suivi de l'ID d'application, du secret et des étendues d'application générés via Automation Cloud.
- Tous les chemins spécifiés doivent être locaux à l'espace de travail actuel. Vous pouvez utiliser des variables d'environnement dans les chemins d'accès, mais vous devez vous assurer qu'elles génèrent des chemins d'accès locaux à l'espace de travail.
- Pour déployer des packages ou exécuter des tests, assurez-vous que l'utilisateur authentifié dispose des autorisations Vue des dossiers (ou Vue Unités d'organisation) et (20.4+ uniquement) Vue des tâches en arrière -plan.
- Pour empaqueter des bibliothèques, lorsque vous êtes connecté à une instance d'Orchestrator, assurez-vous que l'utilisateur authentifié dispose de l'autorisation Consultation des bibliothèques .
-
Pour plus de détails sur la gestion des applications externes :
- Pour Cloud Orchestrator, veuillez vous référer à la documentation officielle.
- Pour Orchestrator sur site, veuillez vous référer à la documentation officielle.
Si vous rencontrez des problèmes d’installation ou de mise à niveau, envisagez les scénarios de résolution de problèmes suivants :
Description: erreur non autorisée.
Solution :
-
Si vous utilisez l'authentification de base: assurez-vous que la combinaison nom d'utilisateur-mot de passe sur la connexion Web est correcte.
Si l'authentification fédérée est activée, assurez-vous d'écrire le nom d'utilisateur dans la tâche en tant que « DOMAINE\utilisateur »
-
Si vous utilisez l'authentification par jeton:
- Révoquez le jeton du panneau d'accès à l'API et générez-en un nouveau.
- Assurez-vous que l'utilisateur qui a généré la clé peut accéder à Orchestrator et dispose d'un compte utilisateur sur l'instance Orchestrator.
- Si vous vous authentifiez par rapport à un Orchestrator sur site: assurez-vous que le certificat Orchestrator est valide et que la machine exécutant la tâche fait confiance au certificat Orchestrator au cas où vous utiliseriez un certificat auto-signé. Vous pouvez recevoir cette erreur car le certificat utilisé pour Orchestrator n'est pas valide. Cela peut signifier qu’il a le mauvais CN ou d’autres problèmes de validation.
Remède: l'utilisateur n'a pas l'autorisation d'effectuer l'action. Assurez-vous que l'utilisateur dispose des autorisations pour lire les dossiers, télécharger des packages, créer et mettre à jour des processus, lire des ensembles de tests et des cas de test, lire des tâches en arrière-plan et créer et exécuter des ensembles de tests.
Solution: assurez-vous que l'utilisateur authentifié utilisé par les plug-ins CI/CD dispose des autorisations Folders.View et BackgroundTask.View (uniquement pour la version 20.4).
Solution: assurez-vous que le package que vous essayez de déployer n'existe pas déjà avec la même version. S'il existe, envisagez d'utiliser la gestion automatique des versions de package, afin que la nouvelle version soit augmentée à chaque déploiement.
C:\Windows or C:\Program Files
) pour lequel l'utilisateur ne dispose pas d'autorisations, assurez-vous que l'espace de travail est placé sur un chemin accessible par l'utilisateur.
???
.
file.encoding
sur UTF-8 dans les options Java :
Lors de l'exécution de Jenkins sous Windows en tant que service : dans le fichier de configuration du service, ajoutez les arguments à l'intérieur de la balise. Suivez l'exemple de script ci-dessous.
<arguments>-Xrs -Xmx512m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -jar "%BASE%\)\)jenkins.war" --httpPort=8080 --webroot="%BASE%\)\)war"</arguments>
<arguments>-Xrs -Xmx512m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -jar "%BASE%\)\)jenkins.war" --httpPort=8080 --webroot="%BASE%\)\)war"</arguments>
--env JAVA_OPTS="..."
, en suivant l'exemple de script ci-dessous.
docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS=-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 jenkins/jenkins:lts
docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS=-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 jenkins/jenkins:lts
CATALINA_OPTS
. Suivez l'exemple de script ci-dessous.
export CATALINA_OPTS="-DJENKINS_HOME=/path/to/jenkins_home/ -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -Xmx512m"
export CATALINA_OPTS="-DJENKINS_HOME=/path/to/jenkins_home/ -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -Xmx512m"
JAVA_ARGS
et ajoutez l'encodage du fichier. Suivez l'exemple de script ci-dessous :
JAVA_ARGS="-Dfile.encoding=UTF-8 -Xmx512m"
JAVA_ARGS="-Dfile.encoding=UTF-8 -Xmx512m"
Lors de l'exécution sur des distributions RedHat basées sur Linux : dans le fichier de configuration, recherchez l'argument JENKINS_JAVA_OPTIONS et ajoutez l'encodage du fichier. Suivez l'exemple de script ci-dessous.
JENKINS_JAVA_OPTIONS="-Dfile.encoding=UTF-8 -Xmx512m"
JENKINS_JAVA_OPTIONS="-Dfile.encoding=UTF-8 -Xmx512m"
- Prérequis
- Installation et activation du plugin
- Tâches (Jobs)
- UiPath Run Job
- UiPath Manage Assets
- UiPath Pack
- UiPath Deploy
- UiPath Run Tests
- Obtention de la clé API Cloud Orchestrator
- Configurer la connexion au service pour les applications externes
- Informations supplémentaires
- Dépannage du plugin Jenkins
- Erreur non autorisée
- Erreur interdite
- Dossier/environnement introuvable
- Le package existe déjà (conflit)
- Échec de l'exécution de la commande (erreur générique)
- Jenkins ne parvient pas à traiter les chemins contenant des caractères non latins
- Windows
- Linux