Publicación y restauración de paquetes NuGet desde la línea de comandos (dotnet)
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Azure Artifacts le permite publicar y restaurar los paquetes NuGet hacia y desde la fuente, lo que le permite compartirlos con otros usuarios según la configuración de visibilidad de la fuente. En esta guía se explica cómo configurar el proyecto para publicar o restaurar paquetes mediante la interfaz de la línea de comandos dotnet.
Requisitos previos
Una organización de Azure DevOps y un proyecto. Cree una organización o un proyecto si aún no lo ha hecho.
Una fuente de Azure Artifacts. Cree una fuente si todavía no tiene una.
Descargue e instale el proveedor de credenciales de Azure Artifacts.
Descargue e instale el SDK de .NET Core (2.1.400+).
Conexión a la fuente
Seleccione Artefactos y, a continuación, seleccione la fuente en el menú desplegable.
Seleccione Conectar para alimentar y, a continuación, seleccione dotnet en la sección NuGet de la izquierda.
Cree un archivo nuget.config en la misma carpeta que el archivo csproj o sln . Copie el siguiente fragmento XML y péguelo en el nuevo archivo y reemplace los marcadores de posición por la información pertinente:
Feed con ámbito de organización:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Fuente con ámbito de proyecto:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Inicie sesión en el servidor de Azure DevOps y vaya al proyecto.
Seleccione Artefactos y, a continuación, seleccione la fuente.
Seleccione Conectar a Feed (Fuente) y, a continuación, seleccione dotnet en el panel de navegación izquierdo.
Siga las instrucciones de la sección Configuración del proyecto para conectarse a la fuente.
Nota:
dotnet no se admite en Azure DevOps Server 2019.
Publicar paquetes
Ejecute el siguiente comando para publicar un paquete en la fuente. Reemplace los marcadores de posición por la información adecuada:
dotnet nuget push --source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --api-key <ANY_STRING> <PACKAGE_PATH>
Ejemplo: dotnet nuget push --source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --api-key AZ bin/MyPackage.5.0.2.nupkg
Nota:
solo api-key
se usa como marcador de posición.
Publicación de paquetes desde orígenes externos
Cree un token de acceso personal (PAT) con el ámbito de lectura y escritura de empaquetado.
Reemplace el <PERSONAL_ACCESS_TOKEN> marcador de posición por el token de acceso personal y, a continuación, ejecute el siguiente comando para agregar el origen del paquete al archivo nuget.config . Esto agrega el PAT a nuget.config. Asegúrese de almacenar este archivo de forma segura y no comprobarlo en el control de código fuente.
dotnet nuget add source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --name <SOURCE_NAME> --username <USER_NAME> --password <PERSONAL_ACCESS_TOKEN> --configfile <PATH_TO_NUGET_CONFIG_FILE>
Publique el paquete:
dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
Ejemplo: dotnet nuget add source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --name MySource --username MyUserName --password MyPersonalAccessToken --configfile ./nuget.configdotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg
Nota:
Si su organización usa un firewall o un servidor proxy, asegúrese de permitir las direcciones IP y las direcciones URL de dominio de Azure Artifacts.
Restaurar paquetes
Ejecute el siguiente comando para restaurar los paquetes. La --interactive
marca se usa para solicitar al usuario las credenciales:
dotnet restore --interactive