what is nugget ? How is it used in publishing package to orchestrator ?


This is a huge topic to discuss :slight_smile:, but just to give you a brief

It is the windows specific file which is just a collection of platform tools. As we need to share some modules to all over the windows machines, we need to convert the Class Library code to dll and then the dll should be converted as a Nuget package and then it should be imported to any machine and then we can use that.

Usually dll’s can also be imported directly and use.

Coming to UiPath, when we publish the package from studio, it will be published as a nuget package to the orchestrator

Hey @Shalini_J

Welcome to the Community Forum :slight_smile:

  • NuGet is a free and open-source package manager designed for the Microsoft development platform (formerly known as NuPack).

  • NuGet is a Package management system

  • Nuget is a mechanism through which developers can create, share, and consume useful code. in a form of “packages”

  • Nuget is Microsoft-supported mechanism for sharing code.

  • Nuget defines how packages for .NET are created, hosted, and consumed

  • It supports private hosts alongside the public i.e. host, you can use NuGet packages to share code that’s exclusive to an organization.

  • Nuget provides Package targeting compatibility.

Due to Many advantages it offers i.e.

  • Nuget notifies you if your added packages received an update so if you have modified or added new functionality in your custom code or project to use latest version of it.

  • Nuget removes the files and their dependencies or references if you will uninstall or remove it from your project.

  • Nuget Helps to track all changes to project or code stuff easily so we do not have to track it manually.

1. A project becomes a package when it is published to Orchestrator from Studio
2. Packages published to Orchestrator are sent to a default web app that uses the NuGet protocol (custom NuGet feed either public or private, MyGet) 
3. The folder path is displayed in the web.config file, under the NuGet.Packages.Path parameter on the Orchestrator machine
4. we can set folder path on the Robot Machine the **NuGetServerUrl** parameter, in the **UiPath.settings file**

5. If your Robot is not connected to Orchestrator, the default location of the packages is %ProgramData%\UiPath\Packages.

6. Orchestrator uses this NuGet app to maintain package versions. When you deploy a package to an environment, the package is distributed to each of the Robots in the indicated environment .

7. Activities used in the workflow are also pushed to Orchestrator, in a dedicated NuGet feed. This enables the Robot to access the proper versions of activities when it needs to execute a process

I hope now you will have a clear understanding about Nuget and how it is being used by.

UiPath MVP-2018