Compartir a través de


Publicación de paquetes NuGet desde la línea de comandos (dotnet)

Azure DevOps Services | Azure DevOps Server 2022: Azure DevOps Server 2019

En esta guía se explica cómo configurar el proyecto para publicar paquetes NuGet mediante la interfaz de la línea de comandos dotnet.

Prerrequisitos

Producto Requisitos
Azure DevOps - Una organización de Azure DevOps.
- Un proyecto de Azure DevOps .
- Una fuente de Azure Artifacts.
- Descargue e instale el proveedor de credenciales de Azure Artifacts .
- Descargue e instale SDK de .NET Core (2.1.400+).

Conexión a una fuente

  1. Inicie sesión en la organización de Azure DevOps y vaya al proyecto.

  2. Seleccione Artefactos y, a continuación, seleccione la fuente en el menú desplegable.

  3. Escoger Conéctese a la alimentación, y, a continuación, seleccione dotnet del NuGet a la izquierda.

  4. 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>
    
  1. Inicie sesión en el servidor de Azure DevOps y vaya al proyecto.

  2. Seleccione Artefactos y, a continuación, seleccione la fuente.

  3. Seleccione Conectar a la fuente y, a continuación, seleccione dotnet en el panel de navegación izquierdo.

  4. Siga las instrucciones de la sección Configuración del proyecto para conectarse a su fuente.

    Captura de pantalla que muestra cómo conectarse a una fuente con dotnet en Azure DevOps Server 2020 y 2022.

Nota

El .NET no se admite en Azure DevOps Server 2019.

Publica paquetes en un feed de la misma organización

Utilice el siguiente comando para publicar un paquete en tu feed de datos. Reemplace los marcadores de posición por los valores devueltos adecuados:

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

La api-key es necesaria, pero puede proporcionar cualquier cadena como valor al publicar en una fuente de Azure Artifacts.

Publicación de paquetes en una fuente de otra organización

Para publicar los paquetes NuGet en un feed en otra organización de Azure DevOps, primero debe crear un token de acceso personal (PAT) en la organización de destino.

  1. Vaya a la organización que hospeda la fuente de destino y cree un token de acceso personal (PAT) con el ámbito Empaquetado>Lectura y escritura.

  2. Reemplace el marcador de posición <PERSONAL_ACCESS_TOKEN> por el token de acceso personal y, a continuación, ejecute el siguiente comando para agregar el origen del paquete al archivo de nuget.config. Asegúrese de que este archivo se almacena de forma segura y no está protegido 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>
    
  3. Ejecute el siguiente comando para publicar 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.config

dotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg

Nota

Si su organización utiliza un firewall o un servidor proxy, asegúrese de permitir las URL de dominio de Azure Artifacts y las direcciones IP.