Skip to content

UiPath-Services/UiPath-DevOps-Scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Release Notes

Released Date 24/04/2024

Released Date 13/02/2023

  • Upgraded the scripts to use the official UiPath CLI
  • for self-hosted agents, add paramter to provide path of the UiPath CLI if available on the machine instead of auto downloading the scrip

UiPath DevOps Scripts 🤖

Package, deploy, run automations, run tests, manage assets, and analyze automatin projects.
Youtube Video The video was created when the library was first released, so it does not include any features added afterward. Youtube Video

Overview

More and more customers are requesting integrations of uipath platform to other platforms like GitLab and Circle CI and UiPath is not able to create native plugins for all of them.

This unofficial library of DevOps PowerShell scripts will support customers to facilitate the interaction with the offical UiPath CLI to integrate CI/CD into their workflows and allow them to package, deploy and run automations and tests.

Prerequisite:

  • The provisioned vm or agent should be a window machine
  • Add a step in your CI/CD pipepline to download the descired scripts. (Download only the scripts you need, for example if you want to Pack an RPA project then download UiPathPack script) Use the scripts below as one step in your pipeline and give at any name (e.g. "Preparing Environment")

It is recommended to download copy of the scripts from the scripts folder into your own repository

#Create scripts folder under C drive. (you can change the directory path )
New-Item -Path "C:\\" -ItemType "directory" -Name "scripts";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathPack.ps1" -OutFile "C:\\scripts\\UiPathPack.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathDeploy.ps1" -OutFile "C:\\scripts\\UiPathDeploy.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathJobRun.ps1" -OutFile "C:\\scripts\\UiPathJobRun.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathRunTest.ps1" -OutFile "C:\\scripts\\UiPathRunTest.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathManageAssets.ps1" -OutFile "C:\\scripts\\UiPathManageAssets.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathAnalyzeProject.ps1" -OutFile "C:\\scripts\\UiPathAnalyzeProject.ps1";
Invoke-WebRequest "https://github.com/UiPath-Services/UiPath-DevOps-Scripts/raw/main/scripts/UiPathCLIGeneric.ps1" -OutFile "C:\\scripts\\UiPathCLIGeneric.ps1";
  You can't create directory outside your CI/CD privisioned machine? Some CI/CD tool, like gitlab, may not allow the creation of folder outside the build/working directory . For this you need to place the folder and scripts inside the working directory. In the above script you will need to replace "C:\\" with the the CI/CD tool variable referencing the working directory.
for example,
GitLab $env:CI_PROJECT_DIR
GitHub Actions: ${{github.workspace}}
..etc

Powershell Scripts

Five available scripts can be utilized

Script Description
UiPathPack Pack one or more projects into a package. Click on the name for detailed documentation
UiPathDeploy Deploy packages to an Orchestrator instance, optionally publishing them to a set of environments. Click on the name for detailed documentation
UiPathJobRun Trigger a job on Orchestrator. Click on the name for detailed documentation
UiPathRunTest Tests a given package or runs a test set. Click on the name for detailed documentation
UiPathManageAssets Manage uipath orchestrator assets.
UiPathAnalyzeProject Check project(s) for workflow analyzer violations
UiPathCLIGeneric This script is designed for those who know how to work with uipcli.exe and would like to call the cli directly. This script will pass the provided parameters as is directly to uipcli.exe.

PipleLines Samples provided in the video

CircleCI sample
GitLab sample

Logging

Each script will log all output to its own *.log file and sometimes to the console.

Dependency

The scripts will automatically download the UiPath.CLI during the runtime.