Python uygulamaları derleme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Pipelines'ı kullanarak CI/CD sisteminizin bir parçası olarak Python uygulamaları ve betikleri oluşturabilir, test edebilir ve dağıtabilirsiniz.

Bu hızlı başlangıçta Python uygulaması derlemek ve test etmek için işlem hattı oluşturmayı öğreneceksiniz.

Python projeleri oluşturmak için Azure Pipelines için herhangi bir şey ayarlamanız gerekmez. Python, Linux, macOS veya Windows için Microsoft tarafından barındırılan derleme aracılarına önceden yüklenmiştir. Hangi Python sürümlerinin önceden yüklendiğini görmek için bkz . Microsoft tarafından barındırılan aracı kullanma.

Önkoşullar

  • Depo oluşturabileceğiniz bir GitHub hesabı. Ücretsiz bir tane oluşturun.
  • Bir Azure DevOps kuruluşu. Ücretsiz bir tane oluşturun.
  • Azure DevOps projesi. Azure DevOps Proje Oluşturma Sihirbazı'nı kullanarak bir proje oluşturun.
  • Microsoft tarafından barındırılan aracılarda işlem hatlarını çalıştırma olanağı. Paralel bir satın alabilir veya ücretsiz katman isteyebilirsiniz.
  • Depo oluşturabileceğiniz bir GitHub hesabı. Ücretsiz bir tane oluşturun.
  • Bir Azure DevOps Sunucusu.
  • Azure DevOps projesi. Azure DevOps Server Proje Oluşturma Sihirbazı'nı kullanarak bir proje oluşturun.
  • Şirket içinde barındırılan bir aracı. Bir aracı oluşturmak için bkz . Şirket içinde barındırılan aracılar.
  • Şirket içinde barındırılan aracınızda yüklü Python sürümleri. Aracınıza Python yüklemeyi öğrenmek için bkz . UsePythonVersion.

1. Örnek kodu çatallayın

Örnek Python deposunu GitHub hesabınıza çatal oluşturun.

  1. python-sample-vscode-flask-tutorial deposuna gidin.
  2. Sayfanın sağ üst köşesindeki Çatal'ı seçin.
  3. Deponun çatalını oluşturmak istediğiniz GitHub hesabını seçin ve çatallanmış deponuz için bir ad girin.

2. İşlem hattınızı oluşturma

  1. Azure Pipelines'agidin ve Ücretsiz başlat'ı seçin. İstenirse DevOps hesabınızda oturum açın.

  2. Projenize gidin ve İşlem Hatları İşlem Hattı> Oluştur'u seçin.

  3. Kaynak kodunuzun konumu olarak GitHub'ı seçin.

  4. Oturum açmak için GitHub'a yönlendirilirseniz GitHub kimlik bilgilerinizi girin.

  5. Depo listesi görüntülendiğinde, çatallanmış örnek deponuzu seçin.

  6. İşlem hattınızı yapılandırın sekmesinde Başlatıcı işlem hattı'nı seçin.

  1. Bir tarayıcıda DevOps Server koleksiyonunuz'a gidin.

  2. Projenize gidin ve İşlem Hatları>Yeni işlem hattı oluştur'u seçin.

  3. Kaynak kodunuzun konumu olarak GitHub Enterprise Server'ı seçin.

  4. Oturum açmak için GitHub'a yönlendirilirseniz GitHub kimlik bilgilerinizi girin.

  5. Depo listesi görüntülendiğinde, çatallanmış örnek deponuzu seçin.

  6. İşlem hattınızı yapılandırın sekmesinde Başlatıcı işlem hattı'nı seçin.

3. İşlem hattınızı özelleştirme

Oluşturulan azure-pipelines.yml dosya içeriğini aşağıdaki kodla değiştirin. Bu kod gerekli Python sürümünü ve bağımlılıkları yükler, Python paketini işlem hattınızda yayımlanan bir zip dosyasına paketler ve testleri çalıştırır.

trigger:
- main

pool:
  vmImage: ubuntu-latest

strategy:
  matrix:
    Python310:
      python.version: '3.10'
    Python311:
      python.version: '3.11'
    Python312:
      python.version: '3.12'

