ContainerStructureTest@0 - Tarefa Teste de Estrutura de Contêiner v0
Usa container-structure-test (https://github.com/GoogleContainerTools/container-structure-test) para validar a estrutura de uma imagem com base em quatro categorias de testes - testes de comando, testes de existência de arquivos, testes de conteúdo de arquivos e testes de metadados.
Sintaxe
# 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.
Insumos
dockerRegistryServiceConnection
-
de conexão do serviço de registro do Docker
string
. Obrigatório.
Especifique uma conexão de serviço de registro do Docker. Necessário para comandos que precisam ser autenticados com um registro.
repository
-
Repositório de contêiner
string
. Obrigatório.
O nome do repositório.
tag
-
Tag
string
. Valor padrão: $(Build.BuildId)
.
A tag é usada para extrair a imagem da conexão do serviço de registro docker.
configFile
-
Caminho do arquivo de configuração
string
. Obrigatório.
O caminho do arquivo de configuração que contém testes de estrutura de contêiner, nos formatos de arquivo .yaml ou .json.
testRunTitle
-
Título da execução de teste
string
.
Especifique um nome para a execução de teste.
failTaskOnFailedTests
-
Tarefa de reprovação se houver falhas de teste
boolean
. Valor padrão: false
.
Falha na tarefa se houver alguma falha de teste. Marque esta opção para falhar na tarefa se forem detetadas falhas de teste.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhum.
Observações
Esta tarefa ajuda você a executar testes de estrutura de contêiner e publicar resultados de teste no Azure Pipelines e fornece uma experiência abrangente de relatório de teste e análise.
Observação
Este é um recurso de visualização antecipada. Mais recursos futuros serão lançados nos próximos sprints.
Os testes de estrutura de contêiner fornecem uma estrutura poderosa para validar a estrutura de uma imagem de contêiner. Esses testes podem ser usados para verificar a saída de comandos em uma imagem, bem como verificar metadados e conteúdo do sistema de arquivos. Os testes podem ser executados por meio de um binário autônomo ou por meio de uma imagem do Docker.
Os testes dentro dessa estrutura são especificados por meio de um arquivo de configuração YAML ou JSON. Vários arquivos de configuração podem ser especificados em uma única execução de teste. O arquivo de configuração será carregado pelo executor de teste, que executará os testes em ordem. Dentro deste arquivo de configuração, quatro tipos de testes podem ser escritos:
- Testes de comando (teste de saída/erro de um comando específico emitido)
- Testes de existência de arquivo (certificando-se de que um arquivo está, ou não, presente no sistema de arquivos da imagem)
- Testes de conteúdo de arquivo (certificando-se de que os arquivos no sistema de arquivos da imagem contêm, ou não contêm, conteúdo específico)
- Teste de metadados, singular (certificando-se de que determinados metadados de contêiner estão corretos)
Compilar, testar e publicar teste
A tarefa de teste de estrutura de contêiner pode ser adicionada no pipeline clássico, bem como em pipeline unificado (vários estágios) & pipelines baseados em YAML.
No novo pipeline unificado baseado em YAML, você pode procurar tarefas na janela.
Teste de contêiner
Depois que a tarefa for adicionada, você precisará definir o caminho do arquivo de configuração, a conexão do serviço de registro do docker, o repositório de contêiner e a tag, se necessário. A entrada de tarefa no pipeline baseado em yaml é criada.
Teste de contêiner de pipeline baseado em YAML
YAML file
steps:
- task: ContainerStructureTest@0
displayName: 'Container Structure Test '
inputs:
dockerRegistryServiceConnection: 'Container_dockerHub'
repository: adma/hellodocker
tag: v1
configFile: /home/user/cstfiles/fileexisttest.yaml
Ver relatório de teste
Depois que a tarefa for executada, você pode ir diretamente para a guia de teste para visualizar o relatório completo. Os resultados do teste publicados são exibidos na guia Testes no resumo do pipeline e ajudam a medir a qualidade do pipeline, revisar a rastreabilidade, solucionar problemas de falhas e direcionar a propriedade de falhas.
Requerimentos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.144.0 ou superior |
Categoria de tarefa | Teste |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.0.0 ou superior |
Categoria de tarefa | Teste |