Udostępnij za pośrednictwem


ContainerStructureTest@0 — zadanie Test struktury kontenera w wersji 0

Używa kontenera-structure-test (https://github.com/GoogleContainerTools/container-structure-test) do weryfikowania struktury obrazu na podstawie czterech kategorii testów — testów poleceń, testów istnienia plików, testów zawartości plików i testów metadanych.

Składnia

# 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.

Dane wejściowe

dockerRegistryServiceConnection - połączenia usługi rejestru platformy Docker
string. To jest wymagane.

Określ połączenie usługi rejestru platformy Docker. Wymagane w przypadku poleceń, które muszą być uwierzytelniane w rejestrze.


repozytorium kontenerów repository -
string. To jest wymagane.

Nazwa repozytorium.


tagów
string. Wartość domyślna: $(Build.BuildId).

Tag jest używany w ściąganiu obrazu z połączenia usługi rejestru platformy Docker.


configFile - ścieżka pliku konfiguracji
string. To jest wymagane.

Ścieżka pliku konfiguracji zawierająca testy struktury kontenera w formatach plików yaml lub .json.


testRunTitle - tytuł przebiegu testu
string.

Określ nazwę przebiegu testu.


zadanie failTaskOnFailedTests - niepowodzeniem, jeśli występują błędy testów
boolean. Wartość domyślna: false.

Zadanie kończy się niepowodzeniem, jeśli występują błędy testu. Zaznacz tę opcję, aby zakończyć zadanie niepowodzeniem, jeśli wykryto błędy testów.


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

Żaden.

Uwagi

To zadanie ułatwia uruchamianie testów struktury kontenera i publikowanie wyników testów w usłudze Azure Pipelines oraz zapewnia kompleksowe środowisko raportowania i analizy testów.

Uwaga

Jest to funkcja wczesnej wersji zapoznawczej. Więcej nadchodzących funkcji zostanie wdrożonych w nadchodzących sprintach.

Testy struktury kontenerów zapewniają zaawansowaną platformę do weryfikowania struktury obrazu kontenera. Te testy mogą służyć do sprawdzania danych wyjściowych poleceń na obrazie, a także weryfikowania metadanych i zawartości systemu plików. Testy można uruchamiać za pośrednictwem autonomicznego pliku binarnego lub obrazu platformy Docker.

Testy w tej strukturze są określane za pomocą pliku konfiguracji YAML lub JSON. W jednym przebiegu testowym można określić wiele plików konfiguracji. Plik konfiguracji zostanie załadowany przez moduł uruchamiający testy, który wykona testy w kolejności. W tym pliku konfiguracji można napisać cztery typy testów:

  • Testy poleceń (testowanie danych wyjściowych/błąd określonego polecenia)
  • Testy istnienia plików (upewniając się, że plik jest lub nie znajduje się w systemie plików obrazu)
  • Testy zawartości plików (upewniając się, że pliki w systemie plików obrazu zawierają lub nie zawierają określonej zawartości)
  • Test metadanych, pojedyncza (upewniając się, że niektóre metadane kontenera są poprawne)

Kompilowanie, testowanie i publikowanie testu

Zadanie testowe struktury kontenera można dodać w potoku klasycznym, a także w potokach opartych na ujednoliconym potoku (wieloetapowym) & yaML.

W nowym ujednoliconym potoku opartym na języku YAML możesz wyszukać zadanie w oknie.

test kontenera w ujednoliconym potoku

Po dodaniu zadania należy ustawić ścieżkę pliku konfiguracji, połączenie usługi rejestrów platformy Docker, repozytorium kontenerów i tag, jeśli jest to wymagane. Dane wejściowe zadania w potoku opartym na yaml są tworzone.

Container Test in YAML based Pipeline (Testowanie kontenera w potoku opartym na języku YAML)

YAML file

pliku YAML

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

Wyświetlanie raportu testowego

Po wykonaniu zadania możesz przejść bezpośrednio do karty testowej, aby wyświetlić pełny raport. Opublikowane wyniki testów są wyświetlane na karcie testy w podsumowaniu potoku i ułatwiają mierzenie jakości potoku, przeglądanie możliwości śledzenia, rozwiązywanie problemów z awariami i własność awarii dysku.

strona raportowania testów

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta 2.144.0 lub nowsza
Kategoria zadań Testowanie
Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta 2.0.0 lub nowsza
Kategoria zadań Testowanie