Integrace DevTest Labs do Azure Pipelines

Rozšíření Azure DevTest Labs Tasks můžete použít k integraci Azure DevTest Labs do kanálů kontinuální integrace a doručování (CI/CD) služby Azure Pipelines. Rozšíření nainstaluje do Azure Pipelines několik úloh, mezi které patří:

  • Vytvořit virtuální počítač
  • Vytvoření vlastní image z virtuálního počítače
  • Odstranění virtuálního počítače

Tyto úlohy usnadňují například rychlé nasazení virtuálního počítače se zlatými imagemi , spuštění konkrétního testu a následné odstranění virtuálního počítače.

Tento článek ukazuje, jak použít Azure DevTest Labs Tasks k vytvoření a nasazení virtuálního počítače, vytvoření vlastní image a následnému odstranění virtuálního počítače v jednom kanálu verze. Tyto úlohy byste obvykle prováděli samostatně ve vlastních kanálech sestavení, testování a nasazení.

Začínáme s Azure DevTest Labs

Jste nováčky v prostředí Azure? Vytvořte si bezplatný účet Azure.

Už jste na platformě Azure? Začínáme s prvním testovacím prostředím v DevTest Labs: Začínáme s Azure DevTest Labs v řádu minut.

Požadavky

Vytvoření šablony pro sestavení virtuálního počítače testovacího prostředí

Nejprve vytvořte šablonu Azure Resource Manager (ARM), která vytvoří virtuální počítač testovacího prostředí na vyžádání.

  1. V testovacím prostředí v Azure Portal v horním řádku nabídek vyberte Přidat.
  2. Na obrazovce Zvolte základnu vyberte základní image Windows pro virtuální počítač.
  3. Na obrazovce Vytvořit prostředek testovacího prostředí v části Artefakty vyberte Přidat nebo odebrat artefakty.
  4. Na obrazovce Přidat artefakty vyhledejte winrm a pak vyberte šipku vedle konfigurovat WinRM.
  5. V podokně Přidat artefakt zadejte plně kvalifikovaný název domény (FQDN) virtuálního počítače, například contosolab00000000000000.westus3.cloudapp.azure.com. Vyberte OK a potom znovu vyberte OK.
  6. Vyberte kartu Upřesnit nastavení a v části IP adresa vyberte Veřejná.

    Poznámka

    Pokud používáte artefakt WinRM se sdílenou IP adresou, musíte přidat pravidlo překladu síťových adres (NAT), které namapuje externí port na port WinRM. Pokud vytváříte virtuální počítač s veřejnou IP adresou, pravidlo PŘEKLADU ADRES nepotřebujete. Pro účely tohoto návodu vytvořte virtuální počítač s veřejnou IP adresou.

  7. Vyberte Zobrazit šablonu ARM.
  8. Zkopírujte kód šablony a uložte ho jako soubor s názvem CreateVMTemplate.json ve vaší místní větvi správy zdrojového kódu.
  9. Se změnami šablony přejděte do systému správy zdrojového kódu vašeho projektu.

Další informace a podrobnosti najdete v tématu Použití šablony Resource Manager.

Vytvoření skriptu pro získání vlastností virtuálního počítače

Dále vytvořte skript, který shromáždí hodnoty, které kroky úloh, jako je Azure File Copy a PowerShell na cílových počítačích , používají k nasazení aplikací do virtuálních počítačů. Tyto úlohy byste běžně používali k nasazení vlastních aplikací na virtuální počítače Azure. Úlohy vyžadují hodnoty, jako je název skupiny prostředků virtuálního počítače, IP adresa a plně kvalifikovaný název domény.

Poznámka

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Uložte následující skript pod názvem GetLabVMParams.ps1a se změnami ho se změnami v systému správy zdrojového kódu projektu.

Param( [string] $labVmId)

$labVmComputeId = (Get-AzResource -Id $labVmId).Properties.ComputeId

# Get lab VM resource group name
$labVmRgName = (Get-AzResource -Id $labVmComputeId).ResourceGroupName

# Get the lab VM Name
$labVmName = (Get-AzResource -Id $labVmId).Name

# Get lab VM public IP address
$labVMIpAddress = (Get-AzPublicIpAddress -ResourceGroupName $labVmRgName -Name $labVmName).IpAddress

# Get lab VM FQDN
$labVMFqdn = (Get-AzPublicIpAddress -ResourceGroupName $labVmRgName -Name $labVmName).DnsSettings.Fqdn

# Set a variable labVmRgName to store the lab VM resource group name
Write-Host "##vso[task.setvariable variable=labVmRgName;]$labVmRgName"

# Set a variable labVMIpAddress to store the lab VM Ip address
Write-Host "##vso[task.setvariable variable=labVMIpAddress;]$labVMIpAddress"

# Set a variable labVMFqdn to store the lab VM FQDN name
Write-Host "##vso[task.setvariable variable=labVMFqdn;]$labVMFqdn"

Vytvoření kanálu verze v Azure Pipelines

Dále vytvořte kanál verze v Azure Pipelines. Úlohy kanálu používají hodnoty, které jste přiřadili virtuálnímu počítači při vytváření šablony ARM.

  1. Na stránce Azure DevOps Services projektu v levém navigačním panelu vyberte Verze kanálů>.
  2. Vyberte Nový kanál.
  3. V podokně Vybrat šablonu vyberte Vyprázdnit úlohu.
  4. Zavřete podokno Fáze .
  5. Na stránce Nový kanál verze vyberte kartu Proměnné .
  6. Vyberte Přidat a zadejte následující páry Název a Hodnota a po přidání každého z nich vyberte Přidat .
    • vmName: Název virtuálního počítače, který jste přiřadili v šabloně ARM.
    • userName: Uživatelské jméno pro přístup k virtuálnímu počítači.
    • heslo: Heslo pro uživatelské jméno. Výběrem ikony zámku heslo skryjete a zabezpečíte.

Přidání artefaktu

  1. Na stránce kanálu nové verze na kartě Kanál vyberte Přidat artefakt.
  2. V podokně Přidat artefakt vyberte Úložiště Azure.
  3. V seznamu Project vyberte svůj projekt DevOps.
  4. V seznamu Zdroj (úložiště) vyberte zdrojové úložiště.
  5. V seznamu Výchozí větev vyberte větev, která se má rezervovat.
  6. Vyberte Přidat.

Vytvoření virtuálního počítače DevTest Labs

V dalším kroku se vytvoří virtuální počítač zlaté image, který se použije pro budoucí nasazení. V tomto kroku se používá úloha Azure DevTest Labs Vytvořit virtuální počítač.

  1. Na stránce kanálu nové verze na kartě Kanál vyberte text hypertextových odkazů ve fázi 1.

  2. V levém podokně vyberte znaménko + plus vedle položky Úloha agenta.

  3. V části Přidat úkoly v pravém podokně vyhledejte a vyberte Azure DevTest Labs Vytvořit virtuální počítač a vyberte Přidat.

  4. V levém podokně vyberte úlohu Vytvořit Azure DevTest Labs virtuální počítač.

  5. Následujícím způsobem vyplňte formulář v pravém podokně:

    • Předplatné Azure RM: V rozevíracím seznamu vyberte připojení služby nebo předplatné a v případě potřeby vyberte Autorizovat .

      Poznámka

      Informace o vytvoření více omezeného oprávnění připojení k předplatnému Azure najdete v tématu Koncový bod služby Azure Resource Manager.

    • Testovací prostředí: Vyberte název testovacího prostředí DevTest Labs.

    • Název virtuálního počítače: Proměnná, kterou jste zadali pro název virtuálního počítače: $vmName.

    • Šablona: Vyhledejte a vyberte soubor šablony, který jste se změnami přihlásili do úložiště projektu.

    • Soubor parametrů: Pokud jste v úložišti zkontrolovali soubor parametrů, vyhledejte ho a vyberte ho.

    • Přepsání parametrů: Zadejte -newVMName '$(vmName)' -userName '$(userName)' -password '$(password)'.

    • Rozevírací seznam Výstupní proměnné a v části Název odkazu zadejte proměnnou pro id vytvořeného testovacího virtuálního počítače. Pro zjednodušení jako Název odkazu zadejte virtuální počítač. labVmId bude atributem této proměnné a bude později označován jako $vm.labVmId. Pokud použijete jakýkoli jiný název, nezapomeňte ho odpovídajícím způsobem použít v následujících úlohách.

      ID virtuálního počítače testovacího prostředí bude v následujícím tvaru: /subscriptions/{subscription Id}/resourceGroups/{resource group Name}/providers/Microsoft.DevTestLab/labs/{lab name}/virtualMachines/{vmName}.

Shromáždění podrobností o virtuálním počítači DevTest Labs

