Anaconda ortamları ile işlem hatlarını çalıştırma

Azure Pipelines

İşlem hattınızda Python ile Anaconda ayarlamayı ve kullanmayı öğrenin. Anaconda, veri bilimi ve makine öğrenimi için bir Python dağıtımıdır.

başlarken

Anaconda ortamıyla örnek bir Python uygulaması için bir işlem hattı ayarlamak için bu yönergeleri izleyin.

  1. Aşağıdaki depodaki kod basit bir Python uygulamasıdır. başlamak için bu depoyu GitHub hesabınıza çatalla.

    https://github.com/MicrosoftDocs/pipelines-anaconda
    
  2. Azure DevOps kuruluşunuzda oturum açın ve projenize gidin.

  3. projenizde Pipelines sayfasına gidin. Sonra yeni bir işlem hattı oluşturmak için eylemi seçin.

  4. ilk olarak GitHub kaynak kodunuzun konumu olarak seçerek sihirbazın adımlarını gözden geçir.

  5. oturum açmak için GitHub yönlendiriliyorsunuz. bu durumda GitHub kimlik bilgilerinizi girin.

  6. Depo listesi göründüğünde, Anaconda örnek deponuzu seçin.

  7. Azure Pipelines, deponuzdaki kodu analiz eder ve var olan bir azure-pipelines.yml dosyayı algılar.

  8. Çalıştır'ı seçin.

  9. Yeni bir çalıştırma başlatılır. Çalıştırmanın bitmesini bekleyin.

İpucu

yaml dosyasında bu konuda açıklandığı gibi değişiklikler yapmak için, Pipelines sayfasında işlem hattını seçin ve sonra dosyayı düzenleyin .

Sistem yolunuza Conda ekleyin

Barındırılan aracılarda, Python sürümünün diğer yüklü sürümlerle çakışmasını önlemek için Conda, varsayılan olarak ' dan bırakılır. task.prependpathAracı komutu sonraki adımların tümü tarafından kullanılabilir hale gelir.

- bash: echo "##vso[task.prependpath]$CONDA/bin"
  displayName: Add conda to PATH

Ortam oluşturma

Komut satırı bağımsız değişkenlerinden

conda createKomutu geçirdiğiniz bağımsız değişkenlerle bir ortam oluşturur.

- bash: conda create --yes --quiet --name myEnvironment
  displayName: Create Anaconda environment

YAML 'den

environment.ymlBir Anaconda ortamının yapılandırmasını tanımlayan bir dosyayı depoya iade edebilirsiniz.

- script: conda env create --quiet --file environment.yml
  displayName: Create Anaconda environment

Not

Şirket içinde barındırılan bir aracı kullanıyorsanız ve ortamı sonda kaldırmazsanız, ortam zaten mevcut olduğundan sonraki derlemede bir hata alırsınız. Çözümlemek için --force bağımsız değişkenini kullanın: conda env create --quiet --force --file environment.yml .

Anaconda paketlerini yükler

Aşağıdaki YAML, scipy paketini adlı Conda ortamına yüklerse myEnvironment .

- bash: |
    source activate myEnvironment
    conda install --yes --quiet --name myEnvironment scipy
  displayName: Install Anaconda packages

Ardışık düzen adımlarını bir Anaconda ortamında çalıştırma

Not

Her yapı adımı kendi sürecinde çalışır. Anaconda ortamını etkinleştirdiğinizde, bu işlem düzenleme yapar PATH ve geçerli işleminde başka değişiklikler yapar. Bu nedenle, her adım için bir Anaconda ortamının ayrı olarak etkinleştirilmesi gerekir.

- bash: |
    source activate myEnvironment
    python -m pytest --junitxml=junit/unit-test.xml
  displayName: pytest

- task: PublishTestResults@2
  inputs:
    testResultsFiles: 'junit/*.xml'
  condition: succeededOrFailed()

SSS

Neden "Izin reddedildi" hatası alıyorum?

Barındırılan macOS 'ta, aracı Kullanıcı, Miniconda yüklü olduğu dizinin sahipliğini içermiyor. Bir çözüm için, sistem yolunuza Conda Eklealtındaki "barındırılan MacOS" sekmesine bakın.

Yapımın bir veya adımında neden yanıt vermemeye conda create başlıyor conda install ?

Geçişi unutursanız --yes , Conda, kullanıcı etkileşimini durdurur ve bekler.

betiğimin ortamı etkinleştirdikten sonra neden Windows duruyor?

Windows, activate toplu bir komut dosyası. ' İ etkinleştirdikten call sonra komut dosyanızı çalıştırmayı sürdürmeniz için komutunu kullanmanız gerekir. Yukarıdaki kullanımı örneklerine bakın callcall.

Birden çok Python sürümü ile testlerinizi nasıl çalıştırabilirim?

Bkz. Azure Pipelines Python uygulamaları oluşturma.