Aracılığıyla paylaş


PipAuthenticate@1 - Python pip kimlik doğrulaması v1 görevi

Python dağıtımlarını yükleyen pip istemcisi için kimlik doğrulaması sağlamak için bu görevi kullanın.

Sözdizimi

# 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ş

artifactFeeds - Akışlarım (aşağıya seçin)
string.

Pip ile kimlik doğrulaması için virgülle ayrılmış Azure Artifacts akışlarının listesini belirtir.


dış kuruluşlardan pythonDownloadServiceConnections - Akışları
string.

Pip ile kimlik doğrulaması için dış kuruluşlardan gelen pip hizmet bağlantısı 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 trueolarak ayarlanırsa, birincil dizin URL'si olarak hiçbir akış ayarlanamaz. Yapılandırılan akışların/uç noktaların tümü 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

Hiç kimse.

Açıklamalar

Python dağıtımlarını yüklemek için kullanılan pip istemcisi için 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örevin çalışması gerekir. Başka sipariş gereksinimleri 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.

İşlem hatlarımın yukarı akış kaynaklarından tasarruf edebilmesini istersem ne olur?

İşlem hattınızın hangi izinlere sahip olmasını istediğinizi belirlemek için izinler tablosunu denetleyin. Ardından, bu izinleri vermek istediğiniz kimliği belirleyin. Yukarı akış kaynaklarından paketleri kaydetmek için kimliğinizin Feed and Upstream Reader (Collaborator) izinlere sahip olması gerekir.

Aracım bir web ara sunucusunun arkasında. PipAuthenticate, pip'i ara sunucumu kullanacak şekilde ayarlayacak mı?

Hayır. Bu görevin kendisi, aracınızınkullanacak şekilde yapılandırıldığı bir web proxy'sinin arkasında çalışsa da, pip'i ara sunucuyu kullanacak şekilde yapılandırmaz.

Bunu yapmak için şunları yapabilirsiniz:

  • http_proxyortam değişkenlerini ayarlayın https_proxy ve isteğe bağlı olarak ara sunucu ayarlarınıza no_proxy. Ayrıntılar için bkz. Pip resmi yönergeleri. Bunlar yaygın olarak kullanılan ve Python olmayan diğer araçların da (ör. curl) kullanabilecekleri değişkenlerdir.

    Dikkat

    http_proxy ve no_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ı, büyük harfe dönüştürüleceği için çalışmaz. Bunun yerine, şirket içinde barındırılan aracının makinesinde ortam değişkenlerini ayarlayın ve aracıyı yeniden başlatın.

  • anahtarı kullanarak ara sunucu ayarlarını proxy dosyaya ekleyin.
  • --proxybiçiminde ara sunucu belirtmek için [user:passwd@]proxy.server:port komut satırı seçeneğini kullanın.

İşlem Hattımın farklı bir projedeki bir akışa erişmesi gerekiyor

İşlem hattı akışı barındıran projeden farklı bir projede çalışıyorsa, derleme hizmetine okuma/yazma erişimi vermek için diğer projeyi ayarlamanız gerekir. Daha fazla bilgi için bkz. Azure Pipelines 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, dağıtımları indirmek için gereken PIP_INDEX_URL ve PIP_EXTRA_INDEX_URL ortam değişkenleri oluşturur. Görev, sağlanan Yapıt akışları için oluşturduğu kimlik doğrulama kimlik bilgileriyle değişkenleri ayarlar. HelloTestPackage myTestFeed1 veya myTestFeed2içinde bulunmalıdır; aksi takdirde yükleme başarısız olur.

İşlem hattının çalıştığı projeden farklı bir projede yer alan proje kapsamlı akışlar için, projeye ve akışa işlem hattının proje 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 . Kimlik doğrulama görevi, dağıtımları indirmek için gereken kimlik doğrulama kimlik bilgilerini içeren PIP_EXTRA_INDEX_URLbir ortam değişkeni oluşturur. HelloTestPackage, kimliği doğrulanmış akışlardan yalnızca pypimevcut değilse indirilir.

İşlem hattının çalıştığı projeden farklı bir projede yer alan proje kapsamlı akışlar için, projeye ve akışa işlem hattının proje 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, bir dış Python dağıtım sunucusundan indirmek için kimlik doğrulamasını ayarlıyoruz. Dış hizmet için bir pip hizmet bağlantısı girdisi oluşturun. Kimlik doğrulama görevi, dağıtımları indirmek için gereken kimlik doğrulama kimlik bilgilerini içeren PIP_INDEX_URLbir ortam değişkeni oluşturmak için hizmet bağlantısını kullanır. HelloTestPackage pypitest hizmet bağlantısında mevcut olmalıdır; aksi takdirde yükleme başarısız olur. önce pypi danışılmasını istiyorsanız, onlyAddExtraIndextrueolarak ayarlayın.

- 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

Gereksinim -leri

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme, Klasik sürüm
Üzerinde çalışır Agent, DeploymentGroup
Talepleri Hiç kimse
Özellikleri Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi
Ayarlanabilir değişkenleri Herhangi
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
Talepleri Hiç kimse
Özellikleri Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi
Ayarlanabilir değişkenleri Herhangi
Aracı sürümü 2.120.0 veya üzeri
Görev kategorisi Paket