V dalším kroku kanál spustí skript, který jste vytvořili, a shromáždí podrobnosti o virtuálním počítači DevTest Labs.

  1. Na kartě Úlohy kanálu verze vyberte znaménko + plus vedle položky Úloha agenta.
  2. V části Přidat úkoly v pravém podokně vyhledejte a vyberte Azure PowerShell a vyberte Přidat.
  3. V levém podokně vyberte Azure PowerShell skript: FilePath.
  4. Následujícím způsobem vyplňte formulář v pravém podokně:
    • Předplatné Azure: Vyberte připojení služby nebo předplatné.
    • Typ skriptu: Vyberte Cestu k souboru skriptu.
    • Cesta ke skriptu: Vyhledejte a vyberte skript PowerShellu, který jste se změnami přihlásili do úložiště zdrojového kódu. Ke zjednodušení cesty můžete použít předdefinované vlastnosti, například : $(System.DefaultWorkingDirectory/Scripts/GetLabVMParams.ps1.
    • Argumenty skriptu: Zadejte hodnotu -labVmId $(vm.labVmId).

Skript shromáždí požadované hodnoty a uloží je do proměnných prostředí v rámci kanálu verze, abyste na ně mohli odkazovat v pozdějších krocích.

Vytvoření image virtuálního počítače z virtuálního počítače DevTest Labs

Další úloha vytvoří image nově nasazeného virtuálního počítače ve vašem testovacím prostředí. Image můžete použít k vytvoření kopií virtuálního počítače na vyžádání, abyste mohli provádět vývojářské úlohy nebo spouštět testy.

  1. Na kartě Úlohy kanálu verze vyberte znaménko + plus vedle položky Úloha agenta.
  2. V části Přidat úkoly vyberte Azure DevTest Labs Vytvořit vlastní image a vyberte Přidat.
  3. V levém podokně vyberte úlohu Azure DevTest Labs Vytvořit vlastní image.
  4. Následujícím způsobem vyplňte formulář v pravém podokně:
    • Předplatné Azure RM: Vyberte připojení ke službě nebo předplatné.
    • Testovací prostředí: Vyberte testovací prostředí.
    • Název vlastní image: Zadejte název vlastní image.
    • Popis: Zadejte volitelný popis, který usnadňuje výběr správného obrázku.
    • Zdrojový virtuální počítač testovacího prostředí: Id zdrojového testovacího prostředí. Zadejte hodnotu $(vm.labVmId).
    • Výstupní proměnné: V případě potřeby můžete upravit název výchozí proměnné ID vlastní image.

Nasazení aplikace na virtuální počítač DevTest Labs (volitelné)

Můžete přidat úlohy pro nasazení aplikace na nový virtuální počítač DevTest Labs. Pokud chcete experimentovat jenom s vytvořením virtuálního počítače DevTest Labs a vlastní image bez nasazení aplikace, můžete tento krok přeskočit.

Úlohy, které obvykle používáte k nasazení aplikací, jsou Kopírování souborů Azure a PowerShell na cílových počítačích. Informace o virtuálních počítačích, které potřebujete pro parametry úlohy, najdete ve třech proměnných konfigurace s názvem labVmRgName, labVMIpAddress a labVMFqdn v rámci kanálu verze.

Odstranění virtuálního počítače

Posledním úkolem je odstranit virtuální počítač, který jste nasadili v testovacím prostředí. Virtuální počítač byste obvykle odstranili po provedení vývojářských úloh nebo spuštění testů, které potřebujete na nasazeném virtuálním počítači.

  1. Na kartě Úlohy kanálu verze vyberte znaménko + plus vedle položky Úloha agenta.
  2. V části Přidat úkoly vyberte Azure DevTest Labs Odstranit virtuální počítač a vyberte Přidat.
  3. Nakonfigurujte úlohu následujícím způsobem:
    • Předplatné Azure RM: Vyberte připojení ke službě nebo předplatné.
    • Testovací prostředí: Vyberte testovací prostředí.
    • Virtuální počítač: Zadejte hodnotu $(vm.labVmId).
    • Výstupní proměnné: Pokud jste v části Referenční název změnili výchozí název proměnné labVmId , zadejte ho sem. Výchozí hodnota je $(labVmId).

Uložení kanálu verze

Uložení nového kanálu verze:

  1. V horní části stránky kanálu verze vyberte Nový kanál verze a zadejte nový název kanálu.
  2. Vpravo nahoře vyberte Uložit .

Vytvoření a spuštění verze

Vytvoření a spuštění verze pomocí nového kanálu:

  1. Na stránce kanálu verze vyberte Vytvořit verzi v pravém horním rohu.
  2. V části Artefakty vyberte nejnovější build a pak vyberte Vytvořit.

V každé fázi vydání můžete aktualizovat zobrazení testovacího prostředí v Azure Portal, abyste viděli vytvoření virtuálního počítače, vytvoření image a odstranění virtuálního počítače.

Vlastní image můžete použít k vytvoření virtuálních počítačů, kdykoli je budete potřebovat.

Další kroky