UiPath Documentation
uipath-cli
latest
false
Important :
Ce contenu a été traduit à l'aide d'une traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Guide de l'utilisateur de UiPath CLI

Votre premier pipeline

Cette page explique comment prendre une solution UiPath sur disque et l'envoyer à Orchestrator de bout en bout: la compresser localement, la publier dans le flux de solution de votre locataire et la déployer dans un dossier. Il utilise l'outil solution , qui fonctionne de la même manière à partir d'un ordinateur portable de développeur et d'un pipeline CI.

Éléments requis

  • UiPath CLI installée et une session connectée. Voir Installation de UiPath CLI et Authentification.
  • Une solution UiPath sur disque. uip solution pack accepte l'une ou l'autre de ces deux formes (correspondant au solution pack --help propre à la CLI):
    • un répertoire de solution contenant un descripteur de .uipx solution (le cas courant — ce que Studio écrit et ce que uip solution new crée), ou
    • un fichier.uis autonome (un artefact de solution pré-groupé).
  • Un chemin du dossier Orchestrator dans lequel vous souhaitez que la solution soit déployée (par exemple, Shared/MySolutionFolder).

Le flux

Trois commandes, chacune une étape distincte pour que vous puissiez les exécuter indépendamment dans un pipeline CI:

  1. uip solution pack — produit un package .zip versionné à partir du répertoire de la solution.
  2. uip solution publish — téléchargez le .zip dans le flux de solution du locataire.
  3. uip solution deploy run — Créez un dossier et déployez le package publié dans Orchestrator.

Étape 1. Créer un package de la solution

uip solution pack ./my-solution ./dist \
  --name my-solution \
  --version 1.0.0
uip solution pack ./my-solution ./dist \
  --name my-solution \
  --version 1.0.0

Arguments:

  • Le premier argument de position est le répertoire de la solution (ou un fichier .uis ).
  • Le second est le répertoire de sortie. uip le crée si manquant.

Indicateurs:

  • --name remplace le nom du package (par défaut: le nom du répertoire de la solution).
  • --version définit la version du package (par défaut: 1.0.0). Utilisez le contrôle de version sémantique pour améliorer la lisibilité et permettre à Orchestrator de trier correctement les versions.

Si le processus réussit, ./dist/my-solution.1.0.0.zip s'écrit. La réponse JSON renvoie Data.Package (formaté en tant que name@version) et Data.Packages (les noms de fichiers .nupkg internes). Le chemin d'accès .zip suit la convention {outputDir}/{name}.{version}.zip, de sorte que les pipelines peuvent le construire sans analyser JSON:

NAME=my-solution
VERSION=1.0.0
uip solution pack ./my-solution ./dist --name "$NAME" --version "$VERSION"
PACKAGE="./dist/${NAME}.${VERSION}.zip"
NAME=my-solution
VERSION=1.0.0
uip solution pack ./my-solution ./dist --name "$NAME" --version "$VERSION"
PACKAGE="./dist/${NAME}.${VERSION}.zip"

Étape 2. Publier sur le locataire

uip solution publish ./dist/my-solution.1.0.0.zip
uip solution publish ./dist/my-solution.1.0.0.zip

Le package est téléchargé dans le flux de solution du locataire. Orchestrator attribue une PackageVersionKey — l'identité de cette version spécifique sur le locataire. publish est idempotent par (name, version) — sa réexécution avec la même version renvoie la version existante au lieu de la dupliquer.

Astuce :

Si vous exécutez contre un locataire spécifique d'une organisation multi-locataire, transmettez --tenant <tenant-name> à publish, pack est indépendant du locataire. En cas de doute, uip login status affiche le locataire auquel la CLI est actuellement liée.

Étape 3. Déployer sur Orchestrator

uip solution deploy run \
  --name MyFirstDeployment \
  --package-name my-solution \
  --package-version 1.0.0 \
  --folder-name MySolutionFolder \
  --folder-path Shared
uip solution deploy run \
  --name MyFirstDeployment \
  --package-name my-solution \
  --package-version 1.0.0 \
  --folder-name MySolutionFolder \
  --folder-path Shared

Indicateurs (obligatoires sauf indication contraire):

  • --name — le nom du déploiement (pas le nom du package). Utilisez quelque chose de significatif; cela identifie le déploiement pour les futurs appels deploy status / deploy activate .
  • --package-name, --package-version — correspond à ce que vous avez publié à l'étape 2.
  • --folder-name — le dossier Orchestrator à créer pour ce déploiement.
  • --folder-path — le chemin du dossier parent. Shared est la racine du locataire.
  • --folder-key — le GUID du dossier parent; Utilisez cette option au lieu de --folder-path si vous préférez lier par ID.

deploy run interroge Orchestrator jusqu'à ce que le déploiement atteigne un état terminal (délai d'interrogation par défaut 360 secondes, personnalisable avec --timeout). La réponse comporte le chemin d’accès au nouveau dossier ainsi que la clé de déploiement.

Remarque :

--name et --folder-name sont deux choses différentes. --name nomme l'enregistrement de déploiement; --folder-name nomme le nouveau dossier Orchestrator créé par le déploiement. Choisir la même valeur pour les deux est fin et courant.

Assembler dans CI

#!/usr/bin/env bash
set -euo pipefail

uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant "$UIPATH_TENANT"

uip solution pack ./my-solution ./dist --version "$BUILD_VERSION"
uip solution publish "./dist/my-solution.$BUILD_VERSION.zip"
uip solution deploy run \
  --name "my-solution-$GIT_SHA" \
  --package-name my-solution \
  --package-version "$BUILD_VERSION" \
  --folder-name MySolutionFolder \
  --folder-path Shared
#!/usr/bin/env bash
set -euo pipefail

uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant "$UIPATH_TENANT"

uip solution pack ./my-solution ./dist --version "$BUILD_VERSION"
uip solution publish "./dist/my-solution.$BUILD_VERSION.zip"
uip solution deploy run \
  --name "my-solution-$GIT_SHA" \
  --package-name my-solution \
  --package-version "$BUILD_VERSION" \
  --folder-name MySolutionFolder \
  --folder-path Shared

Le script se termine au premier statut non nul, donc un échec à n'importe quelle étape abandonne le build. uip renvoie 0 en cas de réussite et 1 en cas d'échec; les commandes avec une sémantique spécifique à un domaine (par exemple uip tm wait, qui réutilise 2 pour le délai d'attente) peuvent renvoyer d'autres codes - voir Codes de sortie.

Après le déploiement

Une fois la solution déployée, Orchestrator dispose d'un dossier (Shared/MySolutionFolder), d'un processus par projet déployable dans la solution et de toutes les ressources associées (ressources, files d'attente, déclencheurs). Vous pouvez désormais:

# confirm the folder exists
uip or folders list --all --path "Shared/MySolutionFolder"

# find the processes that were created
uip or processes list --folder-path "Shared/MySolutionFolder"

# start a job
uip or jobs start <process-key>

# inspect the deployment
uip solution deploy status --deployment-key <deployment-key>
# confirm the folder exists
uip or folders list --all --path "Shared/MySolutionFolder"

# find the processes that were created
uip or processes list --folder-path "Shared/MySolutionFolder"

# start a job
uip or jobs start <process-key>

# inspect the deployment
uip solution deploy status --deployment-key <deployment-key>

Qu’en sera-t-il d’un projet Studio unique?

Pour un seul projet Studio (un répertoire avec project.jsonce n'est pas une solution), le pipeline classique est pack a .nupkgupload to a feedcreate a process. Ce flux utilise les commandes des outils rpa et or :

uip rpa pack ./MyStudioProject ./dist
uip or packages upload ./dist/MyStudioProject.1.0.0.nupkg
uip or processes create \
  --name MyProcess \
  --package-key MyStudioProject \
  --package-version 1.0.0 \
  --folder-path Shared
uip rpa pack ./MyStudioProject ./dist
uip or packages upload ./dist/MyStudioProject.1.0.0.nupkg
uip or processes create \
  --name MyProcess \
  --package-key MyStudioProject \
  --package-version 1.0.0 \
  --folder-path Shared

Consultez uip rpa et les références des packages et processus Orchestrator pour obtenir les listes complètes des indicateurs.

Prochaines étapes

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour