Megosztás a következőn keresztül:


NuGet-csomagok közzététele

Miután létrehozott egy NuGet-csomagot, és .nupkg fájllal rendelkezik , elérhetővé teheti a csomagot más fejlesztők számára nyilvánosan vagy privát módon. Ez a cikk azt ismerteti, hogyan oszthat meg nyilvános csomagokat globálisan nuget.org keresztül.

A privát csomagokat úgy is elérhetővé teheti csak egy csapat vagy szervezet számára, hogy fájlmegosztáson, privát NuGet-kiszolgálón vagy külső adattárban( például myget, ProGet, Nexus-adattár vagy Artifactory) üzemelteti őket. További információ: Saját NuGet-hírcsatornák kezelése. Az Azure Artifacts használatával történő közzétételről a csomagok közzététele NuGet.org című témakörben olvashat.

Közzététel a nuget.org-ra

Ha a nuget.org-ra szeretne közzétenni, jelentkezzen be a nuget.org oldalra egy Microsoft-fiókkal, és azt használja egy ingyenes nuget.org-fiók létrehozásához. Kövesse az Új egyéni fiók hozzáadása című témakör utasításait.

Képernyőkép a NuGet bejelentkezési hivatkozásról.

Miután rendelkezik fiókkal, közzétehet egy csomagot a nuget.org-ra a nuget.org webes portálon, a dotnet CLI-vel vagy a NuGet CLI 4.1.0-s vagy újabb verziójával. A csomagokat az Azure Pipelineson keresztül is közzéteheti.

Feltöltés a nuget.org webportálra

Csomag feltöltése a nuget.org webhelyre:

  1. Válassza a Feltöltés lehetőséget a nuget.org felső menüjében, keresse meg a csomagot a számítógépen, és válassza a Megnyitás lehetőséget.

    Képernyőkép az nuget.org Feltöltés párbeszédpaneléről

    Ha a csomagazonosító már létezik a nuget.org-on, hibaüzenetet kap. Módosítsa a csomagazonosítót a projektben, csomagolja újra, és próbálja meg újra a feltöltést.

  2. Ha a csomag neve elérhető, megnyílik az Ellenőrzés szakasz, hogy áttekinthesse a csomagjegyzék metaadatait. Ha a csomagba beillesztett egy readme fájlt, válassza az Előnézet-et, hogy az összes tartalom megfelelően megjelenik.

    A metaadatok módosításához szerkessze a projektfájlt vagy a .nuspec fájlt, építse újra, csomagolja újra és töltse fel újra.

  3. Ha minden információ készen áll, válassza a Küldés lehetőséget.

Push parancssor használatával

A csomagok nuget.org-ra való feltöltéséhez parancssorból használhatja a dotnet.exe vagy nuget.exe 4.1.0 vagy annál újabb verzióját, amely támogatja a szükséges NuGet-protokollokat. További információ: NuGet-protokollok.

Bármelyik parancssor használatához először be kell szereznie egy API-kulcsot nuget.org.

API-kulcs létrehozása

  1. Jelentkezzen be nuget.org fiókjába , vagy hozzon létre egy fiókot , ha még nem rendelkezik ilyen fiókkal.

  2. Válassza ki a felhasználónevet a jobb felső sarokban, majd válassza az API-kulcsokat.

  3. Válassza a Létrehozás lehetőséget, és adja meg a kulcs nevét.

  4. A Hatókörök kiválasztása csoportban válassza a Push.

  5. A Csomagok kiválasztása>Globális minta mezőbe írja be: *.

  6. Válassza a Create gombot.

  7. Válassza a Másolás lehetőséget az új kulcs másolásához.

    Képernyőkép az új API-kulcsról a Másolás hivatkozással.

Fontos

  • Mindig tartsa titokban az API-kulcsot. Az API-kulcs olyan, mint egy jelszó, amely lehetővé teszi, hogy bárki kezelje a csomagokat az Ön nevében. Ha az API-kulcs véletlenül nyilvánosságra került, törölje vagy hozza létre újra.
  • Mentse a kulcsot biztonságos helyre, mert később nem másolhatja újra a kulcsot. Ha visszatér az API-kulcs lapjára, újra kell létrehoznia a kulcsot a másoláshoz. Az API-kulcsot akkor is eltávolíthatja, ha már nem szeretne csomagokat leküldni.

