How to prevent Studio/Robot from downloading packages from locations outside of the United States (US)?
Controlling the geographic location where a package is downloaded from by the third-party Services the Robot Connects To is out of UiPath's control. The Azure CDN, for example, has complete control over where they direct connections to download files. There is no way of knowing where the download originates.
Currently, the only method of preventing the download of packages from locations outside of the US is to use the same methodology as our users who operate in air-gapped environments:
- Manually upload dependencies to Orchestrator
- Configure Studio/Robot to download only from Orchestrator.
If the Orchestrator is in Automation Cloud, then ensure the Tenant and Service region is located in the United States. Please review this documentation for how to check/change your region.
The section below in our "Where Automation Cloud Data Is Stored?" documentation, the Organization and Service Data section indicates that if not subscribed to a Community or Free plan, then packages manually uploaded to the Tenant feed will reside in the selected tenant region.
Once you have confirmed your region is US, then manually upload the packages to Orchestrator. Refer to our documentation on Managing Packages in Offline Environments replacing step 5 with uploading to Orchestrator.
Creating a custom feed on your network, as an alternative to Orchestrator, is an option to be considered as well.
To download all packages from the Official NuGet feed "https://api.nuget.org/v3/index.json," use the NuGet CLI tool. Note that downloading all packages from a feed can be a time-consuming process, and it may result in a large amount of data being downloaded. Ensure you have sufficient disk space and a reliable internet connection before proceeding.
Using the NuGet CLI, perform the below,
-
Install NuGet CLI
-
If NuGet CLI is not installed, download it from the official website: https://www.nuget.org/downloads
-
-
Create a directory for the packages:
-
Create a directory to store all the downloaded NuGet packages.
-
-
Open a Command Prompt or Terminal
-
Open a command prompt or terminal window and navigate to the directory where the packages are created
-
-
Use the NuGet CLI to download all packages:
-
Run the following command to download all packages from the specified feed:
-
nuget list source https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json | nuget install -source https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json -OutputDirectory -AllVersions -Prerelease
-
`nuget list source https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json` lists all the packages available in the specified NuGet feed.
-
`nuget install -source https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json -OutputDirectory -AllVersions -Prerelease` downloads all the listed packages from the feed and saves them to the specified directory. Replace `` with the actual path to the packages directory.
-
-
-
-
Wait for the download to complete:
-
The command will download all packages to the specified directory.
-
Depending on the number of packages and your internet connection, this can take a very long time.
-
After the download completes, all the packages from the specified NuGet feed will be present in the chosen directory.
-
- The chosen directory can be added as a User Defined Package Source in Studio:
- The custom feed can be configured at installation time via the CUSTOM_NUGET_FEEDS Command when installing Studio/Robot via command line.