Menerbitkan dan menggunakan paket Python menggunakan baris perintah (CLI)

Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Artifacts memungkinkan Anda membuat, menghosting, dan berbagi paket Python dengan tim atau organisasi Anda. Anda dapat menerbitkan dan menggunakan paket Python menggunakan umpan Azure Artifacts dari baris perintah di lingkungan pengembangan lokal Anda.

Di artikel ini, Anda akan mempelajari cara:

  • Membuat umpan Artefak Azure.
  • Siapkan autentikasi dengan paket artefak-keyring Python atau, token akses pribadi (PAT).
  • Terbitkan paket Python ke umpan Anda.
  • Konsumsi paket Python dari umpan Anda.

Untuk menerbitkan dan menggunakan paket di Azure Pipelines Anda, lihat Menerbitkan paket Python dengan Azure Pipelines.

Prasyarat

Untuk menjalankan langkah-langkah berikut, Anda harus memiliki:

  • Organisasi Azure DevOps. Buat akun gratis.
  • Token akses pribadi (PAT) dengan Cakupan Baca Kemasan>. Untuk membuatnya, lihat Membuat PAT.
  • Proyek Azure DevOps. Jika Anda tidak memilikinya, buat proyek.
  • Python 3.9 atau yang lebih baru diinstal pada komputer lokal Anda. Unduh Python di sini.
  • pip 24.0 dan twine 5.0.0 atau lebih tinggi.
  • Paket Python untuk diterbitkan dari komputer lokal Anda ke umpan Anda.
  • Jika menggunakan sampel paket Python:
    • Akun GitHub. Buat akun GitHub gratis jika Anda belum memilikinya.
    • git diinstal pada komputer lokal Anda.
  • Akun GitHub. Buat akun GitHub gratis jika Anda belum memilikinya.
  • Akses ke koleksi Azure DevOps Server.
  • Token akses pribadi (PAT) dengan Cakupan Baca Kemasan>. Untuk membuatnya, lihat Membuat PAT.
  • Proyek Azure DevOps. Jika Anda tidak memilikinya, buat proyek.
  • Python 3.9 atau yang lebih baru diinstal di lingkungan pengembangan lokal Anda.
  • pip 24.0 dan twine 5.0.0 atau lebih tinggi.
  • Jika menggunakan sampel paket Python:
    • Akun GitHub. Buat akun GitHub gratis jika Anda belum memilikinya.
    • git diinstal pada komputer lokal Anda.

Membuat umpan Artefak Azure

Jika Anda tidak memiliki umpan, gunakan langkah-langkah berikut untuk membuatnya.

  1. Masuk ke organisasi Azure DevOps Anda, lalu buka proyek Anda.

  2. Pilih Artefak, lalu pilih Buat Umpan.

    A screenshot showing how to create a feed.

  3. Masukkan informasi berikut untuk umpan Anda:

    1. Masukkan Nama deskriptif untuk umpan Anda.
    2. Tentukan Visibilitasnya (menunjukkan siapa yang dapat melihat paket dalam umpan).
    3. Pilih apakah akan menggunakan paket dari sumber publik seperti pypi.org.
    4. Tentukan Cakupan umpan Anda.
  4. Pilih Buat.

  1. Buka koleksi Azure DevOps Anda, pilih proyek Anda.

  2. Pilih Artefak, lalu pilih Buat Umpan.

    A screenshot showing how to create a feed in DevOps Server.

  3. Masukkan informasi berikut untuk umpan Anda:

    1. Masukkan Nama deskriptif untuk umpan Anda.
    2. Tentukan Visibilitasnya (menunjukkan siapa yang dapat melihat paket dalam umpan).
    3. Pilih apakah akan menggunakan paket dari sumber publik seperti pypi.org.
    4. Tentukan Cakupan umpan Anda.
  4. Pilih Buat.

  1. Buka koleksi Azure DevOps Anda, pilih proyek Anda.

  2. Pilih Artefak, lalu pilih Buat Umpan untuk membuat umpan baru.

  3. Masukkan informasi berikut untuk umpan Anda:

    1. Masukkan Nama deskriptif untuk umpan Anda.
    2. Tentukan Visibilitasnya (menunjukkan siapa yang dapat melihat paket dalam umpan).
    3. Pilih apakah akan menggunakan paket dari sumber publik seperti pypi.org.
    4. Tentukan Cakupan umpan Anda.
  4. Pilih Buat.

  1. Buka koleksi Azure DevOps Anda, pilih proyek Anda.

  2. Pilih Artefak, lalu pilih Buat Umpan untuk membuat umpan baru.

  3. Masukkan informasi berikut untuk umpan Anda:

    1. Masukkan Nama deskriptif untuk umpan Anda.
    2. Tentukan Visibilitasnya (menunjukkan siapa yang dapat melihat paket dalam umpan).
    3. Pilih apakah akan menggunakan paket dari sumber publik seperti pypi.org.
  4. Pilih Buat.

