PipAuthenticate@1 – Úloha ověření pythonového pipu v1
Pomocí této úlohy můžete poskytnout ověřování pro klienta pip
, který instaluje distribuce Pythonu.
Syntax
# Python pip authenticate v1
# Authentication task for the pip client used for installing Python distributions.
- task: PipAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeeds: # string. My feeds (select below).
#pythonDownloadServiceConnections: # string. Feeds from external organizations.
#onlyAddExtraIndex: false # boolean. Don't set primary index URL. Default: false.
Vstupy
artifactFeeds
-
Moje informační kanály (vyberte níže)
string
.
Určuje čárkami oddělený seznam informačních kanálů Azure Artifacts pro ověření pomocí pipu.
informační kanály pythonDownloadServiceConnections
- od externích organizací
string
.
Určuje čárkami oddělený seznam připojení služby pip názvy externích organizací, které se mají ověřit pomocí pipu.
onlyAddExtraIndex
-
Nenastavujte adresu URL primárního indexu
boolean
. Výchozí hodnota: false
.
Pokud je tato úloha nastavená na true
, nebude jako adresa URL primárního indexu nastaven žádný informační kanál. Všechny nakonfigurované informační kanály a koncové body se nastaví jako extra adresy URL indexu.
Možnosti řízení úkolů
Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.
Výstupní proměnné
Žádný.
Poznámky
Poskytuje ověřování pro klienta pip
, který se používá k instalaci distribucí Pythonu.
- Kdy mám tuto úlohu spustit v kanálu?
- Co když chci, aby kanály mohly ukládat z upstreamových zdrojů?
- Můj agent je za webovým proxy serverem. Nastaví pipAuthenticate tak, aby používal můj proxy server?
- Kanál potřebuje přístup k informačnímu kanálu v jiném projektu
Kdy mám tuto úlohu spustit v kanálu?
Tato úloha se musí spustit před použitím nástroje pip ke stažení distribucí Pythonu do ověřeného zdroje balíčku, jako je Azure Artifacts. Neexistují žádné další požadavky na řazení. Více vyvolání této úlohy nebude naskládat přihlašovací údaje. Každé spuštění úlohy vymaže všechny dříve uložené přihlašovací údaje.
Co když chci, aby kanály mohly ukládat z upstreamových zdrojů?
Zkontrolujte tabulku oprávnění a zjistěte, jaká oprávnění má kanál mít. Pak určete, kterým identitě chcete těmto oprávněním udělit. Pokud chcete ukládat balíčky z upstreamových zdrojů, vaše identita potřebuje Feed and Upstream Reader (Collaborator)
oprávnění.
Můj agent je za webovým proxy serverem. Nastaví pipAuthenticate tak, aby používal můj proxy server?
Ne. I když tato úloha bude fungovat za webovým proxy serverem, který váš agent nakonfiguroval tak, aby používal, nenakonfiguruje pip tak, aby používal proxy server.
Můžete to udělat takto:
- Nastavte proměnné prostředí
http_proxy
,https_proxy
a volitelněno_proxy
na nastavení proxy serveru. Podrobnosti najdete v oficiální pokyny pipu. Jedná se o běžně používané proměnné, které můžou používat i jiné nástroje než Python (např. curl).Opatrnost
Proměnné
http_proxy
ano_proxy
v operačních systémech Linux a Mac rozlišují velká a malá písmena. Pokus o použití proměnné Azure Pipelines k nastavení proměnné prostředí nebude fungovat, protože se převede na velká písmena. Místo toho nastavte proměnné prostředí na počítači agenta v místním prostředí a restartujte agenta. - Pomocí klíče přidejte nastavení proxy serveru do konfiguračního souboru
proxy
souboru. - Pomocí možnosti
--proxy
příkazového řádku zadejte proxy ve formuláři[user:passwd@]proxy.server:port
.
Kanál potřebuje přístup k informačnímu kanálu v jiném projektu
Pokud kanál běží v jiném projektu, než je projekt, který je hostitelem informačního kanálu, musíte nastavit druhý projekt tak, aby udělil službě sestavení přístup pro čtení a zápis. Další podrobnosti najdete v tématu Oprávnění balíčku ve službě Azure Pipelines.
Příklady
Stažení distribucí Pythonu z informačních kanálů Azure Artifacts bez konzultace oficiálního registru Pythonu
V tomto příkladu nastavujeme ověřování pro stahování z privátních informačních kanálů Azure Artifacts. Úloha ověřování vytvoří proměnné prostředí PIP_INDEX_URL
a PIP_EXTRA_INDEX_URL
, které jsou potřeba ke stažení distribucí. Úloha nastaví proměnné pomocí přihlašovacích údajů pro ověřování, které úloha vygeneruje pro poskytnuté informační kanály Artifacts.
HelloTestPackage
musí být přítomny v myTestFeed1
nebo myTestFeed2
; jinak instalace selže.
U kanálů vymezených projektem, které jsou v jiném projektu než v místě, kde je kanál spuštěný, je nutné projekt udělit ručně a přístup informačního kanálu ke službě sestavení kanálu.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# Provide list of feed names which you want to authenticate.
# Project scoped feeds must include the project name in addition to the feed name.
artifactFeeds: 'project1/myTestFeed1, myTestFeed2'
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
Projděte si oficiální registr Pythonu a stáhněte distribuce Pythonu z informačních kanálů Azure Artifacts.
V tomto příkladu nastavujeme ověřování pro stahování z privátního informačního kanálu Azure Artifacts, ale nejprve se pypi. Úloha ověřování vytvoří proměnnou prostředí PIP_EXTRA_INDEX_URL
, která obsahuje přihlašovací údaje pro ověření potřebné ke stažení distribucí.
HelloTestPackage
se stáhnou z ověřených informačních kanálů pouze v případě, že se nenachází v pypi.
U kanálů vymezených projektem, které jsou v jiném projektu než v místě, kde je kanál spuštěný, je nutné projekt udělit ručně a přístup informačního kanálu ke službě sestavení kanálu.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# Provide list of feed names which you want to authenticate.
# Project scoped feeds must include the project name in addition to the feed name.
artifactFeeds: 'project1/myTestFeed1, myTestFeed2'
# Setting this variable to "true" will force pip to get distributions from official python registry first and fallback to feeds mentioned above if distributions are not found there.
onlyAddExtraIndex: true
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
Stažení distribucí Pythonu z jiných privátních serverů Pythonu
V tomto příkladu nastavujeme ověřování pro stahování z externího distribučního serveru Pythonu. Vytvořte pro externí službu položku připojení služby pip. Úloha ověřování používá připojení služby k vytvoření proměnné prostředí PIP_INDEX_URL
, která obsahuje přihlašovací údaje ověřování potřebné ke stažení distribucí.
HelloTestPackage
musí být přítomny v připojení služby pypitest
; jinak instalace selže. Pokud chcete, aby pypi nejprve prohlédli, nastavte onlyAddExtraIndex
na true
.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# In this case, name of the service connection is "pypitest".
pythonDownloadServiceConnections: pypitest
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, klasické sestavení, klasická verze |
Běží na | Agent, DeploymentGroup |
požadavky | Žádný |
možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
omezení příkazů | Jakýkoliv |
nastavitelné proměnné | Jakýkoliv |
Verze agenta | 2.144.0 nebo vyšší |
Kategorie úkolu | Balíček |
Požadavek | Popis |
---|---|
Typy kanálů | YAML, klasické sestavení, klasická verze |
Běží na | Agent, DeploymentGroup |
požadavky | Žádný |
možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
omezení příkazů | Jakýkoliv |
nastavitelné proměnné | Jakýkoliv |
Verze agenta | 2.120.0 nebo novější |
Kategorie úkolu | Balíček |