DevTest Labs integrálása az Azure Pipelinesba

A Azure DevTest Labs Tasks bővítménnyel integrálhatja a Azure DevTest Labs az Azure Pipelines folyamatos integrációs és kézbesítési (CI/CD) folyamataiba. A bővítmény számos feladatot telepít az Azure Pipelinesba, többek között a következőket:

  • Virtuális gép (VM) létrehozása
  • Egyéni rendszerkép létrehozása virtuális gépből
  • Virtuális gép törlése

Ezek a feladatok megkönnyítik például egy aranylemezkép-alapú virtuális gép gyors üzembe helyezését, egy adott teszt futtatását, majd a virtuális gép törlését.

Ez a cikk bemutatja, hogyan használható Azure DevTest Labs Tasks virtuális gép létrehozására és üzembe helyezésére, egyéni rendszerkép létrehozására, majd a virtuális gép törlésére, mindezt egy kiadási folyamatban. Ezeket a feladatokat általában külön kell elvégeznie a saját buildelési, tesztelési és üzembehelyezési folyamataiban.

Bevezetés az Azure DevTest Labs használatába

Most ismerkedik az Azure-ral? Hozzon létre egy ingyenes Azure-fiókot.

Már használja az Azure-t? Ismerkedés az első tesztkörnyezettel a DevTest Labsben: Első lépések Azure DevTest Labs percek alatt.

Előfeltételek

Sablon létrehozása tesztkörnyezeti virtuális gép létrehozásához

Először hozzon létre egy Azure Resource Manager (ARM) sablont, amely igény szerint létrehoz egy tesztkörnyezeti virtuális gépet.

  1. A tesztkörnyezetben a Azure Portal válassza a felső menüsáv Hozzáadás elemét.
  2. Az Alap kiválasztása képernyőn válassza ki a virtuális gép windowsos alaprendszerképét.
  3. A Laborerőforrás létrehozása képernyőn, az Összetevők területen válassza az Összetevők hozzáadása vagy eltávolítása lehetőséget.
  4. Az Összetevők hozzáadása képernyőn keressen rá a winrm kifejezésre, majd válassza a WinRM konfigurálása elem melletti nyilat.
  5. Az Összetevő hozzáadása panelen adjon meg egy teljes tartománynevet (FQDN) a virtuális géphez, például contosolab00000000000000.westus3.cloudapp.azure.com: . Válassza az OK, majd újra az OK elemet.
  6. Válassza a Speciális beállítások lapot, majd az IP-cím beállításnál válassza a Nyilvános lehetőséget.

    Megjegyzés

    Ha megosztott IP-címmel használja a WinRM-összetevőt, hozzá kell adnia egy hálózati címfordítási (NAT) szabályt egy külső port WinRM-porthoz való leképezéséhez. Nincs szüksége a NAT-szabályra, ha nyilvános IP-címmel hozza létre a virtuális gépet. Ehhez az útmutatóhoz hozza létre a virtuális gépet egy nyilvános IP-címmel.

  7. Válassza az ARM-sablon megtekintése lehetőséget.
  8. Másolja ki a sablonkódot, és mentse createVMTemplate.json fájlként a helyi forrásvezérlő ágban.
  9. Ellenőrizze a sablont a projekt forrásvezérlő rendszerében.

További információkért és részletekért lásd: Resource Manager sablon használata.

Szkript létrehozása a virtuális gép tulajdonságainak lekéréséhez

Ezután hozzon létre egy szkriptet, amely összegyűjti azokat az értékeket, amelyeket a feladatlépések, például az Azure File Copy és a PowerShell a célgépeken az alkalmazások virtuális gépeken való üzembe helyezéséhez használnak. Ezeket a feladatokat általában arra használhatja, hogy saját alkalmazásokat helyezzen üzembe az Azure-beli virtuális gépeken. A feladatokhoz olyan értékekre van szükség, mint a virtuális gép erőforráscsoportjának neve, IP-címe és teljes tartományneve.

Megjegyzés

Javasoljuk, hogy az Azure Az PowerShell-modullal kommunikáljon az Azure-ral. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Mentse a következő szkriptetGetLabVMParams.ps1 néven, és ellenőrizze a projekt forrásvezérlő rendszerében.

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"

Kiadási folyamat létrehozása az Azure Pipelinesban

