ContainerStructureTest@0 — zadanie Test struktury kontenera w wersji 0
Używa kontenera-structure-test (https://github.com/GoogleContainerTools/container-structure-test) do weryfikacji 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łączenie usługi rejestru platformy Docker
string
. Wymagane.
Określ połączenie usługi rejestru platformy Docker. Wymagane w przypadku poleceń, które muszą być uwierzytelniane w rejestrze.
repository
- Repozytorium kontenerów
string
. Wymagane.
Nazwa repozytorium.
tag
- Tag
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
. Wymagane.
Ścieżka pliku konfiguracji zawierająca testy struktury kontenerów w formatach plików yaml lub json.
testRunTitle
- Tytuł przebiegu testu
string
.
Określ nazwę przebiegu testu.
failTaskOnFailedTests
- Zadanie kończy się niepowodzeniem, jeśli występują błędy testów
boolean
. Wartość domyślna: false
.
Zadanie kończy się niepowodzeniem, jeśli występują jakiekolwiek błędy testów. Sprawdź tę opcję, aby nie wykonać zadania, jeśli wykryto błędy testów.
Opcje sterowania zadania
Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.
Zmienne wyjściowe
Brak.
Uwagi
To zadanie ułatwia uruchamianie testów struktury kontenerów i publikowanie wyników testów w usłudze Azure Pipelines oraz zapewnia kompleksowe środowisko raportowania testów i analizy.
Uwaga
Jest to funkcja wczesnej wersji zapoznawczej. Kolejne nadchodzące funkcje zostaną wdrożone 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 testu 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ów określonego wydanego polecenia)
- Testy istnienia plików (upewniając się, że plik jest lub nie znajduje się w systemie plików obrazu)
- Testy zawartości pliku (upewniając się, że pliki w systemie plików obrazu zawierają lub nie zawierają określonej zawartości)
- Test metadanych, pojedynczy (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) & opartych na języku YAML.
W nowym ujednoliconym potoku opartym na języku YAML możesz wyszukać zadanie w oknie.
Po dodaniu zadania należy ustawić ścieżkę pliku konfiguracji, połączenie usługi rejestru platformy Docker, repozytorium kontenerów i tag, jeśli jest to wymagane. Dane wejściowe zadania w potoku opartym na yaml są tworzone.
Plik 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.
Wymagania
Wymaganie | Opis |
---|---|
Typy potoków | YAML, kompilacja klasyczna, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Brak |
Możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
Ograniczenia poleceń | Dowolne |
Zmienne w formie tabeli settable | Dowolne |
Wersja agenta | 2.144.0 lub nowsza |
Kategoria zadania | Testowanie |
Wymaganie | Opis |
---|---|
Typy potoków | YAML, kompilacja klasyczna, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Brak |
Możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
Ograniczenia poleceń | Dowolne |
Zmienne w formie tabeli settable | Dowolne |
Wersja agenta | 2.0.0 lub nowsze |
Kategoria zadania | Testowanie |