ContainerStructureTest@0 - Test van containerstructuur v0-taak
Maakt gebruik van container-structure-test (https://github.com/GoogleContainerTools/container-structure-test) om de structuur van een installatiekopie te valideren op basis van vier testcategorieën: opdrachttests, bestandsbestaantests, bestandsinhoudstests en metagegevenstests.
Syntax
# Container Structure Test v0
# Uses container-structure-test (https://github.com/GoogleContainerTools/container-structure-test) to validate the structure of an image based on four categories of tests - command tests, file existence tests, file content tests and metadata tests.
- task: ContainerStructureTest@0
inputs:
# Container Repository
dockerRegistryServiceConnection: # string. Required. Docker registry service connection.
repository: # string. Required. Container repository.
#tag: '$(Build.BuildId)' # string. Tag. Default: $(Build.BuildId).
configFile: # string. Required. Config file path.
#testRunTitle: # string. Test run title.
#failTaskOnFailedTests: false # boolean. Fail task if there are test failures. Default: false.
Invoerwaarden
dockerRegistryServiceConnection
- Verbinding met docker-registerservice
string
. Vereist.
Geef een Docker-registerserviceverbinding op. Vereist voor opdrachten die moeten worden geverifieerd met een register.
repository
- Containeropslagplaats
string
. Vereist.
De naam van de opslagplaats.
tag
- Tag
string
. Standaardwaarde: $(Build.BuildId)
.
De tag wordt gebruikt bij het ophalen van de installatiekopie uit de docker-registerserviceverbinding.
configFile
- Pad naar configuratiebestand
string
. Vereist.
Het pad naar het configuratiebestand dat containerstructuurtests bevat, in de bestandsindeling .yaml of .json.
testRunTitle
- Titel van testuitvoering
string
.
Geef een naam op voor de testuitvoering.
failTaskOnFailedTests
- Mislukte taak als er testfouten zijn
boolean
. Standaardwaarde: false
.
Mislukt de taak als er testfouten zijn. Schakel deze optie in om de taak te mislukken als er testfouten worden gedetecteerd.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties voor besturingselementen en algemene taakeigenschappen voor meer informatie.
Uitvoervariabelen
Geen.
Opmerkingen
Deze taak helpt u bij het uitvoeren van containerstructuurtests en het publiceren van testresultaten in Azure Pipelines en biedt een uitgebreide ervaring voor testrapportage en analyse.
Notitie
Dit is een vroege preview-functie. In de komende sprints worden meer functies uitgerold.
De containerstructuurtests bieden een krachtig framework voor het valideren van de structuur van een containerinstallatiekopieën. Deze tests kunnen worden gebruikt om de uitvoer van opdrachten in een afbeelding te controleren en de metagegevens en inhoud van het bestandssysteem te verifiëren. Tests kunnen worden uitgevoerd via een zelfstandig binair bestand of via een Docker-installatiekopieën.
Tests binnen dit framework worden opgegeven via een YAML- of JSON-configuratiebestand. In één testuitvoering kunnen meerdere configuratiebestanden worden opgegeven. Het configuratiebestand wordt geladen door de testrunner, die de tests in volgorde uitvoert. In dit configuratiebestand kunnen vier soorten tests worden geschreven:
- Opdrachttests (testuitvoer/fout van een specifieke opdracht die is uitgegeven)
- Bestandstest (controleren of een bestand wel of niet aanwezig is in het bestandssysteem van de installatiekopie)
- Bestandsinhoudstests (controleren of bestanden in het bestandssysteem van de afbeelding al dan niet specifieke inhoud bevatten)
- Metagegevenstest, enkelvoud (controleren of bepaalde metagegevens van de container juist zijn)
Test bouwen, testen en publiceren
De containerstructuurtesttaak kan worden toegevoegd in de klassieke pijplijn en in geïntegreerde pijplijnen (multifasen) & YAML-pijplijnen.
In de nieuwe op YAML gebaseerde geïntegreerde pijplijn kunt u zoeken naar taken in het venster.
Zodra de taak is toegevoegd, moet u indien nodig het pad naar het configuratiebestand, de verbinding met de Docker-registory-service, de containeropslagplaats en de tag instellen. Taakinvoer in de yaml-pijplijn wordt gemaakt.
YAML-bestand
steps:
- task: ContainerStructureTest@0
displayName: 'Container Structure Test '
inputs:
dockerRegistryServiceConnection: 'Container_dockerHub'
repository: adma/hellodocker
tag: v1
configFile: /home/user/cstfiles/fileexisttest.yaml
Testrapport weergeven
Zodra de taak is uitgevoerd, kunt u rechtstreeks naar het tabblad Testen gaan om het volledige rapport weer te geven. De gepubliceerde testresultaten worden weergegeven op het tabblad Tests in het pijplijnoverzicht en helpen u bij het meten van de pijplijnkwaliteit, het controleren van de traceerbaarheid, het oplossen van fouten en het eigendom van rijfouten.
Vereisten
Vereiste | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
Eisen | Geen |
Functies | Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak. |
Opdrachtbeperkingen | Alle |
Instelbare variabelen | Alle |
Agentversie | 2.144.0 of hoger |
Taakcategorie | Testen |
Vereiste | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
Eisen | Geen |
Functies | Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak. |
Opdrachtbeperkingen | Alle |
Instelbare variabelen | Alle |
Agentversie | 2.0.0 of hoger |
Taakcategorie | Testen |