ContainerStructureTest@0: tarea Prueba de estructura de contenedor v0
Usa container-structure-test (https://github.com/GoogleContainerTools/container-structure-test) para validar la estructura de una imagen basada en cuatro categorías de pruebas: pruebas de comandos, pruebas de existencia de archivos, pruebas de contenido de archivos y pruebas de metadatos.
Sintaxis
# 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.
Entradas
dockerRegistryServiceConnection
-
conexión del servicio del registro de Docker
string
. Obligatorio.
Especifique una conexión de servicio del registro de Docker. Necesario para los comandos que necesitan autenticarse con un registro.
del repositorio de contenedor de repository
-
string
. Obligatorio.
Nombre del repositorio.
tag
-
etiqueta
string
. Valor predeterminado: $(Build.BuildId)
.
La etiqueta se usa para extraer la imagen de la conexión del servicio del registro de Docker.
configFile
-
ruta de acceso del archivo de configuración
string
. Obligatorio.
Ruta de acceso del archivo de configuración que contiene pruebas de estructura de contenedor, ya sea en formatos de archivo .yaml o .json.
testRunTitle
-
título de ejecución de pruebas
string
.
Especifique un nombre para la ejecución de pruebas.
failTaskOnFailedTests
-
tarea Error si hay errores de prueba
boolean
. Valor predeterminado: false
.
Produce un error en la tarea si hay errores de prueba. Active esta opción para producir un error en la tarea si se detectan errores de prueba.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
Esta tarea le ayuda a ejecutar pruebas de estructura de contenedor y a publicar resultados de pruebas en Azure Pipelines y proporciona una experiencia completa de informes y análisis de pruebas.
Nota:
Se trata de una característica de versión preliminar temprana. Se implementarán más características próximas en los próximos sprints.
Las pruebas de estructura de contenedor proporcionan un marco eficaz para validar la estructura de una imagen de contenedor. Estas pruebas se pueden usar para comprobar la salida de comandos en una imagen, así como para comprobar los metadatos y el contenido del sistema de archivos. Las pruebas se pueden ejecutar a través de un binario independiente o a través de una imagen de Docker.
Las pruebas de este marco se especifican a través de un archivo de configuración YAML o JSON. Se pueden especificar varios archivos de configuración en una sola ejecución de prueba. El ejecutor de pruebas cargará el archivo de configuración, que ejecutará las pruebas en orden. Dentro de este archivo de configuración, se pueden escribir cuatro tipos de pruebas:
- Pruebas de comandos (pruebas de salida o error de un comando específico emitido)
- Pruebas de existencia de archivos (asegurándose de que un archivo es o no está presente en el sistema de archivos de la imagen)
- Pruebas de contenido de archivos (asegurarse de que los archivos del sistema de archivos de la imagen contienen o no contienen contenido específico)
- Prueba de metadatos, singular (asegurándose de que determinados metadatos de contenedor son correctos)
Compilación, prueba y publicación de pruebas
La tarea de prueba de estructura de contenedor se puede agregar en la canalización clásica, así como en canalizaciones unificadas (varias fases) & canalizaciones basadas en YAML.
En la nueva canalización unificada basada en YAML, puede buscar la tarea en la ventana.
prueba de contenedor de de canalización unificada
Una vez agregada la tarea, debe establecer la ruta de acceso del archivo de configuración, la conexión del servicio docker registory, el repositorio de contenedor y la etiqueta, si es necesario. Se crea la entrada de tarea en la canalización basada en yaml.
de canalización basada en YAML
Archivo YAML
de archivos YAML
steps:
- task: ContainerStructureTest@0
displayName: 'Container Structure Test '
inputs:
dockerRegistryServiceConnection: 'Container_dockerHub'
repository: adma/hellodocker
tag: v1
configFile: /home/user/cstfiles/fileexisttest.yaml
Visualización del informe de prueba
Una vez ejecutada la tarea, puede ir directamente a la pestaña probar para ver el informe completo. Los resultados de las pruebas publicadas se muestran en la pestaña Pruebas de en el resumen de la canalización y le ayudan a medir la calidad de la canalización, revisar la rastreabilidad, solucionar errores y controlar la propiedad del error.
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | 2.144.0 o superior |
Categoría de tarea | Prueba |
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | 2.0.0 o superior |
Categoría de tarea | Prueba |