UiPath Documentation
cicd-integrations
2024.10
false
CI/CD integrations user guide

Managing NuGet feeds

NuGet feed management options for UiPath CLI, including built-in and custom feeds.

This section describes how you can manage the build-in NuGet feeds. Moreover, it provides information on how you can use custom NuGet feeds according to your specific project requirements.

Disabling the built-in NuGet feeds​

By default, uipcli searches for dependencies in the following built-in feeds:

  • https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json
  • https://gallery.uipath.com/api/v2
  • https://api.nuget.org/v3/index.json
  • C:\Program Files\Microsoft SDKs\NuGetPackages(if this path is on the current agent)
  • C:\Program Files (x86)\Microsoft SDKs\NuGetPackages (if this path is on the current agent)
Note:

UiPath's official package feed is also available at https://pkgs.uipath.com/official/index.json. The Azure DevOps-hosted address is planned for deprecation by April 2027, because Microsoft is retiring public projects in Azure DevOps. For the announced dates, see the deprecation timeline.

You can specify uipcli to not use the built-in feeds by setting the --disableBuiltInNugetFeeds parameter. This parameter can be used to the following tasks: analyze, pack, and test run.When you run uipcli with a configuration file, set "disableBuiltInNugetFeeds": true.

Using custom NuGet feeds​

You can use custom feeds when packing an automation.

Using custom nuget.config in UiPath CLI​

To use custom feed, take the following steps:

  1. Create a custom nuget.config file with the following format:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <packageSources>
        <add key="test custom feed" value="custom_feed_url" />
      </packageSources>
    </configuration><?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <packageSources>
        <add key="test custom feed" value="custom_feed_url" />
      </packageSources>
    </configuration>
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <packageSources>
        <add key="test custom feed" value="custom_feed_url" />
      </packageSources>
    </configuration><?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <packageSources>
        <add key="test custom feed" value="custom_feed_url" />
      </packageSources>
    </configuration>
    
  2. Place the custom nuget.config file in the folder where uipcli is cached:

Using custom nuget.config in Azure DevOps​

You need to update the configuration and copy nuget.config to $(Agent.ToolsDirectory)/uipcli, after the InstallPlatform step, as shown in the following example:

trigger:
- main

pool:
  vmImage: ubuntu-latest

stages:
- stage: Demo
  jobs:
    - job: Demo
      steps:
        - task: UiPathInstallPlatform@4
          inputs:
            cliVersion: 'X_23.6.8581.19168'
        
        - task: CopyFiles@2
          inputs:
            SourceFolder: '$(Build.SourcesDirectory)'
            Contents: 'nuget.config'
            TargetFolder: '$(Agent.ToolsDirectory)/uipcli'

        - task: UiPathPack@4
          inputs:
            versionType: 'AutoVersion'
            projectJsonPath: '$(Build.SourcesDirectory)/AutomationProjects/CrossPlatform/VB/ProjectWithCustomLibraryFromOrchestrator_CrossPlatform_VB/project.json'
            outputPath: '$(Build.ArtifactStagingDirectory)/Output'
            traceLevel: 'Information'
trigger:
- main

pool:
  vmImage: ubuntu-latest

stages:
- stage: Demo
  jobs:
    - job: Demo
      steps:
        - task: UiPathInstallPlatform@4
          inputs:
            cliVersion: 'X_23.6.8581.19168'
        
        - task: CopyFiles@2
          inputs:
            SourceFolder: '$(Build.SourcesDirectory)'
            Contents: 'nuget.config'
            TargetFolder: '$(Agent.ToolsDirectory)/uipcli'

        - task: UiPathPack@4
          inputs:
            versionType: 'AutoVersion'
            projectJsonPath: '$(Build.SourcesDirectory)/AutomationProjects/CrossPlatform/VB/ProjectWithCustomLibraryFromOrchestrator_CrossPlatform_VB/project.json'
            outputPath: '$(Build.ArtifactStagingDirectory)/Output'
            traceLevel: 'Information'

Using custom nuget.config in Jenkins​

You need to update the configuration and copy nuget.config to ${WORKSPACE}/CLI, after the InstallPlatform step, as shown in the following example:

pipeline {
    agent {
        label 'plugins-jenkins-lts-agent-01'
    }

    stages {
        stage('Clone') {
            steps {
                git (
                    branch: 'main',
                    url: 'https://github.com/al3xandru-uipath-qa/CI-Plugins-Customer-Support.git'
                )
            }
        }
        
        stage('Install Platform') {
            steps {
                UiPathInstallPlatform (
                    traceLevel: 'Information'
                )
            }
        }
        
        stage('Copy nuget.config') {
            steps {
                bat 'copy nuget.config CLI\\nuget.config'
            }
        }
        
        stage('Pack') {
            steps {
                UiPathPack (
                    outputPath: '${WORKSPACE}/Output',
                    projectJsonPath: '${WORKSPACE}/AutomationProjects/CrossPlatform/VB/ProjectWithCustomLibraryFromOrchestrator_CrossPlatform_VB/project.json',
                    traceLevel: 'Information',
                    version: AutoVersion()
                )
            }
        }
    }
}
pipeline {
    agent {
        label 'plugins-jenkins-lts-agent-01'
    }

    stages {
        stage('Clone') {
            steps {
                git (
                    branch: 'main',
                    url: 'https://github.com/al3xandru-uipath-qa/CI-Plugins-Customer-Support.git'
                )
            }
        }
        
        stage('Install Platform') {
            steps {
                UiPathInstallPlatform (
                    traceLevel: 'Information'
                )
            }
        }
        
        stage('Copy nuget.config') {
            steps {
                bat 'copy nuget.config CLI\\nuget.config'
            }
        }
        
        stage('Pack') {
            steps {
                UiPathPack (
                    outputPath: '${WORKSPACE}/Output',
                    projectJsonPath: '${WORKSPACE}/AutomationProjects/CrossPlatform/VB/ProjectWithCustomLibraryFromOrchestrator_CrossPlatform_VB/project.json',
                    traceLevel: 'Information',
                    version: AutoVersion()
                )
            }
        }
    }
}

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated