Quickstart: Python-pakketten publiceren en gebruiken met Azure Artifacts met behulp van de opdrachtregel (CLI)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
In deze quickstart leert u hoe u een Azure Artifacts-feed maakt en hoe u uw feed gebruikt om Python-pakketten te publiceren en te gebruiken vanaf de opdrachtregel in uw lokale ontwikkelomgeving. Wanneer u klaar bent, hebt u een Python-pakket gepubliceerd naar uw feed en geïnstalleerd vanuit uw feed naar uw lokale ontwikkelomgeving.
Als u pakketten in uw Azure Pipelines wilt publiceren en gebruiken, raadpleegt u Python-pakketten publiceren met Azure Pipelines.
Vereisten
Als u de volgende stappen wilt uitvoeren, moet u beschikken over:
- een Azure DevOps-organisatie. Maak gratis een account.
- Een persoonlijk toegangstoken (PAT) met het leesbereik voor pakketten>. Zie Een PAT maken om er een te maken.
- Een Azure DevOps-project. Als u nog geen project hebt, maakt u een project.
- Python 3.8 of hoger geïnstalleerd op uw lokale computer. Download Python hier.
- pip 19.2 en twine 1.13.0 of hoger.
- Een Python-pakket om vanaf uw lokale computer naar uw feed te publiceren.
- Als u het Python-voorbeeldpakket gebruikt:
- Een GitHub-account. Maak een gratis GitHub-account als u er nog geen hebt.
- Git geïnstalleerd op uw lokale computer.
- Een GitHub-account. Maak een gratis GitHub-account als u er nog geen hebt.
- Toegang tot een Azure DevOps Server-verzameling.
- Een persoonlijk toegangstoken (PAT) met het leesbereik voor pakketten>. Zie Een PAT maken om er een te maken.
- Een Azure DevOps-project. Als u nog geen project hebt, maakt u een project.
- Python 3.8 of hoger geïnstalleerd in uw lokale ontwikkelomgeving.
- pip 19.2 en twine 1.13.0 of hoger.
- Als u het Python-voorbeeldpakket gebruikt:
- Een GitHub-account. Maak een gratis GitHub-account als u er nog geen hebt.
- Git geïnstalleerd op uw lokale computer.
Een lokaal Python-pakket maken
U hebt een Python-pakket nodig om naar uw feed te publiceren. Als u geen pakket hebt om te publiceren, kunt u een Python-voorbeeldpakket klonen vanuit GitHub.
Het Python-voorbeeldpakket klonen
Gebruik de volgende stappen om het Python-voorbeeldpakket van GitHub te gebruiken.
Ga naar de volgende GitHub-opslagplaats:
https://github.com/microsoft/python-package-template
Fork de opslagplaats naar uw GitHub-account.
Ga naar uw geforkte opslagplaats en selecteer Code.
Kopieer de URL van uw geforkte opslagplaats.
Kloon vanuit een CLI op uw lokale computer de opslagplaats met de volgende opdracht met behulp van de URL die u hebt gekopieerd uit uw geforkte opslagplaats:
git clone <REPOSITORY_URL>
Wijzig de map in de gekloonde opslagplaats.
cd python-package-template
Uw pakket bouwen
Voer de volgende opdrachten uit in de projectmap om uw wiel- en brondistributie te bouwen:
pip install --upgrade build
python -m build
Als uw Python-project een setup.py
bestand heeft, kunt u de volgende opdracht gebruiken om uw pakket te bouwen:
python setup.py sdist bdist_wheel
Een feed maken
Meld u aan bij uw Azure DevOps-organisatie en ga vervolgens naar uw project.
Selecteer Artefacten en selecteer vervolgens Feed maken.
Voer de volgende gegevens in voor uw feed:
- Voer een beschrijvende naam in voor uw feed.
- Definieer de zichtbaarheid (waarmee wordt aangegeven wie pakketten in de feed kan bekijken).
- Selecteer of u pakketten uit openbare bronnen wilt gebruiken, zoals pypi.org.
- Geef het bereik van uw feed op.
Selecteer Maken.
Ga naar uw Azure DevOps-verzameling en selecteer uw project.
Selecteer Artefacten en selecteer vervolgens Feed maken.
Voer de volgende gegevens in voor uw feed:
- Voer een beschrijvende naam in voor uw feed.
- Definieer de zichtbaarheid (waarmee wordt aangegeven wie pakketten in de feed kan bekijken).
- Selecteer of u pakketten uit openbare bronnen wilt gebruiken, zoals pypi.org.
- Geef het bereik van uw feed op.
Selecteer Maken.
Ga naar uw Azure DevOps-verzameling en selecteer uw project.
Selecteer Artefacten en selecteer Vervolgens Feed maken om een nieuwe feed te maken.
Voer de volgende gegevens in voor uw feed:
- Voer een beschrijvende naam in voor uw feed.
- Definieer de zichtbaarheid (waarmee wordt aangegeven wie pakketten in de feed kan bekijken).
- Selecteer of u pakketten uit openbare bronnen wilt gebruiken, zoals pypi.org.
- Geef het bereik van uw feed op.
Selecteer Maken.
Ga naar uw Azure DevOps-verzameling en selecteer uw project.
Selecteer Artefacten en selecteer Vervolgens Feed maken om een nieuwe feed te maken.
Voer de volgende gegevens in voor uw feed:
- Voer een beschrijvende naam in voor uw feed.
- Definieer de zichtbaarheid (waarmee wordt aangegeven wie pakketten in de feed kan bekijken).
- Kies of u pakketten wilt gebruiken uit openbare bronnen, zoals pypi.org.
Selecteer Maken.
Uw pakket publiceren naar uw feed
Gebruik twine om uw pakket te uploaden naar uw Azure Artifacts-feed.
Ga naar uw Azure DevOps-project en selecteer Artefacten.
Selecteer uw feed en selecteer Verbinding maken om te feeden.
Selecteer twine onder de Python-sectie .
Controleer op uw ontwikkelcomputer of twine is geïnstalleerd.
pip install --upgrade twine
Volg de instructies in de sectie Project setup om uw
.pypirc
bestand in te stellen.Om te voorkomen dat u uw persoonlijke toegangstoken moet invoeren telkens wanneer u een pakket publiceert, kunt u uw referenties toevoegen aan het
.pypirc
bestand. Zorg ervoor dat u uw persoonlijke toegangstoken niet controleert in een openbare opslagplaats.Voorbeeld van een
.pypirc
bestand met referenties:[distutils] Index-servers = <FEED_NAME> [<FEED_NAME>] Repository = <FEED_URL> username = <FEED_NAME> password = <YOUR_PERSONAL_ACCESS_TOKEN>
Als u uw pakket wilt uploaden, voert u de volgende opdracht uit in de projectmap, waarbij <u FEED_NAME> vervangt door de naam van uw feed. In Windows moet u mogelijk de
.pypirc
bestandslocatie opgeven met het--config-file
argument.twine upload --repository <FEED_NAME> dist/*
Een pakket installeren vanuit uw feed
Ga naar uw Azure DevOps-project en selecteer Artefacten.
Selecteer uw feed en selecteer Verbinding maken om te feeden.
Selecteer pip onder de sectie Python .
Bereid uw lokale Python-omgeving voor.
Zorg ervoor dat pip is geïnstalleerd en up-to-date is:
python -m pip install --upgrade pip
Een virtuele Python-omgeving maken en activeren:
python -m venv myenv myenv/Scripts/activate
Voeg een pip.ini (Windows) of een pip.conf-bestand (Mac/Linux) toe aan de hoofdmap van uw virtuele omgeving. Kopieer de inhoud uit de sectie Project-installatie van het Verbinding maken om het dialoogvenster feed te voeren en voeg deze toe aan uw bestand pip.ini of pip.conf.
U kunt uw referenties toevoegen aan het bestand pip.ini of pip.conf om te voorkomen dat u uw persoonlijke toegangstoken telkens hoeft in te voeren wanneer u een pakket installeert vanuit uw feed. Zorg ervoor dat u uw persoonlijke toegangstoken niet controleert in een openbare opslagplaats.
Voorbeeld van een pip.ini - of pip.conf-bestand met referenties:
[global] extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@<FEED_URL>
Voer de volgende opdracht uit om uw pakket te installeren, waarbij <u PACKAGE_NAME> vervangt door de pakketnaam uit uw feed.
pip install <PACKAGE_NAME>
Resources opschonen
Wanneer u klaar bent met de resources die u hebt gemaakt, kunt u ze verwijderen om kosten te voorkomen. Wanneer u een project verwijdert, worden alle artefactenfeeds op projectniveau verwijderd.
Een project verwijderen:
- Selecteer Project Instellingen.
- Selecteer Op de pagina Projectdetails de optie Verwijderen onder aan de pagina.
- Voer de naam in van het project dat u wilt bevestigen en selecteer Vervolgens Verwijderen.
Als u alleen de feed wilt verwijderen:
- Selecteer Artefacten en selecteer uw feed in de vervolgkeuzelijst.
- Selecteer de knop Instellingen.
- Selecteer Feed verwijderen op het tabblad Feedinstellingen.
- Selecteer Verwijderen om te bevestigen.
Uw lokale ontwikkelomgeving opschonen:
Voer de volgende opdracht uit om uw virtuele omgeving te deactiveren:
deactivate
Als u uw virtuele omgeving wilt verwijderen, verwijdert u de map waarin deze is gemaakt.
Verwijder het
.pypirc
bestand uit uw basismap.
Als u het Python-voorbeeldpakket hebt gekloond, kunt u de opslagplaats verwijderen van uw lokale computer en uw GitHub-account.