Sdílet prostřednictvím


ContainerStructureTest@0 – úloha Test struktury kontejneru v0

Používá kontejner-structure-test (https://github.com/GoogleContainerTools/container-structure-test) k ověření struktury obrázku na základě čtyř kategorií testů – testy příkazů, testy existence souborů, testy obsahu souborů a testy metadat.

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.

Vstupy

dockerRegistryServiceConnection - Připojení služby registru Dockeru
string. Povinná hodnota.

Zadejte připojení služby registru Dockeru. Vyžaduje se pro příkazy, které potřebují ověření v registru.


repository - Úložiště kontejnerů
string. Povinná hodnota.

Název úložiště.


tag - Značku
string. Výchozí hodnota: $(Build.BuildId).

Značka se používá při načítání image z připojení ke službě registru Dockeru.


configFile - Cesta ke konfiguračnímu souboru
string. Povinná hodnota.

Cesta ke konfiguračnímu souboru, který obsahuje testy struktury kontejneru, a to buď ve formátu .yaml, nebo .json.


testRunTitle - Název testovacího běhu
string.

Zadejte název testovacího běhu.


failTaskOnFailedTests - Selhání úlohy, pokud dojde k selhání testů
boolean. Výchozí hodnota: false.

Pokud dojde k selhání testů, úloha se nezdaří. Tuto možnost zaškrtněte, pokud chcete úlohu selhat, pokud jsou zjištěna selhání testů.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Poznámky

Tato úloha vám pomůže spouštět testy struktury kontejnerů a publikovat výsledky testů do Azure Pipelines a poskytuje komplexní prostředí pro vytváření sestav a analýzy testů.

Poznámka

Toto je předběžná funkce ve verzi Preview. Další chystané funkce budou k dispozici v nadcházejících sprintech.

Testy struktury kontejneru poskytují výkonnou architekturu pro ověření struktury image kontejneru. Tyto testy lze použít ke kontrole výstupu příkazů v obrázku a také k ověření metadat a obsahu systému souborů. Testy je možné spouštět buď prostřednictvím samostatného binárního souboru, nebo prostřednictvím image Dockeru.

Testy v rámci této architektury se zadává prostřednictvím konfiguračního souboru YAML nebo JSON. V jednom testovacím běhu může být zadáno více konfiguračních souborů. Konfigurační soubor načte do nástroje test runner, který provede testy v pořadí. V tomto konfiguračním souboru je možné zapsat čtyři typy testů:

  • Testy příkazů (testování výstupu nebo chyby konkrétního vydaného příkazu)
  • Testy existence souboru (ujistěte se, že soubor je nebo není v systému souborů obrázku)
  • Testy obsahu souborů (ujistěte se, že soubory v systému souborů obrázku obsahují nebo neobsahují konkrétní obsah)
  • Test metadat, v jednotném čísle (ověření správnosti určitých metadat kontejneru)

Sestavení, testování a publikování testu

Testovací úlohu struktury kontejneru je možné přidat do klasického kanálu i do sjednoceného kanálu (vícefázového) & kanály založené na YAML.

V novém jednotném kanálu založeném na YAML můžete vyhledat úlohu v okně .

Test kontejneru ve sjednocené kanálu

Po přidání úlohy musíte v případě potřeby nastavit cestu k konfiguračnímu souboru, připojení ke službě docker registory, úložiště kontejneru a značku. Vytvoří se vstup úlohy v kanálu založeném na yaml.

Test kontejneru v kanálu založeném na YAML

Soubor YAML

Soubor YAML

steps:
- task: ContainerStructureTest@0
  displayName: 'Container Structure Test '
  inputs:
    dockerRegistryServiceConnection: 'Container_dockerHub'
    repository: adma/hellodocker
    tag: v1
    configFile: /home/user/cstfiles/fileexisttest.yaml

Zobrazení sestavy testu

Po provedení úlohy můžete přejít přímo na kartu test a zobrazit celou sestavu. Publikované výsledky testů se zobrazují na kartě Testy v souhrnu kanálu a pomáhají vám měřit kvalitu kanálu, kontrolovat sledovatelnost, řešit chyby a řídit vlastnictví selhání.

Stránka Vytváření sestav testů

Požadavky

Požadavek Popis
Typy kanálů YAML, klasický build, klasická verze
Běží na Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 2.144.0 nebo vyšší
Kategorie úloh Test
Požadavek Popis
Typy kanálů YAML, klasický build, klasická verze
Běží na Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 2.0.0 nebo vyšší
Kategorie úloh Test