steps:
  - task: UsePythonVersion@0
    inputs:
      versionSpec: '$(python.version)'
    displayName: 'Use Python $(python.version)'

  - script: |
      python -m pip install --upgrade pip
      pip install -r requirements.txt
    displayName: 'Install dependencies'

  - task: ArchiveFiles@2
    displayName: 'Archive files'
    inputs:
      rootFolderOrFile: $(System.DefaultWorkingDirectory)
      includeRootFolder: false
      archiveType: zip
      archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId)-$(python.version).zip
      replaceExistingArchive: true

  - task: PublishBuildArtifacts@1
    inputs:
      PathtoPublish: '$(Build.ArtifactStagingDirectory)'
      ArtifactName: 'drop'
      publishLocation: 'Container'

  - script: |
      pip install pytest pytest-azurepipelines
      pytest
    displayName: 'pytest'

öğesini azure-pipelines.yml proje yapılandırmanızla eşleşecek şekilde özelleştirin.

  1. Oluşturulan YAML değerini aşağıdaki kodla değiştirin. Bu kod gerekli Python sürümünü ve bağımlılıkları yükler, Python paketini işlem hattınızda yayımlanan bir zip dosyasına paketler ve testleri çalıştırır.
  2. Farklı bir aracı havuzunuz varsa havuz name parametresini değiştirin.
  3. Python sürümünü şirket içinde barındırılan aracınızda yüklü bir sürümle eşleşecek şekilde değiştirin.
  trigger:
  - main

  pool: 
    name: '<your-pool-name or default>'

  steps:
  - task: UsePythonVersion@0
    inputs:
      versionSpec: '3.12'
    displayName: 'Use Python 3.12'  

  - script: |
      python -m pip install --upgrade pip
      pip install -r requirements.txt
    displayName: 'Install dependencies'


  - task: ArchiveFiles@2
    displayName: 'Archive files'
    inputs:
      rootFolderOrFile: $(System.DefaultWorkingDirectory)
      includeRootFolder: false
      archiveType: zip
      archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip
      replaceExistingArchive: true

  - task: PublishBuildArtifacts@1
    inputs:
      PathtoPublish: '$(Build.ArtifactStagingDirectory)'
      ArtifactName: 'drop'
      publishLocation: 'Container'

  - script: |
      pip install pytest pytest-azurepipelines
      pytest
    displayName: 'pytest'

4. İşlem hattınızı çalıştırma

İşlem hattınızı kaydedin ve çalıştırın.

  1. Kaydet ve çalıştır'ı seçin.
  2. Kaydet ve çalıştır iletişim kutusunda Kaydet ve çalıştır'ı seçin.
  3. Özet sekmesinde işlem hattı çalıştırmanızın durumunu görebilirsiniz.
  1. Çalıştır seçin.
  2. Derleme numarası sayfanın en üstünde görüntülenir. Derlemenin ayrıntılarını görmek için derleme numarasını seçin.

İşlem hattı derleme bağlantısının ekran görüntüsü.

Tamamlanmış Python işlerinin ekran görüntüsü.

Derleme yapıtınızı görüntülemek için. Özet sekmesinde yayımlanmış bağlantıyı seçin.

Yayımlanan derleme yapıtları bağlantısının ekran görüntüsü.

Yapıtlar sayfasında yayımlanan derleme yapıtları gösterilir.

Yayımlanan derleme yapıtlarının ekran görüntüsü.

Test sonuçlarını görüntülemek için Testler sekmesini seçin.

İşlem hattı test sonuçlarının ekran görüntüsü.

Özet sekmesinde işlem hattı çalıştırmanızın durumu gösterilir.

Tamamlanmış Python işinin ekran görüntüsü.

Derleme yapıtınızı görüntülemek için Özet sekmesinde yayımlanan bağlantıyı seçin.

Yayımlanan derleme yapıtları bağlantısının ekran görüntüsü.

Test sonuçlarını görüntülemek için Testler sekmesini seçin.

İşlem hattı test sonuçlarının ekran görüntüsü.

Özet sekmesinde işlem hattı çalıştırmanızın durumu gösterilir.

Tamamlanmış Python işinin ekran görüntüsü.

Derleme yapıtınızı indirmek için Derleme yapıtları yayımlandı bölümünden bırakma bağlantısını seçin.

Test sonuçlarını görüntülemek için Testler sekmesini seçin.

İşlem hattı test sonuçlarının ekran görüntüsü.

Temizleme

Bu hızlı başlangıcı tamamladığınızda Azure DevOps'ta oluşturduğunuz projeyi silebilirsiniz.

  1. Sayfanın sol alt köşesindeki Proje ayarları dişli simgesini seçin.
  2. Projeye genel bakış sayfasının en altında Sil'i seçin.
  3. Proje adını girin ve Sil'i seçin.

Tebrikler, bu hızlı başlangıcı başarıyla tamamladınız!

Sonraki adımlar