TwineAuthenticate@1 - Unggahan kembar Python mengautentikasi tugas v1

Gunakan tugas ini untuk mengautentikasi unggahan distribusi Python menggunakan twine. Tambahkan -r FeedName/EndpointName --config-file $(PYPIRC_PATH) ke perintah unggah kembar Anda. Untuk umpan yang ada di organisasi ini, gunakan nama umpan sebagai repositori (-r). Jika tidak, gunakan nama titik akhir yang ditentukan dalam koneksi layanan.

Sintaks

# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
  inputs:
  # Feeds and Authentication
    #artifactFeed: # string. My feed (select below). 
    #pythonUploadServiceConnection: # string. Feed from external organizations.

Input

artifactFeed - Umpan saya (pilih di bawah)
string.

Menentukan nama umpan artefak Azure untuk mengautentikasi dengan twine. Umpan autentikasi harus ada dalam organisasi. Untuk umpan yang dilingkup proyek, gunakan sintaks projectName/feedNameSelect.


pythonUploadServiceConnection - Umpan dari organisasi eksternal
string.

Nama koneksi layanan kembar dari organisasi eksternal untuk mengautentikasi dengan kembar. Kredensial yang disimpan di titik akhir harus memiliki izin unggah paket.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugasnya. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.

Variabel output

Tidak ada.

Keterangan

Menyediakan twine kredensial ke PYPIRC_PATH variabel lingkungan untuk cakupan build. Ini memungkinkan Anda menerbitkan paket Python ke umpan twine dari build Anda.

Kapan dalam alur saya harus menjalankan tugas ini?

Tugas ini harus berjalan sebelum Anda menggunakan kembar untuk mengunggah distribusi Python ke sumber paket terautentikasi, seperti Azure Artifacts. Tidak ada persyaratan pemesanan lainnya. Beberapa pemanggilan tugas ini tidak akan menumpuk kredensial. Setiap tugas yang dijalankan akan menghapus kredensial yang disimpan sebelumnya.

Agen saya berada di belakang proksi web. Apakah TwineAuthenticate akan menyiapkan kembar untuk menggunakan proksi saya?

Nomor. Meskipun tugas ini sendiri akan bekerja di belakang proksi web yang telah dikonfigurasi agen Anda untuk digunakan, tugas ini tidak mengonfigurasi kembar untuk menggunakan proksi.

Alur Saya perlu mengakses umpan dalam proyek yang berbeda

Jika alur berjalan dalam proyek yang berbeda dari proyek yang menghosting umpan, Anda harus menyiapkan proyek lain untuk memberikan akses baca/tulis ke layanan build. Lihat Izin paket di Azure Pipelines untuk detail selengkapnya.

Contoh

Contoh berikut menunjukkan cara menerbitkan distribusi python ke umpan Azure Artifacts dan registri python resmi.

Menerbitkan distribusi Python ke umpan Azure Artifacts

Dalam contoh ini, kami mengatur autentikasi untuk penerbitan ke Umpan Artefak Azure privat. Tugas autentikasi membuat .pypirc file yang berisi kredensial autentikasi yang diperlukan untuk menerbitkan distribusi ke umpan.

# Install python distributions like wheel, twine etc
- script: |
     pip install wheel
     pip install twine
  
# Build the python distribution from source
- script: |
     python setup.py bdist_wheel
   
- task: TwineAuthenticate@1
  displayName: Twine Authenticate
  inputs:
    # In this case, name of the feed is 'myTestFeed' in the project 'myTestProject'. Project is needed because the feed is project scoped.
    artifactFeed: myTestProject/myTestFeed
  
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
     python -m twine upload -r myTestFeed --config-file $(PYPIRC_PATH) dist/*.whl

Input artifactFeed akan berisi proyek dan nama umpan jika umpan dilingkup proyek. Jika umpan dilingkup organisasi, hanya nama umpan yang harus disediakan. Pelajari selengkapnya.

Menerbitkan distribusi Python ke registri Python resmi

Dalam contoh ini, kami menyiapkan autentikasi untuk penerbitan ke registri Python resmi. Buat entri koneksi layanan kembar untuk pypi. Tugas autentikasi menggunakan koneksi layanan tersebut untuk membuat .pypirc file yang berisi kredensial autentikasi yang diperlukan untuk menerbitkan distribusi.

# Install python distributions like wheel, twine etc
- script: |
     pip install wheel
     pip install twine
  
# Build the python distribution from source
- script: |
     python setup.py bdist_wheel
   
- task: TwineAuthenticate@1
  displayName: Twine Authenticate
  inputs:
    # In this case, name of the service connection is "pypitest".
    pythonUploadServiceConnection: pypitest
  
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
     python -m twine upload -r "pypitest" --config-file $(PYPIRC_PATH) dist/*.whl

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 2.144.0 atau lebih tinggi
Kategori tugas Paket
Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 2.120.0 atau lebih tinggi
Kategori tugas Paket