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


Python-csomagok közzététele és felhasználása a parancssor (CLI) használatával

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Az Azure Artifacts lehetővé teszi Python-csomagok létrehozását, üzemeltetését és megosztását a csapatával vagy szervezetével. Python-csomagokat tehet közzé és használhat a helyi fejlesztési környezet parancssorából származó Azure Artifacts-hírcsatornával.

Ebben a cikkben az alábbiakkal fog megismerkedni:

  • Azure Artifacts-hírcsatorna létrehozása.
  • Állítsa be a hitelesítést a Python artifacts-keyring csomaggal vagy egy személyes hozzáférési jogkivonattal (PAT).
  • Python-csomagok közzététele a hírcsatornában.
  • Python-csomagok felhasználása a hírcsatornából.

Ha csomagokat szeretne közzétenni és felhasználni az Azure Pipelinesban, olvassa el a Python-csomagok közzététele az Azure Pipelines használatával című témakört.

Előfeltételek

A következő lépések futtatásához a következő lépésekkel kell rendelkeznie:

Azure Artifacts-hírcsatorna létrehozása

Ha nem rendelkezik hírcsatornával, az alábbi lépésekkel hozhat létre egyet.

  1. Jelentkezzen be az Azure DevOps-szervezetbe, majd lépjen a projektjéhez.

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

    A screenshot showing how to create a feed.

  3. Adja meg a következő adatokat a hírcsatornához:

    1. Adjon meg egy leíró nevet a hírcsatornának.
    2. Határozza meg a láthatóságát (azt jelzi, hogy ki tekintheti meg a csomagokat a hírcsatornán belül).
    3. Válassza ki, hogy nyilvános forrásokból( például pypi.org) származó csomagokat szeretne-e használni.
    4. Adja meg a hírcsatorna hatókörét .
  4. Válassza a Létrehozás lehetőséget.

  1. Nyissa meg az Azure DevOps-gyűjteményt, és válassza ki a projektet.

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

    A screenshot showing how to create a feed in DevOps Server.

  3. Adja meg a következő adatokat a hírcsatornához:

    1. Adjon meg egy leíró nevet a hírcsatornának.
    2. Határozza meg a láthatóságát (azt jelzi, hogy ki tekintheti meg a csomagokat a hírcsatornán belül).
    3. Válassza ki, hogy nyilvános forrásokból( például pypi.org) származó csomagokat szeretne-e használni.
    4. Adja meg a hírcsatorna hatókörét .
  4. Válassza a Létrehozás lehetőséget.

  1. Nyissa meg az Azure DevOps-gyűjteményt, és válassza ki a projektet.

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

  3. Adja meg a következő adatokat a hírcsatornához:

    1. Adjon meg egy leíró nevet a hírcsatornának.
    2. Határozza meg a láthatóságát (azt jelzi, hogy ki tekintheti meg a csomagokat a hírcsatornán belül).
    3. Válassza ki, hogy nyilvános forrásokból( például pypi.org) származó csomagokat szeretne-e használni.
    4. Adja meg a hírcsatorna hatókörét .
  4. Válassza a Létrehozás lehetőséget.

  1. Nyissa meg az Azure DevOps-gyűjteményt, és válassza ki a projektet.

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

  3. Adja meg a következő adatokat a hírcsatornához:

    1. Adjon meg egy leíró nevet a hírcsatornának.
    2. Határozza meg a láthatóságát (azt jelzi, hogy ki tekintheti meg a csomagokat a hírcsatornán belül).
    3. Döntse el, hogy nyilvános forrásokból( például pypi.org) származó csomagokat szeretne-e használni.
  4. Válassza a Létrehozás lehetőséget.

Helyi Python-csomag létrehozása

Egy Python-csomagra van szüksége a hírcsatornában való közzétételhez. Ha nincs közzéteendő csomagja, klónozhat egy Python-mintacsomagot a GitHubról.

A Python-mintacsomag klónozása

A GitHubról származó Python-mintacsomagot az alábbi lépésekkel használhatja.

  1. Nyissa meg a következő GitHub-adattárat:

    https://github.com/microsoft/python-package-template
    
  2. Tárház elágazása a GitHub-fiókba.

  3. Nyissa meg az elágazott adattárat, és válassza a Kód lehetőséget.

  4. Másolja ki az elágazott adattár URL-címét.

  5. A helyi gépen lévő parancssori felületről klónozza az adattárat a helyi gépre az elágazott adattárból kimásolt URL-cím használatával.

    git clone <REPOSIORY_URL>
    
  6. Módosítsa a címtárat a klónozott adattárra.

    cd python-package-template
    

A csomag összeállítása

A kerék és a forráseloszlás összeállításához futtassa a következő parancsokat a projektkönyvtárban:

pip install --upgrade build
python -m build

Ha a Python-projekt rendelkezik fájllal setup.py , a következő paranccsal hozhatja létre a csomagot:

python setup.py sdist bdist_wheel

Csatlakozás a hírcsatornához

A Python-csomagok közzétételéhez vagy felhasználásához két elsődleges módon csatlakozhat egy hírcsatornához:

  1. Használja az artifacts-keyring csomagot, amely automatikusan beállítja a hitelesítést.
  2. Hitelesítő adatok manuális beállítása PAT használatával.

Feljegyzés

Az artifacts-keyring nem támogatott az Ubuntu újabb verzióiban.

Feljegyzés

Ha a szervezet tűzfalat vagy proxykiszolgálót használ, győződjön meg arról, hogy engedélyezi az Azure Artifacts-tartomány URL-címeit és IP-címeit.

Artifacts-keyring beállítása hitelesítéshez

Az artifacts-keyring csomag együttműködik a Python-kulcstartó csomaggal, így hitelesítést állíthat be a Python-csomagok hírcsatornán belüli és onnani közzétételéhez és felhasználásához. A pip és a twine a Python-kulcstartó csomag használatával is megkeresi a hitelesítő adatokat.

Fontos

Az artifacts-keyring használatához pip 19.2 és twine 1.13.0 vagy újabb kell, hogy legyen. További információ: Használati követelmények.

Ha az artifacts-keyring használata mellett dönt, telepítenie kell a csomagot, mielőtt használhatja.

Egy rendszergazda jogú parancssori ablakban futtassa a következő parancsot az artifacts-keyring csomag telepítéséhez:

pip install artifacts-keyring

Python-csomagok közzététele

Python-csomagokat tehet közzé a hírcsatornában az artifacts-keyring csomag vagy a PAT-hitelesítés használatával.

