Freigeben über


Veröffentlichen eines Pakets in einem Azure Artifacts-Feed

Azure Artifacts ermöglicht Entwicklern die effiziente Verwaltung aller Abhängigkeiten aus einem einzigen Feed. Feeds in Azure Artifacts dienen als Organisationsrepositorys zum Speichern, Verwalten und Freigeben Ihrer Pakete innerhalb Ihres Teams, in organisationen oder öffentlich im Internet. Azure Artifacts-Feeds unterstützen eine vielzahl von Pakettypen, einschließlich NuGet, npm, Python, Maven, Cargo und Universal Packages.

Dieser Artikel führt Sie durch den Prozess der Veröffentlichung Ihres ersten Pakets in einem Azure Artifacts-Feed. Sie haben auch die Möglichkeit, GitHub Copilot zu verwenden, um diesen Prozess zu optimieren und die Funktionen des GitHub Copilot Chat in Visual Studio Code zu erkunden.

Voraussetzungen

Einen Feed erstellen

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie Artefakte und dann Ihren Feed erstellen aus.

  3. Geben Sie einen beschreibenden Namen für Ihren Feed an, und legen Sie dessen Sichtbarkeit fest (wer Pakete in Ihrem Feed anzeigen kann). Definieren Sie den Bereich Ihres Feeds, und wenn Sie Pakete aus öffentlichen Quellen einschließen möchten, aktivieren Sie das Kontrollkästchen "Upstream-Quellen ".

  4. Wählen Sie Erstellen, wenn Sie fertig sind.

    Screenshot, der zeigt, wie Sie einen neuen Feed in Azure DevOps Services erstellen.

  1. Melden Sie sich bei Ihrem Azure DevOps-Server an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie Artefakte und dann Ihren Feed erstellen aus.

  3. Geben Sie einen beschreibenden Namen für Ihren Feed an, und legen Sie dessen Sichtbarkeit fest (wer Pakete in Ihrem Feed anzeigen kann). Definieren Sie den Bereich Ihres Feeds, und wenn Sie Pakete aus öffentlichen Quellen einschließen möchten, aktivieren Sie das Kontrollkästchen "Upstream-Quellen ".

  1. Wählen Sie Erstellen, wenn Sie fertig sind.

    Screenshot, der zeigt, wie Sie einen neuen Feed in Azure DevOps Server 2022 erstellen.

  1. Wählen Sie Erstellen, wenn Sie fertig sind.

    Screenshot, der zeigt, wie Sie einen neuen Feed in Azure DevOps Server 2020 erstellen.

Vorbereiten des Codes

Führen Sie die folgenden Schritte aus, um ein einfaches Klassenbibliotheksprojekt über die Befehlszeile zu erstellen, die Metadaten Ihres Pakets einzurichten und ein NuGet-Paket zu generieren:

  1. Erstellen Sie auf Ihrem lokalen Computer einen neuen Ordner, und geben Sie ihm einen Namen.

  2. Öffnen Sie ein Eingabeaufforderungsfenster, und navigieren Sie zu dem ordner, den Sie erstellt haben.

  3. Führen Sie den folgenden Befehl aus, um ein neues Klassenbibliotheksprojekt zu erstellen:

    dotnet new classlib
    
  4. Öffnen Sie die Csproj-Datei , und fügen Sie die Paketmetadaten innerhalb des <PropertyGroup> Tags hinzu. Die Dateistruktur sollte wie folgt aussehen:

    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
        <TargetFramework>net8.0</TargetFramework>
        <RootNamespace>demo_class_library</RootNamespace>
        <ImplicitUsings>enable</ImplicitUsings>
        <Nullable>enable</Nullable>
    
        <PackageId>YOUR_PACKAGE_NAME</PackageId>
        <Version>YOUR_PACKAGE_VERSION</Version>
        <Authors>YOUR_NAME</Authors>
        <Company>YOUR_COMPANY</Company>
    
      </PropertyGroup>
    
    </Project>
    
  5. Führen Sie den folgenden Befehl aus, um Ihr Projekt zu verpacken und ein .nupkg-Artefakt zu generieren. Ihr NuGet-Paket wird im bin\release Verzeichnis generiert.

    dotnet pack
    

Herstellen einer Verbindung mit einem Feed

  1. Wählen Sie Artefakte und dann Ihren Feed aus dem Dropdownmenü aus.

  2. Wählen Sie "Mit Feed verbinden" und dann "Dotnet " aus dem Abschnitt "NuGet " aus.

  3. Befolgen Sie die Anweisungen im Project-Setup , um Ihre Datei "nuget.config " einzurichten. Die Struktur Ihrer Datei sollte etwa wie folgt aussehen:

    • Projektbezogener Feed:

      <?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>
      
    • Feed mit Organisationsbereich:

      <?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>
      
  1. Melden Sie sich bei Ihrer Azure DevOps-Sammlung an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie Artefakte und dann Ihren Feed im Dropdownmenü aus.

  3. Wählen Sie "Mit Feed verbinden" und dann im linken Navigationsbereich "Dotnet " aus.

  4. Folgen Sie den Anweisungen im Abschnitt "Project-Setup ", um Die Datei "nuget.config " zu konfigurieren und eine Verbindung mit Ihrem Feed herzustellen.

    Screenshot, der zeigt, wie Sie eine Verbindung mit einem Feed mit dotnet in Azure DevOps Server 2020 und 2022 herstellen.

Tipp

Sie können GitHub Copilot fragen, "wie Sie einer vorhandenen Nuget.config-Datei eine neue Paketquelle hinzufügen". Copilot führt Sie durch die Verwendung des nuget sources Add Befehls, um Ihre neue Feedquell-URL zu Ihrer Datei "nuget.config " hinzuzufügen.

Veröffentlichen von Paketen

Führen Sie den folgenden Befehl aus Ihrem Projektverzeichnis aus, um Das Paket zu veröffentlichen. Der ApiKey ist erforderlich, Sie können jedoch bei der Veröffentlichung in einem Azure Artifacts-Feed einen beliebigen Zeichenfolgenwert verwenden.

dotnet nuget push --source <FEED_NAME> --api-key az <PACKAGE_PATH>

Nächste Schritte