Membuat paket Python lokal

Anda memerlukan paket Python untuk diterbitkan ke umpan Anda. Jika Anda tidak memiliki paket untuk dipublikasikan, Anda dapat mengkloning sampel paket Python dari GitHub.

Mengkloning sampel paket Python

Gunakan langkah-langkah berikut untuk menggunakan sampel paket Python dari GitHub.

  1. Buka repositori GitHub berikut:

    https://github.com/microsoft/python-package-template
    
  2. Fork repositori ke akun GitHub Anda.

  3. Buka repositori fork Anda, dan pilih Kode.

  4. Salin URL repositori fork Anda.

  5. Dari CLI di komputer lokal Anda, klon repositori ke komputer lokal Anda menggunakan URL yang Anda salin dari repositori fork Anda.

    git clone <REPOSIORY_URL>
    
  6. Ubah direktori ke repositori kloning Anda.

    cd python-package-template
    

Bangun paket Anda

Untuk membangun distribusi roda dan sumber Anda, jalankan perintah berikut di direktori proyek Anda:

pip install --upgrade build
python -m build

Jika proyek Python Anda memiliki setup.py file, Anda dapat menggunakan perintah berikut untuk membangun paket Anda:

python setup.py sdist bdist_wheel

Hubungkan ke umpan

Ada dua cara utama untuk menyambungkan ke umpan untuk menerbitkan atau menggunakan paket Python Anda:

  1. Gunakan paket artefak-keyring, yang secara otomatis menyiapkan autentikasi untuk Anda.
  2. Siapkan kredensial secara manual dengan PAT.

Catatan

artifacts-keyring tidak didukung pada versi Ubuntu yang lebih baru.

Catatan

Jika organisasi Anda menggunakan firewall atau server proksi, pastikan Anda mengizinkan URL dan alamat IP Domain Artefak Azure.

Menyiapkan artefak-keyring untuk autentikasi

Paket artefak-keyring berfungsi dengan paket keyring Python untuk memungkinkan Anda menyiapkan autentikasi untuk menerbitkan dan menggunakan paket Python Anda ke dan dari umpan Anda. Baik pip maupun twine menggunakan paket keyring Python untuk menemukan kredensial.

Penting

Anda harus memiliki pip 19.2 dan twine 1.13.0 atau lebih tinggi untuk menggunakan artefak-keyring. Untuk informasi selengkapnya, lihat Persyaratan penggunaan.

Jika Anda memilih untuk menggunakan artefak-keyring, Anda harus menginstal paket sebelum Anda dapat menggunakannya.

Di jendela prompt perintah yang ditinggikan, jalankan perintah berikut untuk menginstal paket artefak-keyring:

pip install artifacts-keyring

Menerbitkan paket Python

Anda dapat menerbitkan paket Python ke umpan Anda menggunakan paket artefak-keyring atau autentikasi PAT.