Ezután hozza létre a kiadási folyamatot az Azure Pipelinesban. A folyamattevékenységek a virtuális géphez az ARM-sablon létrehozásakor hozzárendelt értékeket használják.

  1. Az Azure DevOps Services-projekt oldalán válassza a folyamatok>kiadásait a bal oldali navigációs sávon.
  2. Válassza az Új folyamat lehetőséget.
  3. A Sablon kiválasztása panelen válassza az Üres feladat lehetőséget.
  4. Zárja be a Szakasz panelt.
  5. Az Új kiadási folyamat lapon válassza a Változók lapot.
  6. Válassza a Hozzáadás lehetőséget, és adja meg a következő Név és Érték párokat, majd válassza a Hozzáadás lehetőséget mindegyik hozzáadása után.
    • vmName: Az ARM-sablonban hozzárendelt virtuálisgép-név.
    • userName: A virtuális gép eléréséhez használt felhasználónév.
    • jelszó: A felhasználónév jelszava. A jelszó elrejtéséhez és védelméhez válassza a zárolás ikont.

Összetevő hozzáadása

  1. Az új kiadási folyamat oldalán, a Folyamat lapon válassza az Összetevő hozzáadása lehetőséget.
  2. Az Összetevő hozzáadása panelen válassza az Azure-adattár lehetőséget.
  3. A Projekt listában válassza ki a DevOps-projektet.
  4. A Forrás (adattár) listában válassza ki a forrásadattárat.
  5. Az Alapértelmezett ág listában válassza ki a kiveendő ágat.
  6. Válassza a Hozzáadás lehetőséget.

DevTest Labs virtuális gép létrehozása

A következő lépés egy aranylemezképes virtuális gépet hoz létre, amelyet a jövőbeli üzembe helyezésekhez használhat. Ez a lépés a Azure DevTest Labs Virtuális gép létrehozása feladatot használja.

  1. Az új kiadási folyamat oldalán, a Folyamat lapon válassza ki a hivatkozásra mutató szöveget az 1. fázisban.

  2. A bal oldali panelen válassza az Ügynökfeladat melletti pluszjelet+.

  3. A jobb oldali panel Tevékenységek hozzáadása területén keresse meg és válassza Azure DevTest Labs Virtuális gép létrehozása, majd a Hozzáadás lehetőséget.

  4. A bal oldali panelen válassza a Virtuális gép létrehozása Azure DevTest Labs feladatot.

  5. A jobb oldali panelen töltse ki az űrlapot az alábbi módon:

    • Azure RM-előfizetés: Válassza ki a szolgáltatáskapcsolatot vagy az előfizetést a legördülő listából, majd válassza az Engedélyezés lehetőséget, ha szükséges.

      Megjegyzés

      Az Azure-előfizetéshez korlátozottabb engedélykapcsolat létrehozásával kapcsolatos információkért lásd: Azure Resource Manager szolgáltatásvégpont.

    • Tesztkörnyezet: Válassza ki a DevTest Labs-tesztkörnyezet nevét.

    • Virtuális gép neve: a virtuális gép nevéhez megadott változó: $vmName.

    • Sablon: Keresse meg és válassza ki a projektadattárba bejelentkezett sablonfájlt.

    • Paraméterfájl: Ha ellenőrizte a paraméterfájlt az adattárban, keresse meg és jelölje ki.

    • Paraméter felülbírálásai: Írja be a következőt -newVMName '$(vmName)' -userName '$(userName)' -password '$(password)': .

    • A Kimeneti változók legördülő menüben a Referencia neve területen adja meg a létrehozott tesztkörnyezet virtuálisgép-azonosítójának változóját. Az egyszerűség kedvéért írjuk be a virtuális gépet a Referencia név mezőbe. A labVmId ennek a változónak az attribútuma lesz, és később $vm.labVmId néven fogjuk emlegetni. Ha bármilyen más nevet használ, ne felejtse el ennek megfelelően használni a következő feladatokban.

      A tesztkörnyezet virtuálisgép-azonosítója a következő formában lesz: /subscriptions/{subscription Id}/resourceGroups/{resource group Name}/providers/Microsoft.DevTestLab/labs/{lab name}/virtualMachines/{vmName}.

Gyűjtse össze a DevTest Labs virtuális gép adatait

