Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
DevOps is een methodologie voor softwareontwikkeling die softwareontwikkeling (Dev) integreert met systeembewerkingen (Ops). Het systeem helpt u bij het leveren van nieuwe softwarefuncties, updates en oplossingen die overeenkomen met bedrijfsdoelen.
DevOps-methodologie omvat ook:
- Nieuwe functies ontwerpen op basis van doelen, gebruikspatronen en feedback van klanten.
 - Het systeem repareren, herstellen en verharden wanneer er problemen optreden.
 
Eén onderdeel van de DevOps-methodologie is de pijplijn voor continue integratie (CI) en continue levering (CD). Een CI/CD-pijplijn verplaatst informatie, code en bronnen vanuit een broncontrole-commit, door een reeks stappen, om het systeem op te leveren. De stappen omvatten build, test en release.
U kunt Azure DevTest Labs gebruiken in CI/CD-pijplijnen. In dit artikel wordt beschreven hoe u DevTest Labs gebruikt in CI/CD-build-, test- en release-pijplijnen in een bedrijfsomgeving.
Voordelen van het gebruik van DevTest Labs in DevOps-werkstromen
Een lab mag alleen worden gebruikt door een team dat aan een functiegebied werkt. Deze focus maakt snellere wijzigingen mogelijk, maar beperkt eventuele negatieve effecten tot een kleinere groep. Wijzigingen of problemen treden op in de testomgeving, zonder dat dit van invloed is op iets anders.
Met deze focus kunt u ook gebiedsspecifieke resources delen, zoals hulpprogramma's, scripts en ARM-sjablonen (Azure Resource Manager). Ontwikkelaars kunnen gedeelde resources gebruiken om virtuele machines (VM's) te maken met alle code, hulpprogramma's en configuratie die ze nodig hebben. ARM-sjablonen maken lab-VM's en labomgevingen met de juiste Azure-resources. De sjablonen maken resources dynamisch aan, of door basisafbeeldingen te maken met aanpassingen.
Denk bijvoorbeeld aan een scenario waarin het product een zelfstandig systeem is dat op de computer van een klant wordt geïnstalleerd. DevTest Labs kan lab-VM's maken waarop klantsoftware, artefacten en configuraties zijn geïnstalleerd om snel codetests in de interne lus in te schakelen.
Hier volgen enkele voordelen van het gebruik van labs in DevOps-werkstromen:
Het gebruik van een lab als onderdeel koppelt een specifiek ecosysteem aan beperkte mensen. Meestal heeft een team of groep die in een gemeenschappelijk gebied werkt of een specifieke functie een lab toegewezen. Usually, a team or group working in a common area or a specific feature has a lab assigned to them.
Infrastructuurreplicatie in de cloud. Een ontwikkelaar kan snel een ontwikkelecosysteem instellen dat een virtuele machine voor ontwikkelaars bevat met broncode en hulpprogramma's. Om snellere interne lusontwikkeling mogelijk te maken, kan een ontwikkelaar ook een omgeving maken die bijna identiek is aan de productieconfiguratie.
Als u asynchrone tests wilt inschakelen, kan een lab in de CI/CD-pijplijn verschillende preproductieomgevingen of -machines tegelijk uitvoeren. U kunt verschillende ondersteuningsinfrastructuren implementeren en beheren en agents bouwen in een lab. You can deploy and manage different support infrastructures and build agents in a lab.
Gebruik labs in CI/CD-pijplijnen
De CI/CD-pijplijn is een essentieel DevOps-onderdeel. De pijplijn integreert de code van de pull-aanvraag van een ontwikkelaar met bestaande code en implementeert de code in het productie-ecosysteem. Voor DevTest Labs-integratie hoeven niet alle resources zich in een lab te hebben. U kunt bijvoorbeeld een Jenkins-host buiten het lab instellen voor een permanentere resource. Hier volgen enkele specifieke voorbeelden van het integreren van labs in de CI/CD-pijplijn.
Build
Met de build-pijplijn maakt u een pakket met onderdelen om samen te testen en om vrij te geven. Dynamisch bouwen van infrastructuur maakt meer controle mogelijk. Labs kunnen deel uitmaken van de build-pijplijn als locaties voor build-agents en andere ondersteunende middelen. DevTest Labs kan de toegang tot het lab beperken. Dit verhoogt de beveiliging voor buildagents en vermindert de kans op onbedoelde beschadiging.
Omdat u meerdere omgevingen in een lab kunt hebben, kan elke build asynchroon worden uitgevoerd. De build-id maakt deel uit van de omgevingsgegevens waarmee de resources in een specifieke build uniek worden geïdentificeerd.
Test
Met een CI/CD-pijplijn kunt u het maken van DevTest Labs-resources, zoals VM's en omgevingen, automatiseren voor geautomatiseerde en handmatige tests. De pijplijn maakt gebruik van build-informatieartefacten of formules voor het maken van VM's met verschillende aangepaste testconfiguraties.
Release
Het releaseproces kan DevTest Labs gebruiken voor verificatie voordat de code wordt geïmplementeerd. Het proces is vergelijkbaar met het testen. Productiebronnen mogen niet worden geïmplementeerd in DevTest Labs.
Customization
Azure Pipelines, een onderdeel van Azure DevOps Services, biedt bestaande taken voor het bewerken van VM's en omgevingen in specifieke labs. Azure Pipelines is een manier om de CI/CD-pijplijn te beheren. U kunt een lab integreren in elk systeem dat ondersteuning biedt voor het aanroepen van REST API's, het uitvoeren van PowerShell-scripts of het gebruik van Azure CLI.
Sommige CI/CD-pijplijnbeheerders hebben bestaande opensource-invoegtoepassingen waarmee Azure- en DevTest Labs-resources kunnen worden beheerd. Mogelijk moet u aangepaste scripts gebruiken om aan de behoeften van de pijplijn te voldoen. Wanneer u een taak uitvoert, gebruikt u een service-principal met de juiste rol, meestal Bijdrager, voor toegang tot het lab.