Menerbitkan paket dengan artefak-keyring

  1. Pilih Koneksi untuk memberi umpan dari umpan Anda.

    A screenshot highlighting the connect to feed.

  2. Pilih ganda dan salin URL repositori dari bagian Penyiapan proyek.

    A screenshot of instructions to connect to feed with twine.

  3. Untuk menerbitkan paket ke umpan Anda, jalankan perintah <berikut mengganti FEED_URL> dengan URL repositori yang Anda salin dari dialog Koneksi ke umpan:

    twine upload --repository-url <FEED_URL> dist/*
    

Menerbitkan paket dengan autentikasi PAT

Gunakan twine untuk mengunggah paket Anda ke umpan Azure Artifacts Anda.

  1. Buka Proyek Azure DevOps Anda dan pilih Artefak.

  2. Pilih umpan Anda dan pilih Koneksi untuk disalurkan.

    A screenshot highlighting the connect to feed.

  3. Pilih twine di bawah bagian Python .

    A screenshot highlighting the twine package type.

  4. Pada komputer pengembangan Anda, pastikan bahwa twine diinstal.

    pip install --upgrade twine
    
  5. Ikuti instruksi di bagian Penyiapan proyek untuk menyiapkan file Anda .pypirc .

    A screenshot highlighting the `.pyirc` file content.

  6. Untuk menghindari perlu memasukkan token akses pribadi Anda setiap kali Anda menerbitkan paket, Anda dapat menambahkan kredensial Anda ke .pypirc file. Pastikan Anda tidak memeriksa token akses pribadi Anda ke repositori publik.

    .pypirc Contoh file dengan kredensial:

    [distutils]
    Index-servers =
        <FEED_NAME>
    
    [<FEED_NAME>]
    Repository = <FEED_URL>
    username = <FEED_NAME>
    password = <YOUR_PERSONAL_ACCESS_TOKEN>
    
  7. Untuk mengunggah paket Anda, jalankan perintah berikut di direktori proyek Anda yang menggantikan <FEED_NAME> dengan nama umpan Anda. Di Windows, Anda mungkin perlu menentukan pypirc lokasi file dengan --config-file opsi .

    twine upload --repository <FEED_NAME> dist/*
    

Mengonsumsi paket Python

Anda dapat menggunakan paket Python dari umpan Anda menggunakan paket artefak-keyring atau autentikasi PAT.

Mengonsumsi paket dengan artefak-keyring

  1. Di proyek Anda, pilih Artefak lalu pilih umpan Anda.

  2. Klik Sambungkan ke umpan.

    A screenshot highlighting the connect to feed button.

  3. Pilih pip di bawah bagian Python .

    A screenshot of pip selection in Connect to feed.

  4. Siapkan lingkungan Python lokal Anda.

    1. Pastikan pip diinstal dan diperbarui:

      python -m pip install --upgrade pip
      
    2. Untuk membuat dan mengaktifkan lingkungan virtual Python:

      python -m venv myenv
      myenv/Scripts/activate
      
  5. index-url Salin dari bagian Penyiapan proyek dari dialog Koneksi ke umpan.

    A screenshot of the index-url in the Connect to feed dialog.

  6. Untuk menginstal paket dari umpan Anda, jalankan perintah <berikut mengganti PACKAGE_NAME> dengan nama paket dari umpan Anda dan <INDEX_URL> dengan url indeks yang Anda salin dari dialog Koneksi ke umpan:

    pip install <PACKAGE_NAME> --index-url <INDEX_URL>
    

Saat Anda tersambung ke Azure DevOps untuk pertama kalinya, Anda akan dimintai kredensial. Masukkan nama pengguna Anda (string apa pun) dan token akses pribadi Anda di bidang yang sesuai. Kredensial akan di-cache secara lokal dan digunakan untuk memasukkan Anda secara otomatis saat berikutnya Anda menggunakan layanan.

Menggunakan paket dengan autentikasi PAT

  1. Buka Proyek Azure DevOps Anda dan pilih Artefak.

  2. Pilih umpan Anda dan pilih Koneksi untuk disalurkan.

    A screenshot highlighting the connect to feed button.

  3. Pilih pip di bawah bagian Python .

    A screenshot highlighting the pip package type.

  4. Siapkan lingkungan Python lokal Anda.

    1. Pastikan pip diinstal dan diperbarui:

      python -m pip install --upgrade pip
      
    2. Buat dan aktifkan lingkungan virtual Python:

      python -m venv myenv
      myenv/Scripts/activate
      
  5. Tambahkan file pip.ini (Windows) atau pip.conf (Mac/Linux) ke direktori akar lingkungan virtual Anda. Salin konten dari bagian Penyiapan proyek dari dialog Koneksi ke umpan dan tambahkan ke file pip.ini atau pip.conf Anda.

    A screenshot highlighting the pip.ini file content.

  6. Untuk menghindari perlu memasukkan token akses pribadi Anda setiap kali Anda menginstal paket dari umpan, Anda dapat menambahkan kredensial Anda ke file pip.ini atau pip.conf . Pastikan Anda tidak memeriksa token akses pribadi Anda ke repositori publik.

    Contoh file pip.ini atau pip.conf dengan kredensial:

    [global]
    extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@<FEED_URL>
    
  7. Untuk menginstal paket Anda, jalankan perintah <berikut mengganti PACKAGE_NAME> dengan nama paket dari umpan Anda.

    pip install <PACKAGE_NAME>