A hatókörkezelés lehetővé teszi külön API-kulcsok létrehozását különböző célokra. Minden kulcs lejárati időkeretet tartalmaz, és a kulcsot meghatározott csomagokra vagy glob-mintákra is alkalmazhatja. Minden kulcs adott műveletekhez van rendelve: új csomagok és csomagverziók közzététele, csak új csomagverziók közzététele vagy eltávolítás a listáról.

A hatókörkezeléssel API-kulcsokat hozhat létre a szervezet csomagjait kezelő különböző személyek számára, hogy csak a szükséges engedélyekkel rendelkezzenek.

További információkért tekintse meg a hatókörön belüli API-kulcsokat.

A dotnet parancssori felületének használata

Az .nupkg fájlt tartalmazó mappában futtassa a következő parancsot. Adja meg a .nupkg fájlnevet, és cserélje le a kulcs értékét az API-kulcsra.

dotnet nuget push Contoso.08.28.22.001.Test.1.0.0.nupkg --api-key qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 --source https://api.nuget.org/v3/index.json

A kimenet a közzétételi folyamat eredményeit jeleníti meg:

Pushing Contoso.08.28.22.001.Test.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'...
  PUT https://www.nuget.org/api/v2/package/
warn : All published packages should have license information specified. Learn more: https://aka.ms/nuget/authoring-best-practices#licensing.
  Created https://www.nuget.org/api/v2/package/ 1221ms
Your package was pushed.

További információ: dotnet nuget push.

Megjegyzés:

Ha el szeretné kerülni, hogy a tesztcsomagja nyilvánosan elérhető legyen a nuget.org oldalon, akkor feltöltheti a nuget.org tesztwebhelyére a következő helyen: https://int.nugettest.org. Vegye figyelembe, hogy előfordulhat, hogy az int.nugettest.org oldalra feltöltött csomagok nem kerülnek megőrzésre.

A NuGet parancssori felület használata

  1. Egy parancssorban futtassa a következő parancsot, és cserélje le <your_API_key> azt a nuget.org-tól kapott kulccsal.

    nuget setApiKey <your_API_key>
    

    Ez a parancs tárolja az API-kulcsot a NuGet-konfigurációban, így nem kell újból beírnia az API-kulcsot ugyanazon a számítógépen.

    Megjegyzés:

    Ez az API-kulcs nem használható privát hírcsatornákkal való hitelesítéshez. A forrásokkal való hitelesítéshez szükséges hitelesítő adatok kezeléséhez tekintse meg a nuget-források parancsot.

  2. A csomag feltöltése a következő paranccsal:

    nuget push YourPackage.nupkg -Source https://api.nuget.org/v3/index.json
    

Közzététel az Azure Pipelines használatával

A folyamatos integrációs/folyamatos üzembe helyezési (CI/CD) folyamat részeként csomagokat feltölthet az Azure Pipelines szolgáltatással a nuget.org-ra. További információ: NuGet-csomagok közzététele az Azure Pipelines használatával.

Aláírt csomag közzététele

Aláírt csomag elküldéséhez először regisztrálnia kell a csomag aláírásához használt tanúsítványt. Ha nem felel meg az aláírt csomagra vonatkozó követelményeknek, nuget.org elutasítja a csomagot.

Csomagméretkorlátok

Nuget.org csomagméretkorlátja körülbelül 250 MB. Ha egy csomag túllépi ezt a korlátot, a következő hibaüzenet jelenik meg:

A csomagfájl túllépi a méretkorlátot. Próbálkozzon újra.

Ha a rendszer leküldi az ilyen csomagot a parancssorból, a következő kimenet jön létre:

  RequestEntityTooLarge https://www.nuget.org/api/v2/package/ 13903ms
error: Response status code does not indicate success: 413 (The package file exceeds the size limit. Please try again.).

Ha ezt a hibát tapasztalja, fontolja meg a csomag tartalmának felülvizsgálatát a méret csökkentése érdekében. Ha hibakeresési szimbólumokat csomagol a csomagba, érdemes külön közzétenni őket. Más eszközök külön közzétehetők egy vagy több függőségi csomagként, hogy kisebb adattömbökre bontsák őket.

Csomagérvényesítés és indexelés

A nuget.org leküldéses csomagok több ellenőrzésen is átesnek, például vírusellenőrzéseken, és a meglévő csomagokat rendszeres időközönként ellenőrzik. Ha a csomag megfelel az összes ellenőrzési ellenőrzésnek, előfordulhat, hogy egy ideig tart az indexelés, és megjelenik a keresési eredményekben. Miközben a csomag indexelve van, megjelenik a Nem listozott csomagok területen, és a következő üzenet jelenik meg a csomag oldalán:

Képernyőkép egy üzenetről, amely azt jelzi, hogy egy csomag még nincs közzétéve.

Az ellenőrzés és az indexelés befejezése után e-mailt kap a csomag sikeres közzétételéről. Ha a csomag ellenőrzése sikertelen, a csomag oldala frissül a társított hiba megjelenítéséhez, és értesítést kap e-mailben.

A csomagok érvényesítése és indexelése általában kevesebb, mint 15 percet vesz igénybe. Ha a csomag közzététele a vártnál tovább tart, ellenőrizze nuget.org állapotát a status.nuget.org. Ha az összes rendszer működőképes, és a csomag egy órán belül nem érhető el sikeresen, lépjen kapcsolatba nuget.org a csomag oldalán található Kapcsolatfelvételi támogatási hivatkozással.

A csomag állapotának megtekintéséhez válassza nuget.org jobb felső részén, a fióknév alatt válassza a Csomagok kezelése lehetőséget, majd válassza ki a csomagot a Közzétett csomagok vagy a Nem listázott csomagok közül.

Csomagtulajdonosok kezelése a nuget.org

A csomagtulajdonosok teljes engedélyekkel rendelkeznek a csomaghoz, beleértve a többi tulajdonos hozzáadását és eltávolítását, valamint a frissítések közzétételét.

Bár a NuGet-csomag .nuspec fájlja határozza meg a csomag szerzőit, nuget.org nem használja ezeket a metaadatokat a tulajdonjog meghatározásához. Ehelyett nuget.org tulajdonjogot rendel a csomagot közzétevő személyhez, vagy a csomagot feltöltő bejelentkezett felhasználóhoz, vagy ahhoz a felhasználóhoz, akinek az API-kulcsát dotnet pushhasználták, nuget SetApiKeyvagy nuget push.

Csomag tulajdonjogának módosítása:

  1. Jelentkezzen be a nuget.org azzal a fiókkal, amely jelenleg a csomag tulajdonosa.

  2. Válassza ki a fiók nevét a jobb felső sarokban, válassza a Csomagok kezelése lehetőséget, és bontsa ki a Közzétett csomagok elemet.

  3. Jelölje ki a kezelni kívánt csomagot, majd a csomag oldalának jobb oldalán válassza a Csomag kezelése lehetőséget.

  4. A csomagkezelési lapon válassza a Tulajdonosok lehetőséget.

  5. Válasszon a következő lehetőségek közül:

    • Válassza az Eltávolítás lehetőséget az aktuális tulajdonos eltávolításához.

    • Adjon hozzá egy tulajdonost a Tulajdonos hozzáadása csoportban a felhasználónév és egy üzenet megadásával, majd a Hozzáadás gombra kattintva.

      Ez a művelet e-mailt küld az új társtulajdonosnak egy megerősítő hivatkozással. A megerősítést követően a személy teljes jogosultságokkal rendelkezik a tulajdonosok hozzáadásához és eltávolításához. A megerősítésig az Aktuális tulajdonosok szakasz a függőben lévő jóváhagyást jeleníti meg az adott személy számára.

Tulajdonjog átadásához – akár tulajdonosváltás, akár egy csomag rossz fiók alatt történő publikálása esetén – adja hozzá az új tulajdonost. Miután megerősítették a tulajdonjogot, eltávolíthatják a régi tulajdonost a listáról.

Ha tulajdonost szeretne hozzárendelni egy vállalathoz vagy csoporthoz, hozzon létre egy nuget.org fiókot egy e-mail-aliassal, amely a megfelelő csapattagoknak továbbítja. A Microsoft ASP.NET különböző csomagjai például a Microsoft és az aspnet-fiókok társtulajdonosai.

Előfordulhat, hogy egy csomagnak nincs aktív tulajdonosa. Előfordulhat például, hogy az eredeti tulajdonos elhagyta a csomagot előállító vállalatot. Ha Ön egy csomag jogos tulajdonosa, és vissza kell szereznie a tulajdonjogát, használja a nuget.org kapcsolatfelvételi űrlapját a NuGet csapatának a helyzet magyarázatához. A csapat egy folyamatot követ a tulajdonjog ellenőrzéséhez, beleértve a meglévő tulajdonos megkeresését, és új meghívót küldhet Önnek, hogy a csomag tulajdonosa legyen.

Következő lépések