PipAuthenticate@1 - Python pip kimlik doğrulaması v1 görevi
Python dağıtımlarını yükleyen istemci için kimlik doğrulaması sağlamak için pip
bu görevi kullanın.
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.
Girişler
artifactFeeds
- Akışlarım (aşağıdan seçin)
string
.
Kuruluşta olduğu gibi kimlik doğrulaması için akışları belirtir.
pythonDownloadServiceConnections
- Dış kuruluşlardan gelen akışlar
string
.
Pip ile kimlik doğrulaması yapmak için dış kuruluşların pip hizmeti bağlantı adlarının virgülle ayrılmış bir listesini belirtir.
onlyAddExtraIndex
- Birincil dizin URL'sini ayarlama
boolean
. Varsayılan değer: false
.
Bu görev olarak true
ayarlanırsa, birincil dizin URL'si olarak hiçbir akış ayarlanamaz. Yapılandırılan tüm akışlar/uç noktalar ek dizin URL'leri olarak ayarlanır.
Görev denetimi seçenekleri
Tüm görevlerin, görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.
Çıkış değişkenleri
Yok.
Açıklamalar
Python dağıtımlarını yüklemek için kullanılan istemci için pip
kimlik doğrulaması sağlar.
İşlem hattımda ne zaman bu görevi çalıştırmalıyım?
Python dağıtımlarını Azure Artifacts gibi kimliği doğrulanmış bir paket kaynağına indirmek için pip kullanmadan önce bu görev çalıştırılmalıdır. Başka sıralama gereksinimi yoktur. Bu görevin birden çok çağrısı kimlik bilgilerini yığınlamaz. Görevin her çalıştırması önceden depolanan tüm kimlik bilgilerini siler.
Aracım bir web ara sunucusunun arkasında. PipAuthenticate, pip'i ara sunucumu kullanacak şekilde ayarlayacak mı?
Hayır. Bu görev, aracınızın kullanmak üzere yapılandırıldığı bir web ara sunucusunun arkasında çalışsa da pip'i ara sunucuyu kullanacak şekilde yapılandırmaz.
Bunu yapmak için şunları yapabilirsiniz:
- ortam değişkenlerini
http_proxy
https_proxy
ve isteğe bağlı olarakno_proxy
ara sunucu ayarlarınızı ayarlayın. Ayrıntılar için bkz. Pip resmi yönergeleri . Bunlar yaygın olarak kullanılan değişkenlerdir ve python olmayan diğer araçlar (ör. curl) tarafından da kullanılabilir.Dikkat
http_proxy
Veno_proxy
değişkenleri Linux ve Mac işletim sistemlerinde büyük/küçük harfe duyarlıdır ve küçük harfle yazılmalıdır. Ortam değişkenini ayarlamak için bir Azure Pipelines değişkeni kullanılmaya çalışılması işe yaramaz, bu nedenle büyük harfe dönüştürülür. Bunun yerine, şirket içi barındırılan aracının makinesinde ortam değişkenlerini ayarlayın ve aracıyı yeniden başlatın. - Anahtarı kullanarak
proxy
ara sunucu ayarlarını pip yapılandırma dosyasına ekleyin. --proxy
biçiminde[user:passwd@]proxy.server:port
ara sunucu belirtmek için komut satırı seçeneğini kullanın.
İşlem Hattımın farklı bir projedeki akışa erişmesi gerekiyor
İşlem hattı akışı barındıran projeden farklı bir projede çalışıyorsa, diğer projeyi derleme hizmetine okuma/yazma erişimi vermek üzere ayarlamanız gerekir. Diğer ayrıntılar için bkz. Azure Pipelines'da paket izinleri .
Örnekler
Resmi Python kayıt defterine danışmadan Azure Artifacts akışlarından Python dağıtımlarını indirme
Bu örnekte, özel Azure Artifacts akışlarından indirme için kimlik doğrulamasını ayarlıyoruz. Kimlik doğrulama görevi ortam değişkenleri PIP_INDEX_URL
oluşturur ve PIP_EXTRA_INDEX_URL
bu değişkenlerin dağıtımları indirmesi gerekir. Görev, sağlanan Yapıtlar akışları için oluşturduğu kimlik doğrulaması kimlik bilgileriyle değişkenleri ayarlar. HelloTestPackage
veya myTestFeed2
içinde myTestFeed1
mevcut olmalıdır; aksi takdirde yükleme başarısız olur.
İşlem hattının çalıştırıldığı projeden farklı bir projede yer alan proje kapsamlı akışlar için, projeye ve akışa işlem hattının derleme hizmetine el ile erişim vermeniz gerekir.
- 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
Resmi Python kayıt defterine başvurun ve ardından Azure Artifacts akışlarından Python dağıtımlarını indirin
Bu örnekte, özel bir Azure Artifacts akışından indirme için kimlik doğrulamasını ayarlıyoruz, ancak önce pypi'ye danışılır. Kimlik doğrulama görevi, dağıtımları indirmek için gereken kimlik doğrulama kimlik bilgilerini içeren bir ortam değişkeni PIP_EXTRA_INDEX_URL
oluşturur. HelloTestPackage
yalnızca pypi'de mevcut değilse kimliği doğrulanmış akışlardan indirilir.
İşlem hattının çalıştırıldığı projeden farklı bir projede yer alan proje kapsamlı akışlar için, projeye ve akışa işlem hattının derleme hizmetine el ile erişim vermeniz gerekir.
- 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
Diğer özel Python sunucularından Python dağıtımlarını indirme
Bu örnekte, dış Python dağıtım sunucusundan indirme için kimlik doğrulamasını ayarlıyoruz. Dış hizmet için bir pip hizmeti bağlantı girişi oluşturun. Kimlik doğrulama görevi, dağıtımları indirmek için gereken kimlik doğrulama kimlik bilgilerini içeren bir ortam değişkeni PIP_INDEX_URL
oluşturmak için hizmet bağlantısını kullanır. HelloTestPackage
hizmet bağlantısında pypitest
mevcut olmalıdır; aksi takdirde yükleme başarısız olur. Önce pypi'ye danışılmasını istiyorsanız olarak ayarlayın onlyAddExtraIndex
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
Gereksinimler
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalışır | Agent, DeploymentGroup |
Talep | Hiçbiri |
Özellikler | Bu görev, işteki sonraki görevler için hiçbir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi biri |
Ayarlanabilir değişkenler | Herhangi biri |
Aracı sürümü | 2.144.0 veya üzeri |
Görev kategorisi | Paket |
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalışır | Agent, DeploymentGroup |
Talep | Hiçbiri |
Özellikler | Bu görev, işteki sonraki görevler için hiçbir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi biri |
Ayarlanabilir değişkenler | Herhangi biri |
Aracı sürümü | 2.120.0 veya üzeri |
Görev kategorisi | Paket |
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin