Share via


Felsőbb rétegbeli források használata nyilvános hírcsatornában

Az Azure Artifacts lehetővé teszi a fejlesztők számára, hogy egyetlen hírcsatornából kezeljék függőségeiket. A felsőbb rétegbeli források használatával csomagokat használhat hírcsatornákból és nyilvános nyilvántartásokból, például NuGet.org és npmjs.com. Ebből a cikkből megtudhatja, hogyan:

  • Nyilvános hírcsatorna létrehozása
  • Felsőbb rétegbeli források engedélyezése
  • Új felsőbb rétegbeli forrás hozzáadása

Előfeltételek

Fontos

A csomagzárolási fájlok segítenek a reprodukálható buildekben, és minimalizálják azokat a forgatókönyveket, amikor egy névtelen felhasználó hitelesítő adatokat kér a nyilvános hírcsatornák használatakor.

Nyilvános hírcsatorna létrehozása

A nyilvános hírcsatorna egy projekt hatókörű hírcsatorna egy nyilvános projektben. A nyilvános hírcsatornák öröklik az üzemeltetési projekt láthatósági beállításait.

  1. Jelentkezzen be az Azure DevOps-szervezetbe, majd válassza ki a nyilvános projektet.

  2. Válassza az Összetevők lehetőséget, majd válassza a Hírcsatorna létrehozása lehetőséget.

    Képernyőkép az Azure Artifacts hírcsatorna létrehozása gombjáról.

  3. Adjon nevet a hírcsatornának, majd válassza a Projekt: PublicProject (Ajánlott) lehetőséget a hatóköréhez.

    Képernyőkép egy új nyilvános hírcsatorna létrehozásáról.

  4. Ha elkészült, válassza a Létrehozás lehetőséget .

Felsőbb rétegbeli forrás hozzáadása

  1. Jelentkezzen be az Azure DevOps-szervezetbe, majd válassza ki a nyilvános projektet.

  2. Válassza az Összetevők lehetőséget, majd válassza ki a nyilvános hírcsatornát.

  3. Válassza a fogaskerék ikont fogaskerék ikon a hírcsatorna Gépház eléréséhez.

  4. Válassza a Felsőbb rétegbeli források lehetőséget, majd az Add Upstream (Felsőbb réteg hozzáadása) lehetőséget.

    Képernyőkép arról, hogyan adhat hozzá egy felsőbb rétegbeli forrást egy nyilvános hírcsatornához.

  5. Válassza ki a felsőbb rétegbeli forrástípust. Ebben a példában NuGet.org adunk hozzá felsőbb rétegbeli forrásként.

    Képernyőkép a különböző típusú felsőbb rétegbeli forrásokról.

  6. Konfigurálja a forrást, majd ha elkészült, válassza a Mentés lehetőséget.

    Képernyőkép a felsőbb rétegbeli forrás konfigurálásáról.

  7. Válassza a Mentés lehetőséget az új felsőbb rétegbeli forrás mentéséhez.

    Képernyőkép az újonnan hozzáadott felsőbb rétegbeli forrás mentéséről.

Fontos

A nyilvános hírcsatornák nem támogatják a privát Artifacts-hírcsatornákba való felfelé emelést. Ha nyilvános Azure Artifacts-hírcsatornát használ, csak nyilvános adatbázisokat (NuGet.org, npmjs) vagy más nyilvános Azure Artifacts-hírcsatornákat használhat.

Csomagok visszaállítása

Futtassa a következő parancsot egy rendszergazda jogú parancssorban:

nuget.exe restore

Feljegyzés

Az új csomagverziók felsőbb rétegből való telepítéséhez hírcsatorna- és felsőbb rétegbeli olvasónak (közreműködőnek) kell lennie. A névtelen felhasználók csak olyan csomagokat telepíthetnek, amelyek a hírcsatornájukban találhatók.

Q&A

K: Próbálom visszaállítani a csomagokat, de továbbra is kapok egy 401 jogosulatlan hibát?

A hírcsatorna tartalmát csak hitelesített és hitelesített identitás módosíthatja, aki megfelelő engedélyekkel rendelkezik a hírcsatornán. Ez magában foglalja a csomagok mentését a hírcsatornába egy felsőbb rétegbeli forrásból. A nem hitelesített (névtelen) felhasználók letölthetik a hírcsatornába már mentett csomagokat, de nem menthetnek új csomagokat egy felsőbb rétegből a hírcsatornába.

A projekt karbantartóinak menteniük kell a csomagok összes szükséges verzióját a nyilvános hírcsatornába. Ezt úgy teheti meg, hogy egy projektet olyan identitással állít vissza, amely a rendszer kérése esetén hitelesítő adatokat tud szolgáltatni a hírcsatornának, és biztosítja, hogy a használt identitás rendelkezik-e hírcsatorna- és upstream-olvasóval (közreműködővel) vagy magasabb szintű engedélyekkel a nyilvános hírcsatornán.

Ha egy projekt csomagjait visszaállító névtelen felhasználókat a hitelesítő adatokra vonatkozó kérések (401 válasz) ismételten blokkolják, a következő módszerek csökkentik vagy kiküszöbölik a problémát:

  1. Kerülje a csomagverzió-tartományok használatát a projektkonfigurációban. Az explicit csomagverziók biztosítják, hogy a csomagolási ügyfelek csak a szükséges verziót kérjék.

  2. Ha támogatott, használjon zárolási fájlokat a csomagolási ökoszisztémához, hogy a csomagolási ügyfelek csak a projekthez szükséges verziókat kérhessenek a visszaállítási/telepítési művelet során.

K: Próbálom visszaállítani a csomagokat a Visual Studióval, de észrevehetem, hogy más forrásból kérik le őket?

Válasz: Győződjön meg arról, hogy a Visual Studio a nuget.config fájlban hivatkozott forrást használja, és ne a helyi NuGet-csomagkezelőből. További részletekért tekintse meg a csomagforrásokat .

A NuGet parancssori felülettel arra is kényszerítheti a NuGetet, hogy használja a forrást a konfigurációs fájlban a következő parancs futtatásával:

nuget restore -config <PATH_TO_NUGET_CONFIG_FILE>