Azure DevOps'ta Azure Cosmos DB Öykünücüsü derleme göreviyle CI/CD işlem hattı ayarlama

Note

Windows 2016 üzerinde barındırılan runner'ların 1 Nisan 2022'de tamamen kaldırılması nedeniyle, Azure DevOps'ta bir derleme göreviyle Azure Cosmos DB emülatörünün kullanılması artık desteklenmez. Alternatif çözümler üzerinde etkin bir şekilde çalışıyoruz. Bu arada, "windows-2019" aracı türü kullanılırken önceden yüklenmiş olarak gelen Azure Cosmos DB öykünücüden faydalanmanız için aşağıdaki yönergeleri izleyebilirsiniz.

Azure Cosmos DB Öykünücüsü, geliştirme amaçlı olarak Azure Cosmos DB hizmetine öykünen yerel bir ortam sağlar. Öykünücü sayesinde Azure aboneliği oluşturmadan veya masraf yapmadan uygulamanızı yerel ortamda geliştirip test edebilirsiniz.

Öykünücü için PowerShell Görevi

Azure Cosmos DB öykünücüsünü başlatacak PowerShell tabanlı tipik bir görev aşağıdaki gibi komut dosyası oluşturulabilir:

"windows-2019" aracı türünü seçen bir iş yapılandırması örneği. windows-2019 kullanarak iş yapılandırmasının ekran görüntüsü

Öykünücüyü başlatmak için gereken PowerShell betiğini yürüten bir görev örneği.

Öykünücüyü başlatmak için PowerShell betiğini yürüten ekran görüntüsü


# Write your PowerShell commands here.

dir "$env:ProgramFiles\Azure Cosmos DB Emulator\"

Import-Module "$env:ProgramFiles\Azure Cosmos DB Emulator\PSModules\Microsoft.Azure.CosmosDB.Emulator"

$startEmulatorCmd = "Start-CosmosDbEmulator -NoFirewall -NoUI"
Write-Host $startEmulatorCmd
Invoke-Expression -Command $startEmulatorCmd

# Pipe an emulator info object to the output stream

$Emulator = Get-Item "$env:ProgramFiles\Azure Cosmos DB Emulator\Microsoft.Azure.Cosmos.Emulator.exe"
$IPAddress = Get-NetIPAddress -AddressFamily IPV4 -AddressState Preferred -PrefixOrigin Manual | Select-Object IPAddress

New-Object PSObject @{
Emulator = $Emulator.BaseName
Version = $Emulator.VersionInfo.ProductVersion
Endpoint = @($(hostname), $IPAddress.IPAddress) | ForEach-Object { "https://${_}:8081/" }
MongoDBEndpoint = @($(hostname), $IPAddress.IPAddress) | ForEach-Object { "mongodb://${_}:10255/" }
CassandraEndpoint = @($(hostname), $IPAddress.IPAddress) | ForEach-Object { "tcp://${_}:10350/" }
GremlinEndpoint = @($(hostname), $IPAddress.IPAddress) | ForEach-Object { "http://${_}:8901/" }
TableEndpoint = @($(hostname), $IPAddress.IPAddress) | ForEach-Object { "https://${_}:8902/" }
IPAddress = $IPAddress.IPAddress
}

Azure Cosmos DB öykünücüsü önceden yüklenmiş olarak gelmeyen bir aracı kullanmanız gerekiyorsa, kendi yerel olarak barındırılan Windows aracınızı oluşturma seçeneğine de sahipsiniz. Kendi barındırdığınız aracı üzerinde en son öykünücünün MSI paketini https://aka.ms/cosmosdb-emulator 'curl' veya 'wget' kullanarak indirip, ardından sessiz yüklemek için 'msiexec' kullanın. Yüklemeden sonra öykünücüyü başlatmak için yukarıdakiyle benzer bir PowerShell betiği çalıştırabilirsiniz.

Sonraki Adımlar

Yerel geliştirme ve test için öykünücü kullanımı hakkında daha fazla bilgi edinmek için bkz. Yerel geliştirme ve test için Azure Cosmos DB Öykünücüsünü kullanma.

Öykünücü TLS/SSL sertifikalarını dışarı aktarmak için bkz . Java, Python ve Node.js ile kullanmak üzere Azure Cosmos DB Öykünücüsü sertifikalarını dışarı aktarma