PipAuthenticate@1 – Python pip-autentisera v1-uppgift
Använd den här uppgiften för att tillhandahålla autentisering för klienten pip
som installerar Python-distributioner.
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.
Indata
artifactFeeds
- Mina feeds (välj nedan)
string
.
Anger vilka feeds som ska autentiseras som de finns i organisationen.
pythonDownloadServiceConnections
- Feeds från externa organisationer
string
.
Anger en kommaavgränsad lista över pip-tjänstanslutningsnamn från externa organisationer för att autentisera med pip.
onlyAddExtraIndex
- Ange inte primär index-URL
boolean
. Standardvärde: false
.
Om den här aktiviteten är inställd på true
anges ingen feed som primär index-URL. Alla konfigurerade feeds/slutpunkter anges som extra index-URL:er.
Alternativ för aktivitetskontroll
Alla aktiviteter har kontrollalternativ utöver sina uppgiftsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Inga.
Kommentarer
Tillhandahåller autentisering för klienten pip
som används för att installera Python-distributioner.
När ska jag köra den här uppgiften i min pipeline?
Den här uppgiften måste köras innan du använder pip för att ladda ned Python-distributioner till en autentiserad paketkälla, till exempel Azure Artifacts. Det finns inga andra ordningskrav. Flera anrop för den här aktiviteten staplar inte autentiseringsuppgifter. Varje körning av uppgiften raderar alla tidigare lagrade autentiseringsuppgifter.
Min agent finns bakom en webbproxy. Kommer PipAuthenticate att konfigurera pip för att använda min proxy?
Nej. Även om den här uppgiften fungerar bakom en webbproxy som agenten har konfigurerats att använda, konfigureras inte pip för att använda proxyn.
För att göra det kan du:
- Ange miljövariablerna
http_proxy
ochhttps_proxy
eventuelltno_proxy
till proxyinställningarna. Mer information finns i Pip officiella riktlinjer . Det här är vanliga variabler, som andra icke-Python-verktyg (t.ex. curl) också kan använda.Varning
Variablerna
http_proxy
ochno_proxy
är skiftlägeskänsliga på Linux- och Mac-operativsystem och måste ha gemener. Försök att använda en Azure Pipelines-variabel för att ange miljövariabeln fungerar inte eftersom den konverteras till versaler. Ange i stället miljövariablerna på den lokalt installerade agentens dator och starta om agenten. - Lägg till proxyinställningarna i pip-konfigurationsfilen med hjälp av
proxy
nyckeln. --proxy
Använd kommandoradsalternativet för att ange proxy i formatet[user:passwd@]proxy.server:port
.
Min pipeline måste komma åt en feed i ett annat projekt
Om pipelinen körs i ett annat projekt än det projekt som är värd för feeden måste du konfigurera det andra projektet för att bevilja läs-/skrivåtkomst till byggtjänsten. Mer information finns i Paketbehörigheter i Azure Pipelines .
Exempel
Ladda ned Python-distributioner från Azure Artifacts-feeds utan att konsultera det officiella Python-registret
I det här exemplet ställer vi in autentisering för nedladdning från privata Azure Artifacts-feeds. Autentiseringsuppgiften skapar miljövariabler PIP_INDEX_URL
och PIP_EXTRA_INDEX_URL
som krävs för att ladda ned distributionerna. Uppgiften anger variablerna med autentiseringsuppgifter som aktiviteten genererar för de angivna Artefaktflödena. HelloTestPackage
måste finnas i antingen myTestFeed1
eller myTestFeed2
. Annars misslyckas installationen.
För projektomfattande feeds som finns i ett annat projekt än där pipelinen körs måste du manuellt ge projektet och feedåtkomst till pipelinens projektversionstjänst.
- 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
Läs det officiella Python-registret och ladda sedan ned Python-distributioner från Azure Artifacts-feeds
I det här exemplet ställer vi in autentisering för nedladdning från en privat Azure Artifacts-feed, men pypi konsulteras först. Autentiseringsaktiviteten skapar en miljövariabel PIP_EXTRA_INDEX_URL
som innehåller autentiseringsuppgifter som krävs för att ladda ned distributionerna. HelloTestPackage
laddas bara ned från autentiserade feeds om den inte finns i pypi.
För projektomfattande feeds som finns i ett annat projekt än där pipelinen körs måste du manuellt ge projektet och feedåtkomst till pipelinens projektversionstjänst.
- 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
Ladda ned Python-distributioner från andra privata Python-servrar
I det här exemplet ställer vi in autentisering för nedladdning från en extern Python-distributionsserver. Skapa en anslutningspost för pip-tjänsten för den externa tjänsten. Autentiseringsaktiviteten använder tjänstanslutningen för att skapa en miljövariabel PIP_INDEX_URL
, som innehåller autentiseringsuppgifter som krävs för att ladda ned distributionerna. HelloTestPackage
måste finnas i tjänstanslutningen pypitest
. Annars misslyckas installationen. Om du vill att pypi ska konsulteras först anger du onlyAddExtraIndex
till 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
Krav
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
Krav | Ingen |
Funktioner | Den här aktiviteten uppfyller inte några krav för efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Valfri |
Inställningsbara variabler | Valfri |
Agentversion | 2.144.0 eller senare |
Uppgiftskategori | Paket |
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
Krav | Ingen |
Funktioner | Den här aktiviteten uppfyller inte några krav för efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Valfri |
Inställningsbara variabler | Valfri |
Agentversion | 2.120.0 eller senare |
Uppgiftskategori | Paket |
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för