Aracılığıyla paylaş


Ruby uygulamaları derleme ve test etme

Azure DevOps Services

Ruby uygulamanızı derlemek, test etmek ve dağıtmak için Azure Pipelines'ı kullanmayı öğrenin.

Azure Pipelines'u oluşturma

Ruby uygulaması için işlem hattı ayarlamak için bu adımları izleyin.

  1. Azure DevOps kuruluşunuzda oturum açın ve projenize gidin.

  2. İşlem Hatları>Yeni İşlem Hattı bölümüne gidin.

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

    Oturum açmak için GitHub'a yönlendirilebilirsiniz. Öyleyse GitHub kimlik bilgilerinizi girin.

  4. Ruby örnek deponuzu seçin.

  5. Ruby İşlem hattınızın şablonunu seçin.

  6. BIR YAML dosyası oluşturulur. Kaydet ve çalıştır'ı seçin> ve ardından Doğrudan ana dala commit yapın, sonra tekrar Kaydet ve çalıştır'ı seçin.

  7. Çalışmanın bitmesini bekleyin.

Deponuzda özelleştirmeniz için hazır çalışan bir YAML dosyanız (azure-pipelines.yml) var.

Tavsiye

Bu makalede açıklanan YAML dosyasında değişiklik yapmak için İşlem Hatları sayfasında işlem hattını seçin ve ardından dosya için Düzenle'yiazure-pipelines.yml seçin.

Derleme ortamı

Kendi altyapınızı ayarlamanıza gerek kalmadan Ruby projelerinizi oluşturmak için Azure Pipelines'ı kullanabilirsiniz. Ruby, Azure Pipelines'da Microsoft tarafından barındırılan aracılara önceden yüklenmiştir. Derlemelerinizi çalıştırmak için Linux, macOS veya Windows aracılarını kullanabilirsiniz.

Ruby'nin önceden yüklenmiş tam sürümleri için Bkz. Microsoft tarafından barındırılan aracılar. Microsoft tarafından barındırılan aracılara Ruby'nin belirli bir sürümünü yüklemek için işlem hattınızın başına Ruby Sürümünü Kullan görevini ekleyin.

Belirli bir Ruby sürümünü kullanma

İşlem hattınızda Ruby sürümünü ayarlamak için Ruby Sürümünü Kullan görevini ekleyin. Bu kod parçacığı yola Ruby 3.4 veya üzerini ekler ve bunu kullanmak için sonraki işlem hattı görevlerini ayarlar.

pool:
  vmImage: 'ubuntu-latest' 

steps:
- task: UseRubyVersion@0 
  inputs:
    versionSpec: '>= 3.4' 
    addToPath: true
  displayName: 'Set Ruby version'

Rails'i Yükleme

Rails'i yüklemek için dosyanıza azure-pipelines.yml aşağıdaki kod parçacığını ekleyin.

- script: gem install rails && rails -v
  displayName: 'Install Rails'

Bağımlılıkları yükleme

Dosyanıza azure-pipelines.yml aşağıdaki kod parçacığını ekleyerek bağımlılıkları yüklemek için Bundler'ı kullanın.

- script: |
    gem install bundler
    bundle install --retry=3 --jobs=4
  displayName: 'Install dependencies with Bundler'

Rake'i çalıştırma

Rake'i geçerli paket bağlamında (Gemfile'ınızda tanımlandığı gibi) yürütmek için dosyanıza azure-pipelines.yml aşağıdaki kod parçacığını ekleyin.

- script: bundle exec rake
  displayName: 'bundle exec rake'

Test sonuçlarını yayımlama

Örnek kod , RSpec ile yazılmış birim testlerini içerir. Rake önceki adımda çalıştığında RSpec testlerini yürütür. Rakefile içindeki RSpec RakeTask, RspecJUnitFormatter kullanılarak JUnit stili sonuçlar üretecek şekilde yapılandırılır.

JUnit stilindeki test sonuçlarını sunucuda yayımlamak için Test Sonuçlarını Yayımla görevini ekleyin.

- task: PublishTestResults@2
  condition: succeededOrFailed()
  inputs:
    testResultsFiles: '**/test-*.xml'
    testRunTitle: 'Ruby tests'

Kod kapsamı sonuçlarını yayımlama

Örnek kod, birim testleri çalıştırıldığında kod kapsamı verilerini toplamak için SimpleCov kullanır. SimpleCov, Cobertura ve HTML rapor biçimlendiricilerini kullanacak şekilde yapılandırılmıştır.

Kod kapsamı sonuçlarını sunucuda yayımlamak için Kod Kapsamı Sonuçlarını Yayımla görevini ekleyin. Bu, derleme özetindeki kapsam ölçümlerini görüntülemenizi ve daha fazla analiz için HTML raporlarını indirmenizi sağlar.

- task: PublishCodeCoverageResults@2
  inputs:
    codeCoverageTool: Cobertura
    summaryFileLocation: '$(System.DefaultWorkingDirectory)/**/coverage.xml'
    reportDirectory: '$(System.DefaultWorkingDirectory)/**/coverage'
    failIfCoverageEmpty: true 

Görüntü oluştur ve kapsayıcı kayıt defterine gönder

Ruby uygulamanız için bir görüntü oluşturabilir ve bunu bir kapsayıcı kayıt defterine gönderebilirsiniz.