Csomagok közzététele artifacts-keyring használatával

  1. Válassza ki a Csatlakozás a hírcsatornából való hírcsatornából való betöltéshez.

    A screenshot highlighting the connect to feed.

  2. Válassza ki a twine elemet, és másolja ki az adattár URL-címét a Project beállítási szakaszából.

    A screenshot of instructions to connect to feed with twine.

  3. Ha közzé szeretne tenni egy csomagot a hírcsatornában, futtassa a következő parancsot az F Enterprise kiadás D_URL> helyére <a Csatlakozás átmásolt adattár URL-címére a hírcsatorna párbeszédpaneljéhez:

    twine upload --repository-url <FEED_URL> dist/*
    

Csomagok közzététele PAT-hitelesítéssel

A twine használatával töltse fel a csomagot az Azure Artifacts-hírcsatornába.

  1. Nyissa meg az Azure DevOps Projectet, és válassza az Összetevők lehetőséget.

  2. Válassza ki a hírcsatornát, és válassza a Csatlakozás a hírcsatornához.

    A screenshot highlighting the connect to feed.

  3. Válassza a twine lehetőséget a Python szakasz alatt.

    A screenshot highlighting the twine package type.

  4. A fejlesztői gépen győződjön meg arról, hogy a twine telepítve van.

    pip install --upgrade twine
    
  5. A fájl beállításához kövesse a Project beállítási szakaszának utasításait .pypirc .

    A screenshot highlighting the `.pyirc` file content.

  6. Annak érdekében, hogy ne kelljen minden csomag közzétételekor megadnia a személyes hozzáférési jogkivonatát, hozzáadhatja a hitelesítő adatait a .pypirc fájlhoz. Győződjön meg arról, hogy nem ellenőrzi a személyes hozzáférési jogkivonatát egy nyilvános adattárban.

    Példa hitelesítő .pypirc adatokkal rendelkező fájlra:

    [distutils]
    Index-servers =
        <FEED_NAME>
    
    [<FEED_NAME>]
    Repository = <FEED_URL>
    username = <FEED_NAME>
    password = <YOUR_PERSONAL_ACCESS_TOKEN>
    
  7. A csomag feltöltéséhez futtassa a következő parancsot a projektkönyvtárban az F Enterprise kiadás D_NAME> helyett <a hírcsatorna nevére. Windows rendszeren előfordulhat, hogy meg kell adnia a pypirc fájl helyét a --config-file beállítással.

    twine upload --repository <FEED_NAME> dist/*
    

Python-csomagok felhasználása

Python-csomagokat használhat a hírcsatornából az artifacts-keyring csomag vagy a PAT-hitelesítés használatával.

Csomagok felhasználása artifacts-keyring használatával

  1. A projektben válassza az Összetevők lehetőséget, majd válassza ki a hírcsatornát.

  2. Válassza ki a csatornázandó Csatlakozás.

    A screenshot highlighting the connect to feed button.

  3. Válassza ki a Pip elemet a Python szakasz alatt.

    A screenshot of pip selection in Connect to feed.

  4. Készítse elő a helyi Python-környezetet.

    1. Győződjön meg arról, hogy a pip telepítve van és naprakész:

      python -m pip install --upgrade pip
      
    2. Python virtuális környezet létrehozása és aktiválása:

      python -m venv myenv
      myenv/Scripts/activate
      
  5. Másolja a index-url Csatlakozás Project beállítási szakaszából a hírcsatorna párbeszédpanelre.

    A screenshot of the index-url in the Connect to feed dialog.

  6. Ha egy csomagot szeretne telepíteni a hírcsatornából, futtassa a következő parancsot, amely a PACKAGE_NAME> a hírcsatorna csomagnevére cseréli<, és <INDEX_URL> a Csatlakozás lapról a hírcsatorna párbeszédpanelre másolt index URL-címére:

    pip install <PACKAGE_NAME> --index-url <INDEX_URL>
    

Amikor első alkalommal csatlakozik az Azure DevOpshoz, a rendszer hitelesítő adatokat kér. Adja meg a felhasználónevet (bármilyen sztringet) és a személyes hozzáférési jogkivonatot a megfelelő mezőkben. A rendszer helyileg gyorsítótárazza a hitelesítő adatokat, és a szolgáltatás következő használatakor automatikusan aláírja Önt.

Csomagok felhasználása PAT-hitelesítéssel

  1. Nyissa meg az Azure DevOps Projectet, és válassza az Összetevők lehetőséget.

  2. Válassza ki a hírcsatornát, és válassza a Csatlakozás a hírcsatornához.

    A screenshot highlighting the connect to feed button.

  3. Válassza ki a Pip elemet a Python szakasz alatt.

    A screenshot highlighting the pip package type.

  4. Készítse elő a helyi Python-környezetet.

    1. Győződjön meg arról, hogy a pip telepítve van és naprakész:

      python -m pip install --upgrade pip
      
    2. Python virtuális környezet létrehozása és aktiválása:

      python -m venv myenv
      myenv/Scripts/activate
      
  5. Adjon hozzá egy pip.ini (Windows) vagy egy pip.conf (Mac/Linux) fájlt a virtuális környezet gyökérkönyvtárához. Másolja a tartalmat a Csatlakozás Project beállítási szakaszából a hírcsatorna párbeszédpanelre, és adja hozzá a pip.ini vagy pip.conf fájlhoz.

    A screenshot highlighting the pip.ini file content.

  6. Annak érdekében, hogy ne kelljen minden alkalommal megadnia a személyes hozzáférési jogkivonatát, amikor csomagot telepít a hírcsatornából, hozzáadhatja a hitelesítő adatait a pip.ini vagy a pip.conf fájlhoz. Győződjön meg arról, hogy nem ellenőrzi a személyes hozzáférési jogkivonatát egy nyilvános adattárban.

    Példa egy hitelesítő adatokkal rendelkező pip.ini vagy pip.conf fájlra:

    [global]
    extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@<FEED_URL>
    
  7. A csomag telepítéséhez futtassa a következő parancsot, amely <lecseréli a PACKAGE_NAME> a csomag nevére a hírcsatornából.

    pip install <PACKAGE_NAME>