UiPathOrch.psd1
|
# # Module manifest for module 'UiPathOrch' # # Generated by: Yoshifumi Tsuda # # Generated on: 2023/08/28 # @{ # Script module or binary module file associated with this manifest. RootModule = 'UiPathOrch.dll' # Version number of this module. ModuleVersion = '1.1.0' # Supported PSEditions CompatiblePSEditions = @('Core') # ID used to uniquely identify this module GUID = '7098583d-d092-4fe9-bf36-a652e7a51efb' # Author of this module Author = 'Yoshifumi Tsuda' # Company or vendor of this module CompanyName = 'UiPath' # Copyright statement for this module Copyright = 'Copyright 2023-2026 UiPath' # Description of the functionality provided by this module Description = 'PSDrives and cmdlets for UiPath Orchestrator. 💡 First time? Run: Get-OrchHelp' # Minimum version of the PowerShell engine required by this module PowerShellVersion = '7.4.2' # Name of the PowerShell host required by this module # PowerShellHostName = '' # Minimum version of the PowerShell host required by this module # PowerShellHostVersion = '' # Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only. # DotNetFrameworkVersion = '' # Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only. # ClrVersion = '' # Processor architecture (None, X86, Amd64) required by this module # ProcessorArchitecture = '' # Modules that must be imported into the global environment prior to importing this module # RequiredModules = @() # Assemblies that must be loaded prior to importing this module # RequiredAssemblies = @() # Script files (.ps1) that are run in the caller's environment prior to importing this module. # ScriptsToProcess = @() # Type files (.ps1xml) to be loaded when importing this module # TypesToProcess = @() # Format files (.ps1xml) to be loaded when importing this module FormatsToProcess = @('UiPathOrch.Format.ps1xml') # Modules to import as nested modules of the module specified in RootModule/ModuleToProcess NestedModules = @('UiPathOrch.psm1') # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. FunctionsToExport = @( 'Enable-OrchUserAttended', 'Disable-OrchUserAttended', 'Enable-OrchPersonalWorkspace', 'Disable-OrchPersonalWorkspace', 'Find-OrchFolderNoUserAssigned', 'Get-OrchJobVideo', 'Format-OrchQueueItem', 'Format-OrchTestDataQueueItem' ) # Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export. CmdletsToExport = @( 'Import-OrchConfig', 'New-OrchPSDrive', 'Invoke-OrchApi', 'Switch-OrchCurrentUser', 'Get-OrchPSDrive', 'Get-OrchLibrary', 'Get-OrchLibraryVersion', 'Remove-OrchLibrary', 'Import-OrchLibrary', 'Export-OrchLibrary', 'Copy-OrchLibrary', 'Get-OrchPackage', 'Copy-OrchPackage', 'Get-OrchPackageVersion', 'Remove-OrchPackage', 'Import-OrchPackage', 'Export-OrchPackage', 'Get-OrchJob', 'Start-OrchJob', 'Stop-OrchJob', 'Restart-OrchJob', 'Resume-OrchJob', 'Open-OrchJob', 'Get-OrchLog', 'Get-OrchAuditLog', 'Get-OrchJobMedia', 'Export-OrchJobMedia', 'Remove-OrchJobMedia', 'Get-OrchProcess', 'New-OrchProcess', 'Update-OrchProcess', 'Copy-OrchProcess', 'Remove-OrchProcess', 'Edit-OrchProcess', 'Update-OrchProcessVersion', 'Reset-OrchProcessVersion', 'Get-OrchProcessRequirement', 'Get-OrchRobot', 'Get-OrchUser', 'Get-OrchUserPrivilege', 'Add-OrchUser', 'Update-OrchUser', 'Copy-OrchUser', 'Remove-OrchUser', 'Remove-OrchRoleFromUser', 'Get-OrchCurrentUser', 'Update-OrchCurrentUserURPassword', 'Get-OrchLicenseNamedUser', 'Get-OrchLicenseRuntime', 'Enable-OrchLicenseRuntime', 'Disable-OrchLicenseRuntime', 'Get-PmAuditLog', 'Get-PmAuthenticationSetting', 'Get-PmLicense', 'Get-PmLicenseAllocation', 'Get-PmLicenseInventory', 'Get-PmLicenseContract', 'Get-PmLicensedUser', 'Get-PmLicensedGroup', 'Remove-PmLicensedGroup', 'Add-PmLicenseToPmLicensedGroup', 'Remove-PmAllocationFromPmLicensedGroup', 'Remove-PmLicenseFromPmLicensedGroup', 'Get-OrchClassicRobot', 'Get-OrchClassicEnvironment', 'Get-OrchUserSession', 'Get-OrchMachineSession', 'Get-OrchUnattendedSession', 'Clear-OrchInactiveSession', 'Get-OrchTask', 'Get-OrchTaskAcrossFolder', 'Set-OrchTask', 'Remove-OrchTask', 'Enable-OrchMaintenanceMode', 'Disable-OrchMaintenanceMode', 'Get-OrchJobStats', 'Get-OrchLicenseStats', 'Get-OrchRole', 'Set-OrchRole', 'Remove-OrchRole', 'Copy-OrchRole', 'Get-OrchCalendar', 'Remove-OrchCalendar', 'Copy-OrchCalendar', 'Add-OrchCalendarDate', 'Remove-OrchCalendarDate', 'Get-OrchPersonalWorkspace', 'Remove-OrchPersonalWorkspace', 'Get-OrchFolderUsage', 'Get-OrchFolderUser', 'Add-OrchFolderUser', 'Copy-OrchFolderUser', 'Move-OrchFolderUser', 'Remove-OrchFolderUser', 'Add-OrchRoleToFolderUser', 'Remove-OrchRoleFromFolderUser', 'Get-OrchMachine', 'Update-OrchMachine', 'New-OrchMachine', 'Remove-OrchMachine', 'Copy-OrchMachine', 'Get-OrchMachineClientSecretId', 'Add-OrchMachineClientSecret', 'Remove-OrchMachineClientSecret', 'Get-OrchFolderMachine', 'Add-OrchFolderMachine', 'Copy-OrchFolderMachine', 'Remove-OrchFolderMachine', 'Enable-OrchFolderMachineInherit', 'Disable-OrchFolderMachineInherit', 'Get-OrchFolderMachineAccountMapping', 'Enable-OrchFolderMachineAccountMapping', 'Disable-OrchFolderMachineAccountMapping', 'Get-OrchAsset', 'Set-OrchAsset', 'Copy-OrchAsset', 'Remove-OrchAsset', 'Set-OrchCredentialAsset', 'Get-OrchCredentialAsset', 'Set-OrchSecretAsset', 'Get-OrchSecretAsset', 'Remove-OrchAssetUserValue', 'Get-OrchCredentialStore', 'Copy-OrchCredentialStore', 'Update-OrchCredentialStore', 'Remove-OrchCredentialStore', 'Get-OrchAssetLink', 'Add-OrchAssetLink', 'Get-OrchTrigger', 'New-OrchTrigger', 'Update-OrchTrigger', 'Remove-OrchTrigger', 'Copy-OrchTrigger', 'Enable-OrchTrigger', 'Disable-OrchTrigger', 'Test-OrchTrigger', 'Get-OrchApiTrigger', 'Remove-OrchApiTrigger', 'Copy-OrchApiTrigger', 'Enable-OrchApiTrigger', 'Disable-OrchApiTrigger', 'Get-OrchEventTrigger', 'Remove-OrchEventTrigger', 'Enable-OrchEventTrigger', 'Disable-OrchEventTrigger', 'Get-OrchQueue', 'New-OrchQueue', 'Update-OrchQueue', 'Copy-OrchQueue', 'Remove-OrchQueue', 'Get-OrchQueueItem', 'Import-OrchQueueItem', 'Redo-OrchQueueItem', 'Copy-OrchQueueItem', 'Remove-OrchQueueItem', 'Get-OrchTestSet', 'Copy-OrchTestSet', 'Remove-OrchTestSet', 'Start-OrchTestSet', 'Get-OrchTestCase', 'Get-OrchTestCaseExecution', 'Get-OrchTestCaseAssertion', 'Remove-OrchTestCase', 'Get-OrchTestSetExecution', 'Stop-OrchTestSetExecution', 'Get-OrchTestSetSchedule', 'Copy-OrchTestSetSchedule', 'Remove-OrchTestSetSchedule', 'Enable-OrchTestSetSchedule', 'Disable-OrchTestSetSchedule', 'Get-OrchTestDataQueue', 'Copy-OrchTestDataQueue', 'Remove-OrchTestDataQueue', 'Get-OrchTestDataQueueItem', 'Reset-OrchTestDataQueueItem', 'Get-OrchAlert', 'Get-OrchBucket', 'New-OrchBucket', 'Copy-OrchBucket', 'Update-OrchBucket', 'Remove-OrchBucket', 'Get-OrchBucketItem', 'Export-OrchBucketItem', 'Import-OrchBucketItem', 'Remove-OrchBucketItem', 'Get-OrchWebhook', 'Copy-OrchWebhook', 'Update-OrchWebhook', 'Remove-OrchWebhook', 'Enable-OrchWebhook', 'Disable-OrchWebhook', 'Get-OrchWebhookEventType', 'Test-OrchWebhook', 'Get-OrchSetting', 'Set-OrchSetting', 'Get-OrchExecutionSetting', 'Get-OrchWebSetting', 'Get-OrchAuthenticationSetting', 'Get-OrchActivitySetting', 'Get-OrchConnectionString', 'Get-OrchLicense', 'Get-OrchUpdateSetting', 'Get-OrchActionCatalog', 'Copy-OrchActionCatalog', 'Remove-OrchActionCatalog', 'Search-OrchDirectory', 'Search-PmDirectory', 'Resolve-PmDirectoryNameBulk', 'Get-PmUser', 'Update-PmUser', 'Remove-PmUser', 'New-PmUser', 'Copy-PmUser', 'Get-PmRobotAccount', 'Set-PmRobotAccount', 'Copy-PmRobotAccount', 'Remove-PmRobotAccount', 'Get-PmGroup', 'New-PmGroup', 'Copy-PmGroup', 'Remove-PmGroup', 'Get-PmGroupMember', 'Add-PmGroupMember', 'Move-PmGroupMember', 'Remove-PmGroupMember', 'Get-PmExternalApiResource', 'Get-PmExternalApplication', 'Copy-PmExternalApplication', 'Remove-PmExternalApplication', 'Get-PmAccessAllowedMember', 'Get-DuRole', 'Get-DuDocumentType', 'Get-DuClassifier', 'Get-DuExtractor', 'Get-DuUser', 'Add-DuUser', 'Remove-DuRoleFromDuUser', 'Get-TmConfiguration', 'Get-TmProjectSetting', 'Get-TmProjectPermission', 'Get-TmServerInfo', 'Get-TmRequirement', 'Remove-TmRequirement', 'Get-TmTestCase', 'Remove-TmTestCase', 'Get-TmTestSet', 'Remove-TmTestSet', 'Get-TmTestExecution', 'Get-OrchHelp', 'Clear-OrchCache', 'Get-OrchConfigPath', 'Edit-OrchConfig', 'Set-OrchLocation', 'Get-OrchLogLocation', 'Open-OrchLogLocation', 'New-OrchUserMappingCsv', 'Test-OrchUserMappingCsv' ) # Variables to export from this module VariablesToExport = @() # Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export. AliasesToExport = @('!Show-OrchGuide') # DSC resources to export from this module # DscResourcesToExport = @() # List of all modules packaged with this module # ModuleList = @() # List of all files packaged with this module # FileList = @() # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. PrivateData = @{ PSData = @{ # Tags applied to this module. These help with module discovery in online galleries. Tags = @('UiPath', 'Orchestrator', 'RPA', 'Automation', 'PSDrive', 'PSProvider', 'Cloud', 'OnPremises') # A URL to the license for this module. LicenseUri = 'https://github.com/UiPath-Services/UiPathOrch/blob/master/LICENSE' # A URL to the main website for this project. ProjectUri = 'https://github.com/UiPath-Services/UiPathOrch' # A URL to an icon representing this module. # IconUri = '' # ReleaseNotes of this module. # Single-quoted here-string (@'...'@) so apostrophes (e.g. "task's") inside the # body don't have to be doubled. The closing '@ MUST be at column 0 (no leading # whitespace) — that's the only termination rule. ReleaseNotes = @' ## New Features - **Multi-tenant Automation Suite support.** UiPathOrch now correctly assembles `/{org}/{tenant}/orchestrator_/...` URLs for self-hosted Automation Suite deployments, where the gateway routes by service segment and rejects paths that don't begin with `/orchestrator_/`. Earlier releases mis-classified AS as on-premises, stripped the tenant out of the URL into the `X-UIPATH-TenantName` header, and produced broken paths like `/{org}/odata/...` — all data cmdlets returned HTML and tripped the JSON deserializer. - **`Edition` config field.** `UiPathOrchConfig.json` accepts an optional `Edition` per PSDrive: `Cloud`, `AutomationSuite`, or `OnPremises`. If omitted, the edition is auto-detected from the `Root` URL (`*.uipath.com` → Cloud, 2-segment path → AutomationSuite, otherwise OnPremises). `Get-OrchPSDrive` now exposes the resolved value so users can verify the auto-detection. - **Multi-tenant AS sample (`Orch7`) in the bundled config template** for `https://YOUR_AS_HOST/YOUR_ORGANIZATION/YOUR_TENANT` URLs. The existing `Orch5` sample is now scoped to single-tenant Orchestrator on Azure App Service (which has always worked via the on-prem code path). - **`Update-OrchWebhook` / `Update-OrchBucket` / `Update-OrchCredentialStore`** — partial-update cmdlets that close post-migration gaps. `Copy-Orch*` cannot carry write-only fields (Webhook `Secret`, Bucket `Password`, CredentialStore `AdditionalConfiguration`) because the API never returns them; the new `Update-Orch*` cmdlets let you re-supply just those fields after migration. ## Changed - **`Copy-OrchWebhook` nulls the masked `Secret` on copy** instead of forwarding the masked literal (which would silently break signature verification on the destination). A warning points at `Update-OrchWebhook` for re-supplying the real secret. `Copy-OrchBucket` / `Copy-OrchCredentialStore` warnings now name the corresponding `Update-Orch*` cmdlet. ## Migration / Compatibility Notes - Existing Cloud (`*.uipath.com`) and standalone on-premises Orchestrator users: no behavioural change. - Existing on-premises Orchestrator behind a multi-level reverse proxy that produces a 2-segment Root path (rare): the new heuristic mis-classifies as AS. Set `"Edition": "OnPremises"` explicitly to restore previous behaviour. ## Bug Fixes - `Invoke-OrchApi` with a relative path (default base = Orchestrator) now resolves through the edition-aware base URL, so `-ApiPath /odata/Folders` works against AS without the user having to spell out `/orchestrator_/odata/Folders`. - `Identity` / `Token` endpoint resolution: AS deployments now correctly build `/identity_/connect/token` and `/identity_/connect/authorize` (matching the Cloud convention) instead of the on-prem `/identity` paths. ## Internal - New regression test (`BaseUrlRoutingTests`) scans the source for code composing Orchestrator API URLs from the raw tenant base instead of the Orchestrator-service base, so the AS routing bug cannot quietly come back. - New regression test (`EmbeddedConfigTemplateTests`) parses every per-locale `UiPathOrchConfig.json` template and deserializes into `UiPathOrchConfig`, catching JSONC syntax errors and shape mismatches at CI time instead of at first Mount on a user's machine. '@ # Prerelease string of this module # Prerelease = '' # Flag to indicate whether the module requires explicit user acceptance for install/update/save # RequireLicenseAcceptance = $false # External dependent modules of this module # ExternalModuleDependencies = @() } # End of PSData hashtable } # End of PrivateData hashtable # HelpInfo URI of this module # HelpInfoURI = '' # Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix. # DefaultCommandPrefix = '' } |