Ezután a folyamat futtatja a létrehozott szkriptet a DevTest Labs virtuális gép részleteinek gyűjtéséhez.

  1. A kiadási folyamat Feladatok lapján válassza az Ügynökfeladat melletti pluszjelet+.
  2. A jobb oldali panel Tevékenységek hozzáadása területén keresse meg és válassza a Azure PowerShell lehetőséget, majd válassza a Hozzáadás lehetőséget.
  3. A bal oldali panelen válassza ki a Azure PowerShell szkriptet: FilePath feladat.
  4. A jobb oldali panelen töltse ki az űrlapot az alábbi módon:
    • Azure-előfizetés: Válassza ki a szolgáltatáskapcsolatot vagy -előfizetést.
    • Szkript típusa: Válassza a Szkriptfájl elérési útja lehetőséget.
    • Szkript elérési útja: Keresse meg és válassza ki a forráskódtárba bejelentkezett PowerShell-szkriptet. A beépített tulajdonságok használatával egyszerűsítheti az elérési utat, például: $(System.DefaultWorkingDirectory/Scripts/GetLabVMParams.ps1.
    • Szkriptargumentumok: Adja meg a -labVmId $(vm.labVmId) értéket.

A szkript összegyűjti a szükséges értékeket, és a kiadási folyamat környezeti változóiban tárolja őket, így a későbbi lépésekben hivatkozhat rájuk.

Virtuálisgép-rendszerkép létrehozása a DevTest Labs virtuális gépről

A következő feladat létrehoz egy képet az újonnan üzembe helyezett virtuális gépről a laborban. A rendszerkép használatával igény szerint létrehozhat másolatot a virtuális gépről a fejlesztői feladatok elvégzéséhez vagy tesztek futtatásához.

  1. A kiadási folyamat Feladatok lapján válassza az Ügynökfeladat melletti pluszjelet+.
  2. A Tevékenységek hozzáadása területen válassza Azure DevTest Labs Egyéni lemezkép létrehozása, majd a Hozzáadás lehetőséget.
  3. A bal oldali panelen válassza ki az egyéni rendszerkép létrehozása Azure DevTest Labs feladatot.
  4. A jobb oldali panelen töltse ki az űrlapot az alábbi módon:
    • Azure RM-előfizetés: Válassza ki a szolgáltatáskapcsolatot vagy az előfizetést.
    • Tesztkörnyezet: Válassza ki a tesztkörnyezetet.
    • Egyéni rendszerkép neve: Adja meg az egyéni rendszerkép nevét.
    • Leírás: Adjon meg egy opcionális leírást, hogy megkönnyítse a megfelelő kép kiválasztását.
    • Forráskörnyezeti virtuális gép: A forrás labVmId azonosítója. Adja meg az értéket $(vm.labVmId) néven.
    • Kimeneti változók: Szükség esetén módosíthatja az alapértelmezett egyéni rendszerkép-azonosító változó nevét.

Az alkalmazás üzembe helyezése a DevTest Labs virtuális gépen (nem kötelező)

Az alkalmazás üzembe helyezéséhez feladatokat adhat hozzá az új DevTest Labs virtuális géphez. Ha csak Egy DevTest Labs virtuális gép és egy egyéni rendszerkép létrehozásával szeretne kísérletezni, alkalmazás üzembe helyezése nélkül, kihagyhatja ezt a lépést.

Az alkalmazások üzembe helyezéséhez általában az Azure File Copy és a PowerShell szükséges a célgépeken. A feladatparaméterekhez szükséges virtuálisgép-információkat a kiadási folyamaton belül három, labVmRgName, labVMIpAddress és labVMFqdn nevű konfigurációs változóban találja.

A virtuális gép törlése

Az utolsó feladat a tesztkörnyezetben üzembe helyezett virtuális gép törlése. A fejlesztői feladatok elvégzése vagy a szükséges tesztek futtatása után általában törli a virtuális gépet az üzembe helyezett virtuális gépen.

  1. A kiadási folyamat Feladatok lapján válassza az Ügynökfeladat melletti pluszjelet+.
  2. A Tevékenységek hozzáadása területen válassza a Azure DevTest Labs Virtuális gép törlése, majd a Hozzáadás lehetőséget.
  3. Konfigurálja a feladatot az alábbiak szerint:
    • Azure RM-előfizetés: Válassza ki a szolgáltatáskapcsolatot vagy az előfizetést.
    • Tesztkörnyezet: Válassza ki a tesztkörnyezetet.
    • Virtuális gép: Adja meg az értéket $(vm.labVmId) formátumban.
    • Kimeneti változók: Ha módosította a labVmId változó alapértelmezett nevét a Referencianév csoportban, itt adhatja meg. Az alapértelmezett érték a $(labVmId).

A kiadási folyamat mentése

Az új kiadási folyamat mentése:

  1. Válassza az Új kiadási folyamat lehetőséget a kiadási folyamat lap tetején, és adjon meg egy új nevet a folyamatnak.
  2. Válassza a jobb felső sarokban található Mentés lehetőséget.

Kiadás létrehozása és futtatása

Kiadás létrehozása és futtatása az új folyamat használatával:

  1. A kiadási folyamat oldalán válassza a kiadás létrehozása lehetőséget a jobb felső sarokban.
  2. Az Összetevők területen válassza ki a legújabb buildet, majd válassza a Létrehozás lehetőséget.

Az egyes kiadási fázisokban frissítheti a tesztkörnyezet nézetét a Azure Portal a virtuális gépek létrehozásának, a rendszerképek létrehozásának és a virtuális gépek törlésének megtekintéséhez.

Az egyéni rendszerkép használatával bármikor létrehozhat virtuális gépeket.

Következő lépések