Github Action for packing UiPath projects within a GitHub repository into .nupkg packages, with a given project version number (preferably a semver based version).
Built as a wrapper around the UiPath CLI Task for packing projects
Note: The current version of this action is only compatible with Windows runners
This action requires the following items to be configured:
- UiPath CLI installed on GitHub Actions Runner. This can be done by running the setup-uipath action before this action
- An external application created in Orchestrator with the access scopes specified in the UiPath CLI documentation. With the credentials passed to this actions input from GitHub Secrets (or other safe credential stores)
In the scenario below, the action is used to pack all projects within a repository into .nupkg packages and uses UiPath Automation Cloud for its Orchestrator instance
# Action for packing UiPath projects in a repository
- name: UiPath Pack
uses: Mikael-RnD/UiPath-Pack@v1
with:
orchestratorTenant: TheTenant
orchestratorFolder: "Finance/SE"
orchestratorApplicationId: ${{ secrets.UIPATH_APPLICATION_ID }}
orchestratorApplicationSecret: ${{ secrets.UIPATH_APPLICATION_SECRET }}
orchestratorLogicalName: organizationname # Name of the UiPath Organization
projectVersion: 1.0.0
The scenario illustrated below shows how one can work with providing specific projects only, while also provding a local Orchestrator instance into the orchestratorUrl argument
# Action for packing UiPath projects in a repository
- name: UiPath Pack
uses: Mikael-RnD/UiPath-Pack@v1
with:
projectFilePaths: |
TheProject/project.json
Dispatcher/project.json
orchestratorUrl: "https://mycompany.orchestrator.com/" # Base URL to Orchestrator Instance
orchestratorTenant: TheTenant
orchestratorFolder: "Finance/SE"
orchestratorApplicationId: ${{ secrets.UIPATH_APPLICATION_ID }}
orchestratorApplicationSecret: ${{ secrets.UIPATH_APPLICATION_SECRET }}
orchestratorApplicationScope: "OR.Settings OR.Settings.Read OR.Robots OR.Robots.Read OR.Machines OR.Machines.Read OR.Execution OR.Assets OR.Jobs OR.Users OR.Users.Read OR.Monitoring OR.Tasks OR.Folders OR.Folders.Read OR.BackgroundTasks OR.TestSets OR.TestSetExecutions OR.TestSetSchedules OR.TestDataQueues"
orchestratorLogicalName: organizationname
projectVersion: 1.0.0
Name | Description | Required | Default value |
---|---|---|---|
projectFilePaths | Multiline input containing a list of projects to perform the operations on. If left empty, the action scans for any project.json files in the repository | False | TheProject/project.json |
orchestratorUrl | Base URL to Orchestrator instance | False | https://cloud.uipath.com/ |
orchestratorTenant | Name of the Orchestrator tenant | True | |
orchestratorLogicalName | Id of the UiPath organization | True | |
orchestratorFolder | The fully qualified name of the Orchestrator folder where processes are deployed to | True | |
orchestratorApplicationId | Application ID for the CLI to authenticate with UiPath Orchestrator | True | |
orchestratorApplicationSecret | Application Secret for the CLI to authenticate with UiPath Orchestrator | True | |
orchestratorApplicationScope | External application scope | False | "OR.Assets OR.BackgroundTasks OR.Execution OR.Folders OR.Jobs OR.Machines.Read OR.Monitoring OR.Robots.Read OR.Settings.Read OR.TestSets OR.TestSetExecutions OR.TestSetSchedules OR.Users.Read" |
projectVersion | A valid semver tag version number (without the leading 'v') to set the version of the packages | True |
Name | Description |
---|---|
packagesPath | Path to the folder containing the .nupkg packages generated by this action |