Ações de criação e de teste YAML
Veja a seguir a definição YAML das ações de criação e de teste. Há uma referência para duas ações porque as propriedades YAML de cada uma são muito semelhantes.
Essa definição de ação existe como uma seção dentro de um arquivo de definição de fluxo de trabalho mais amplo. Para obter mais informações sobre esse arquivo, consulte Definição do YAML do fluxo de trabalho.
Escolha uma propriedade YAML no código a seguir para ver uma descrição dela.
nota
A maioria das propriedades YAML a seguir tem elementos de interface de usuário correspondentes no editor visual. Para pesquisar um elemento de interface, use Ctrl+F. O elemento será listado com a propriedade YAML associada.
# The workflow definition starts here.
# See Propriedades de nível superior for details.
Name: MyWorkflow
SchemaVersion: 1.0
Actions:
# The action definition starts here.
action-name
:
Identifier: aws/build@v1 | aws/managed-test@v1
DependsOn:
- dependent-action-name-1
Compute:
Type: EC2 | Lambda
Fleet: fleet-name
Timeout: timeout-minutes
Environment:
Name: environment-name
Connections:
- Name: account-connection-name
Role: iam-role-name
Caching:
FileCaching:
key-name-1:
Path: file1.txt
RestoreKeys:
- restore-key-1
Inputs:
Sources:
- source-name-1
- source-name-2
Artifacts:
- artifact-name
Variables:
- Name: variable-name-1
Value: variable-value-1
- Name: variable-name-2
Value: variable-value-2
Outputs:
Artifacts:
- Name: output-artifact-1
Files:
- build-output/artifact-1.jar
- "build-output/build*"
- Name: output-artifact-2
Files:
- build-output/artifact-2.1.jar
- build-output/artifact-2.2.jar
Variables:
- variable-name-1
- variable-name-2
AutoDiscoverReports:
Enabled: true | false
ReportNamePrefix: AutoDiscovered
IncludePaths:
- "**/*"
ExcludePaths:
- node_modules/cdk/junit.xml
SuccessCriteria:
PassRate: percent
LineCoverage: percent
BranchCoverage: percent
Vulnerabilities:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisBug:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisSecurity:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisQuality:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisFinding:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
Reports:
report-name-1:
Format: format
IncludePaths:
- "*.xml"
ExcludePaths:
- report2.xml
- report3.xml
SuccessCriteria:
PassRate: percent
LineCoverage: percent
BranchCoverage: percent
Vulnerabilities:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisBug:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisSecurity:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisQuality:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
StaticAnalysisFinding:
Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL
Number: whole-number
Configuration:
Container:
Registry: registry
Image: image
Steps:
- Run: "step 1"
- Run: "step 2"
Packages:
NpmConfiguration:
PackageRegistries:
- PackagesRepository: package-repository
Scopes:
- "@scope"
ExportAuthorizationToken: true | false
action-name
(Obrigatório)
Especifique o nome da ação. Todos os nomes de ação devem ser exclusivos no fluxo de trabalho. Os nomes de ação são limitados a caracteres alfanuméricos (a-z, A-Z, 0-9), hifens (-) e sublinhados (_). Não são permitidos espaços. Não é possível usar aspas para habilitar caracteres especiais e espaços nos nomes de ação.
Interface de usuário correspondente: guia Configuração/Nome da ação
Identifier
(action-name
/Identifier)
Identifica a ação. Não altere essa propriedade, a menos que você queira alterar a versão. Para ter mais informações, consulte Especificação da versão da ação a ser usada.
Use aws/build@v1
para ações de criação.
Use aws/managed-test@v1
para ações de teste.
Interface de usuário correspondente: rótulo do diagrama de fluxo de trabalho/Action-name/aws/build@v1|aws/managed-test@v1
DependsOn
(action-name
/DependsOn)
(Opcional)
Especifique uma ação, um grupo de ação ou um portão que deve ser executado com êxito para que essa ação seja executada.
Para ter mais informações sobre a funcionalidade “Depende de”, consulte Sequenciar ações.
Interface de usuário correspondente: guia Entradas/Depende de - opcional
Compute
(action-name
/Compute)
(Opcional)
O mecanismo de computação usado para executar as ações de fluxo de trabalho. É possível especificar a computação em nível de fluxo de trabalho ou em nível de ação, mas não em ambos. Quando especificada em nível de fluxo de trabalho, a configuração de computação se aplica a todas as ações definidas no fluxo de trabalho. Em nível de fluxo de trabalho, também é possível realizar várias ações na mesma instância. Para ter mais informações, consulte Compartilhamento de computação entre ações.
Interface de usuário correspondente: nenhuma
Type
(action-name
/Compute/Type)
(Obrigatório se Compute for incluído)
O tipo do mecanismo de computação. É possível usar um dos seguintes valores:
-
EC2 (editor visual) ou
EC2
(editor YAML)Otimizado para flexibilidade durante as execuções de ação.
-
Lambda (editor visual) ou
Lambda
(editor YAML)Velocidades otimizadas de inicialização da ação.
Para obter informações sobre tipos de dados, consulte Tipos de computação.
Interface de usuário correspondente: guia Configuração/Tipo de computação
Fleet
(action-name
/Compute/Fleet)
(Opcional)
Especifique a máquina ou a frota que executará o fluxo de trabalho ou as ações de fluxo de trabalho. Com frotas sob demanda, quando uma ação é iniciada, o fluxo de trabalho provisiona os recursos necessários e as máquinas são destruídas quando a ação termina. Exemplos de frota sob demanda: Linux.x86-64.Large
, Linux.x86-64.XLarge
. Para ter mais informações sobre frotas sob demanda, consulte Propriedades da frota sob demanda.
Com frotas provisionadas, você configura um conjunto de máquinas dedicadas para realizar as ações do fluxo de trabalho. Essas máquinas permanecem ociosas, prontas para processar ações imediatamente. Para ter mais informações sobre frotas provisionadas, consulte Propriedades da frota provisionada.
Se Fleet
for omitido, o padrão será Linux.x86-64.Large
.
Interface de usuário correspondente: guia Configuração/Frota de computação
Timeout
(action-name
/Timeout)
(Opcional)
Especifique a quantidade de tempo em minutos (editor YAML) ou horas e minutos (editor visual) que a ação pode ser realizada antes que o CodeCatalyst termine a ação. O mínimo é de cinco minutos e o máximo está descrito em Cotas para fluxos de trabalho no CodeCatalyst. O tempo limite padrão é igual ao tempo limite máximo.
Interface de usuário correspondente: guia Configuração/Tempo limite - opcional
Environment
(action-name
/Environment)
(Opcional)
Especifique o ambiente do CodeCatalyst a ser usado com a ação. A ação se conecta à Conta da AWS e à Amazon VPC opcional especificada no ambiente escolhido. A ação usa o perfil do IAM padrão especificado no ambiente para se conectar à Conta da AWS e usa o perfil do IAM especificado na conexão da Amazon VPC para se conectar à Amazon VPC.
nota
Se o perfil do IAM padrão não tiver as permissões exigidas pela ação, você poderá configurar a ação para usar um perfil diferente. Para ter mais informações, consulte Alteração do perfil do IAM de uma ação.
Para ter mais informações sobre ambientes, consulte Implantação em Contas da AWS e VPCs e Criar um ambiente.
Interface de usuário correspondente: guia Configuração/Ambiente
Name
(action-name
/Environment/Name)
(Opcional)
Especifique o nome de um ambiente existente que deseja associar à ação.
Interface de usuário correspondente: guia Configuração/Ambiente
Connections
(action-name
/Environment/Connections)
(Opcional)
Especifique a conexão da conta a ser associada à ação. É possível especificar no máximo uma conexão de conta em Environment
.
Se você não especificar uma conexão de conta:
-
A ação usa a conexão da Conta da AWS e o perfil do IAM padrão especificados no ambiente no console do CodeCatalyst. Para ter informações sobre como adicionar uma conexão de conta e um perfil do IAM padrão ao ambiente, consulte Criar um ambiente.
-
O perfil do IAM padrão deve incluir as políticas e as permissões exigidas pela ação. Para determinar quais são essas políticas e permissões, consulte a descrição da propriedade Perfil na documentação de definição de YAML da ação.
Para ter mais informações sobre conexões de conta, consulte Permissão do acesso a recursos da AWS com Contas da AWS conectadas. Para ter informações sobre como adicionar uma conexão de conta a um ambiente, consulte Criar um ambiente.
Interface de usuário correspondente: guia Configuração/Ambiente/O que há no meu ambiente
?/menu de três pontos/Mudar de perfil
Name
(action-name
/Environment/Connections/Name)
(Obrigatório se Connections for incluído)
Especifique o nome da conexão da conta.
Interface de usuário correspondente: guia Configuração/Ambiente/O que há no meu ambiente
?/menu de três pontos/Mudar de perfil
Role
(action-name
/Environment/Connections/Role)
(Obrigatório se Connections for incluído)
Especifique o nome do perfil do IAM que essa ação usa para acessar e operar em serviços da AWS, como o Amazon S3 e o Amazon ECR. Esse perfil deve ser adicionado à conexão da Conta da AWS no espaço. Para adicionar um perfil do IAM a uma conexão de conta, consulte Adicionar perfis do IAM às conexões da conta.
Se você não especificar um perfil do IAM, a ação usará o perfil padrão listado no ambiente no console do CodeCatalyst. Se você usar o perfil padrão no ambiente, verifique se ele tem as políticas a seguir.
nota
É possível usar o perfil CodeCatalystWorkflowDevelopmentRole-
com essa ação. Para obter mais informações sobre essa função, consulte Criar o perfil CodeCatalystWorkflowDevelopmentRole-spaceName para a conta e o espaço. Entenda que o perfil spaceName
CodeCatalystWorkflowDevelopmentRole-
tem permissões de acesso completas, o que pode representar um risco de segurança. Recomendamos que você use esse perfil apenas em tutoriais e em cenários em que a segurança seja menos preocupante. spaceName
Atenção
Limite as permissões às exigidas pelas ações de criação e de teste. Usar um perfil com permissões mais amplas pode representar um risco de segurança.
Interface de usuário correspondente: guia Configuração/Ambiente/O que há no meu ambiente
?/menu de três pontos/Mudar de perfil
Caching
(action-name
/Caching)
(Opcional)
Uma seção na qual você pode especificar um cache para salvar arquivos em disco e restaurá-los desse cache em execuções subsequentes do fluxo de trabalho.
Para ter mais informações sobre armazenamento de arquivos em cache, consulte Armazenar arquivos em cache entre execuções de fluxo de trabalho.
Interface de usuário correspondente: guia Configuração/Armazenamento de arquivos em cache - opcional
FileCaching
(action-name
/Caching/FileCaching)
(Opcional)
Uma seção que especifica a configuração de uma sequência de caches.
Interface de usuário correspondente: guia Configuração/Armazenamento de arquivos em cache - opcional/Adicionar cache
key-name-1
(action-name
/Caching/FileCaching/key-name-1
)
(Opcional)
Especifique o nome da propriedade de cache principal. Os nomes de propriedade de cache devem ser exclusivos no fluxo de trabalho. Cada ação pode ter até cinco entradas em FileCaching
.
Interface de usuário correspondente: guia Configuração/Armazenamento de arquivos em cache - opcional/Adicionar cache/Chave
Path
(action-name
/Caching/FileCaching/key-name-1
/Path)
(Opcional)
Especifique o caminho associado ao cache.
Interface de usuário correspondente: guia Configuração/Armazenamento de arquivos em cache - opcional/Adicionar cache/Caminho
RestoreKeys
(action-name
/Caching/FileCaching/key-name-1
/RestoreKeys)
(Opcional)
Especifique a chave de restauração a ser usada como fallback quando a propriedade do cache principal não puder ser encontrada. Os nomes de chave de restauração devem ser exclusivos no fluxo de trabalho. Cada cache pode ter até cinco entradas em RestoreKeys
.
Interface de usuário correspondente: guia Configuração/Armazenamento de arquivos em cache - opcional/Adicionar cache/Chaves de restauração - opcional
Inputs
(action-name
/Inputs)
(Opcional)
A seção Inputs
define os dados de que uma ação precisa durante a execução de um fluxo de trabalho.
nota
São permitidas no máximo quatro entradas (uma origem e três artefatos) por ação de criação ou de teste. As variáveis não são contadas nesse total.
Se você precisar consultar arquivos que residem em entradas diferentes (digamos, uma origem e um artefato), a entrada de origem será a entrada primária e o artefato será a entrada secundária. As referências a arquivos em entradas secundárias usam um prefixo especial para diferirem das primárias. Para obter detalhes, consulte Exemplo: referência de arquivos em vários artefatos.
Interface de usuário correspondente: guia Entradas
Sources
(action-name
/Inputs/Sources)
(Opcional)
Especifique os rótulos que representam os repositórios de origem que serão necessários para a ação. Atualmente, o único rótulo compatível é WorkflowSource
, que representa o repositório de origem em que o arquivo de definição de fluxo de trabalho está armazenado.
Se você omitir uma origem, deverá especificar pelo menos um artefato de entrada em
.action-name
/Inputs/Artifacts
Para obter mais informações sobre fontes, consulte Conectar repositórios de origem aos fluxos de trabalho.
Interface de usuário correspondente: nenhuma
Artifacts - input
(action-name
/Inputs/Artifacts)
(Opcional)
Especifique artefatos de ações anteriores que você deseja fornecer como entrada para essa ação. Esses artefatos já devem estar definidos como artefatos de saída em ações anteriores.
Se você não especificar nenhum artefato de entrada, deverá especificar pelo menos um repositório de origem em
.action-name
/Inputs/Sources
Para ter mais informações sobre artefatos, inclusive exemplos, consulte Compartilhar artefatos e arquivos entre ações.
nota
Se a lista suspensa Artefatos – opcional não estiver disponível (editor visual) ou se você receber erros ao validar o YAML (editor YAML), talvez seja porque a ação permite apenas uma entrada. Nesse caso, tente remover a entrada de origem.
Interface de usuário correspondente: guia Entradas/Artefatos - opcional
Variables - input
(action-name
/Inputs/Variables)
(Opcional)
Especifique uma sequência de pares de nome/valor que definam as variáveis de entrada que você deseja disponibilizar para a ação. Os nomes de variável são limitados a caracteres alfanuméricos (a-z, A-Z, 0-9), hifens (-) e sublinhados (_). Não são permitidos espaços. Não é possível usar aspas para habilitar caracteres especiais e espaços nos nomes de variável.
Para ter mais informações sobre variáveis, inclusive exemplos, consulte Uso de variáveis em fluxos de trabalho.
Interface de usuário correspondente: guia Entradas/Variáveis - opcional
Outputs
(action-name
/Outputs)
(Opcional)
Define os dados que são gerados pela ação durante a execução de um fluxo de trabalho.
Interface de usuário correspondente: guia Saídas
Artifacts - output
(action-name
/Outputs/Artifacts)
(Opcional)
Especifique o nome de um artefato gerado pela ação. Os nomes de artefato devem ser exclusivos em um fluxo de trabalho e estão limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) e sublinhados (_). Espaços, hifens (-) e outros caracteres especiais não são permitidos. Não é possível usar aspas para habilitar espaços, hifens e outros caracteres especiais em nomes de artefato de saída.
Para ter mais informações sobre artefatos, inclusive exemplos, consulte Compartilhar artefatos e arquivos entre ações.
Interface de usuário correspondente: guia Saídas/Artefatos
Name
(action-name
/Outputs/Artifacts/Name)
(Obrigatório se Artifacts - output for incluído)
Especifique o nome de um artefato gerado pela ação. Os nomes de artefato devem ser exclusivos em um fluxo de trabalho e estão limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) e sublinhados (_). Espaços, hifens (-) e outros caracteres especiais não são permitidos. Não é possível usar aspas para habilitar espaços, hifens e outros caracteres especiais em nomes de artefato de saída.
Para ter mais informações sobre artefatos, inclusive exemplos, consulte Compartilhar artefatos e arquivos entre ações.
Interface de usuário correspondente: guia Saídas/Artefatos/Nova saída/Nome do artefato de criação
Files
(action-name
/Outputs/Artifacts/Files)
(Obrigatório se Artifacts - output for incluído)
Especifique os arquivos que o CodeCatalyst inclui no artefato gerado pela ação. Esses arquivos são gerados pela ação do fluxo de trabalho quando ela é executada e também estão disponíveis no repositório de origem. Os caminhos de arquivo podem residir em um repositório de origem ou em um artefato de uma ação anterior e são relativos ao repositório de origem ou à raiz do artefato. É possível usar padrões glob para especificar caminhos. Exemplos:
-
Para especificar um único arquivo que esteja na raiz do local de compilação ou do local do repositório de origem, use
my-file.jar
. -
Para especificar um único arquivo em um subdiretório, use
directory/my-file.jar
oudirectory/subdirectory/my-file.jar
. -
Para especificar todos os arquivos, use
"**/*"
. O padrão glob**
indica que corresponde a qualquer número de subdiretórios. -
Para especificar todos os arquivos e diretórios em um diretório chamado
directory
, use"directory/**/*"
. O padrão glob**
indica que corresponde a qualquer número de subdiretórios. -
Para especificar todos os arquivos em um diretório chamado
directory
, mas não em nenhum de seus subdiretórios, use"directory/*"
.
nota
Se o caminho do arquivo incluir um ou mais asteriscos (*
) ou outro caractere especial, coloque o caminho entre aspas duplas (""
). Para ter mais informações sobre caracteres especiais, consulte Diretrizes e convenções de sintaxe.
Para ter mais informações sobre artefatos, inclusive exemplos, consulte Compartilhar artefatos e arquivos entre ações.
nota
Talvez seja necessário adicionar um prefixo ao caminho do arquivo para indicar em qual artefato ou origem encontrá-lo. Para ter mais informações, consulte Fazer referência a arquivos do repositório de origem e Referência de arquivos em um artefato.
Interface de usuário correspondente: guia Saídas/Artefatos/Nova saída/Arquivos produzidos pela criação
Variables - output
(action-name
/Outputs/Variables)
(Opcional)
Especifique as variáveis que você deseja que a ação exporte para que estejam disponíveis para uso em ações subsequentes.
Para ter mais informações sobre variáveis, inclusive exemplos, consulte Uso de variáveis em fluxos de trabalho.
Interface de usuário correspondente: guia Saídas/Variáveis/Adicionar variável
variable-name-1
(action-name
/Outputs/Variables/variable-name-1
)
(Opcional)
Especifique o nome de uma variável a ser exportada pela ação. Essa variável já deve estar definida na seção Inputs
ou Steps
da mesma ação.
Para ter mais informações sobre variáveis, inclusive exemplos, consulte Uso de variáveis em fluxos de trabalho.
Interface de usuário correspondente: guia Saídas/Variáveis/Adicionar variável/Nome
AutoDiscoverReports
(action-name
/Outputs/AutoDiscoverReports)
(Opcional)
Define a configuração do recurso de descoberta automática.
Quando você ativa a descoberta automática, o CodeCatalyst pesquisa todas as Inputs
transmitidas para a ação, bem como todos os arquivos gerados pela própria ação, procurando relatórios de teste, cobertura de código e análise de composição de software (SCA). Cada relatório encontrado é transformado em um relatório do CodeCatalyst. Relatório do CodeCatalyst é um relatório totalmente integrado ao serviço CodeCatalyst e pode ser visualizado e manipulado por meio do console do CodeCatalyst.
nota
Por padrão, o recurso de descoberta automática inspeciona todos os arquivos. É possível limitar quais arquivos são inspecionados usando as propriedades IncludePaths ou ExcludePaths.
Interface de usuário correspondente: guia Saídas/Relatórios/Relatórios de descoberta automática
Enabled
(action-name
/Outputs/AutoDiscoverReports/Enabled)
(Opcional)
Habilite ou desabilite o recurso de descoberta automática.
Os valores válidos são true
ou false
.
Se Enabled
for omitido, o padrão será true
.
Interface de usuário correspondente: guia Saídas/Relatórios/Relatórios de descoberta automática
ReportNamePrefix
(action-name
/Outputs/AutoDiscoverReports/ReportNamePrefix)
(Obrigatório se AutoDiscoverReports estiver incluído e habilitado)
Especifique um prefixo que o CodeCatalyst anexa a todos os relatórios encontrados para nomear os relatórios associados do CodeCatalyst. Por exemplo, se você especificar um prefixo AutoDiscovered
, e o CodeCatalyst descobrir automaticamente dois relatórios de teste, TestSuiteOne.xml
e TestSuiteTwo.xml
, os relatórios associados do CodeCatalyst serão chamados de AutoDiscoveredTestSuiteOne
e AutoDiscoveredTestSuiteTwo
.
Interface de usuário correspondente: guia Saídas/Relatórios/Nome do prefixo
IncludePaths
(action-name
/Outputs/AutoDiscoverReports/IncludePaths)
Ou
(action-name
/Outputs/Reports/report-name-1
/IncludePaths)
(Obrigatório se AutoDiscoverReports estiver incluído e habilitado ou se Reports estiver incluído)
Especifique os arquivos e os caminhos de arquivo que o CodeCatalyst inclui ao procurar relatórios brutos. Por exemplo, se você especificar "/test/report/*"
, o CodeCatalyst pesquisará toda a imagem de compilação usada pela ação procurando o diretório /test/report/*
. Quando encontra esse diretório, o CodeCatalyst procura relatórios nesse diretório.
nota
Se o caminho do arquivo incluir um ou mais asteriscos (*
) ou outros caracteres especiais, coloque o caminho entre aspas duplas (""
). Para ter mais informações sobre caracteres especiais, consulte Diretrizes e convenções de sintaxe.
Se essa propriedade for omitida, o padrão será "**/*"
, o que significa que a pesquisa inclui todos os arquivos em todos os caminhos.
nota
Em relatórios configurados manualmente, IncludePaths
deverá ser um padrão global que corresponda a um único arquivo.
Interface de usuário correspondente:
-
Guia Saídas/Relatórios/Descoberta automática de relatórios/Incluir/Excluir caminhos/Incluir caminhos
-
Guia Saídas/Relatórios/Configurar manualmente os relatórios/
report-name-1
/Incluir/Excluir caminhos/Incluir caminhos
ExcludePaths
(action-name
/Outputs/AutoDiscoverReports/ExcludePaths)
Ou
(action-name
/Outputs/Reports/report-name-1
/ExcludePaths)
(Opcional)
Especifique os arquivos e os caminhos de arquivo que o CodeCatalyst exclui ao procurar relatórios brutos. Por exemplo, se você especificar "/test/my-reports/**/*"
, o CodeCatalyst não vai procurar arquivos no diretório /test/my-reports/
. Para ignorar todos os arquivos em um diretório, use o padrão de glob **/*
.
nota
Se o caminho do arquivo incluir um ou mais asteriscos (*
) ou outros caracteres especiais, coloque o caminho entre aspas duplas (""
). Para ter mais informações sobre caracteres especiais, consulte Diretrizes e convenções de sintaxe.
Interface de usuário correspondente:
-
Guia Saídas/Relatórios/Descoberta automática de relatórios/Incluir/Excluir caminhos/Excluir caminhos
-
Guia Saídas/Relatórios/Configurar manualmente os relatórios/
report-name-1
/Incluir/Excluir caminhos/Excluir caminhos
SuccessCriteria
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria)
(Opcional)
Especifique os critérios de sucesso para os relatórios de teste, cobertura de código, análise de composição de software (SCA) e análise estática (SA).
Para ter mais informações, consulte Configuração de critérios de sucesso para relatórios.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso
PassRate
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/PassRate)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/PassRate)
(Opcional)
Especifique a porcentagem de testes em um relatório de teste que devem ser aprovados para que o relatório associado do CodeCatalyst seja marcado como aprovado. Os valores válidos são números decimais. Por exemplo: 50
, 60.5
. Os critérios de taxa de aprovação são aplicados somente aos relatórios de teste. Para ter mais informações sobre os relatórios de teste, consulte Relatórios de teste.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Taxa de aprovação
LineCoverage
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/LineCoverage)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/LineCoverage)
(Opcional)
Especifique a porcentagem de linhas em um relatório de cobertura de código que deve ser coberta para que o relatório associado do CodeCatalyst seja marcado como aprovado. Os valores válidos são números decimais. Por exemplo: 50
, 60.5
. Os critérios de cobertura de linha são aplicados somente aos relatórios de cobertura de código. Para ter mais informações sobre relatórios de cobertura de código, consulte Relatórios de cobertura de código.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Cobertura de linha
BranchCoverage
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/BranchCoverage)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/BranchCoverage)
(Opcional)
Especifique a porcentagem de ramificações em um relatório de cobertura de código que deve ser coberta para que o relatório associado do CodeCatalyst seja marcado como aprovado. Os valores válidos são números decimais. Por exemplo: 50
, 60.5
. Os critérios de cobertura de ramificações são aplicados somente aos relatórios de cobertura de código. Para ter mais informações sobre relatórios de cobertura de código, consulte Relatórios de cobertura de código.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Cobertura de ramificações
Vulnerabilities
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/Vulnerabilities)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/Vulnerabilities)
(Opcional)
Especifique o número máximo e a gravidade das vulnerabilidades permitidas no relatório de SCA para que o relatório associado do CodeCatalyst seja marcado como aprovado. Para especificar vulnerabilidades, é necessário especificar:
-
A gravidade mínima das vulnerabilidades que você deseja incluir na contagem. Os valores válidos, do mais grave para o menos grave, são:
CRITICAL
,HIGH
,MEDIUM
,LOW
eINFORMATIONAL
.Por exemplo, se você escolher
HIGH
, as vulnerabilidadesHIGH
eCRITICAL
serão contabilizadas. -
O número máximo de vulnerabilidades da gravidade especificada que você deseja permitir. Exceder esse número faz com que o relatório do CodeCatalyst seja marcado como reprovado. Os valores válidos são números inteiros.
Os critérios de vulnerabilidade são aplicados somente aos relatórios de SCA. Para ter mais informações sobre os relatórios de SCA, consulte Relatórios de análise de composição de software.
Para especificar a gravidade mínima, use a propriedade Severity
. Para especificar o número máximo de vulnerabilidades, use a propriedade Number
.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Vulnerabilidades
StaticAnalysisBug
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisBug)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/StaticAnalysisBug)
(Opcional)
Especifique o número máximo e a gravidade dos bugs permitidos no relatório de SA para que o relatório associado do CodeCatalyst seja marcado como aprovado. Para especificar bugs, é necessário especificar:
-
A gravidade mínima dos bugs que você deseja incluir na contagem. Os valores válidos, do mais grave para o menos grave, são:
CRITICAL
,HIGH
,MEDIUM
,LOW
eINFORMATIONAL
.Por exemplo, se você escolher
HIGH
, os bugsHIGH
eCRITICAL
serão contabilizados. -
O número máximo de bugs da gravidade especificada que você deseja permitir. Exceder esse número faz com que o relatório do CodeCatalyst seja marcado como reprovado. Os valores válidos são números inteiros.
Os critérios de bugs são aplicados somente aos relatórios PyLint e ESLint SA. Para ter mais informações sobre os relatórios SA, consulte Relatórios de análise estática.
Para especificar a gravidade mínima, use a propriedade Severity
. Para especificar o número máximo de vulnerabilidades, use a propriedade Number
.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Bugs
StaticAnalysisSecurity
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisSecurity)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/StaticAnalysisSecurity)
(Opcional)
Especifique o número máximo e a gravidade das vulnerabilidades de segurança permitidas no relatório de SA para que o relatório associado do CodeCatalyst seja marcado como aprovado. Para especificar vulnerabilidades de segurança, é necessário especificar:
-
A gravidade mínima das vulnerabilidades de segurança que você deseja incluir na contagem. Os valores válidos, do mais grave para o menos grave, são:
CRITICAL
,HIGH
,MEDIUM
,LOW
eINFORMATIONAL
.Por exemplo, se você escolher
HIGH
, as vulnerabilidades de segurançaHIGH
eCRITICAL
serão contabilizadas. -
O número máximo de vulnerabilidades de segurança da gravidade especificada que você deseja permitir. Exceder esse número faz com que o relatório do CodeCatalyst seja marcado como reprovado. Os valores válidos são números inteiros.
Os critérios de vulnerabilidades de segurança são aplicados somente aos relatórios PyLint e ESLint SA. Para ter mais informações sobre os relatórios SA, consulte Relatórios de análise estática.
Para especificar a gravidade mínima, use a propriedade Severity
. Para especificar o número máximo de vulnerabilidades, use a propriedade Number
.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Vulnerabilidades de segurança
StaticAnalysisQuality
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisQuality)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/StaticAnalysisQuality)
(Opcional)
Especifique o número máximo e a gravidade dos problemas de qualidade permitidos no relatório de SA para que o relatório associado do CodeCatalyst seja marcado como aprovado. Para especificar problemas de qualidade, é necessário especificar:
-
A gravidade mínima dos problemas de qualidade que você deseja incluir na contagem. Os valores válidos, do mais grave para o menos grave, são:
CRITICAL
,HIGH
,MEDIUM
,LOW
eINFORMATIONAL
.Por exemplo, se você escolher
HIGH
, os problemas de qualidadeHIGH
eCRITICAL
serão contabilizados. -
O número máximo de problemas de qualidade da gravidade especificada que você deseja permitir. Exceder esse número faz com que o relatório do CodeCatalyst seja marcado como reprovado. Os valores válidos são números inteiros.
Os critérios de problemas de qualidade são aplicados somente aos relatórios PyLint e ESLint SA. Para ter mais informações sobre os relatórios SA, consulte Relatórios de análise estática.
Para especificar a gravidade mínima, use a propriedade Severity
. Para especificar o número máximo de vulnerabilidades, use a propriedade Number
.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Problemas de qualidade
StaticAnalysisFinding
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisFinding)
Ou
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/StaticAnalysisFinding)
(Opcional)
Especifique o número máximo e a gravidade das descobertas permitidas no relatório de SA para que o relatório associado do CodeCatalyst seja marcado como aprovado. Para especificar descobertas, é necessário especificar:
-
A gravidade mínima das descobertas que você deseja incluir na contagem. Os valores válidos, do mais grave para o menos grave, são:
CRITICAL
,HIGH
,MEDIUM
,LOW
eINFORMATIONAL
.Por exemplo, se você escolher
HIGH
, as descobertasHIGH
eCRITICAL
serão contabilizadas. -
O número máximo de descobertas da gravidade especificada que você deseja permitir. Exceder esse número faz com que o relatório do CodeCatalyst seja marcado como reprovado. Os valores válidos são números inteiros.
As descobertas são aplicadas somente aos relatórios de SARIF SA. Para ter mais informações sobre os relatórios SA, consulte Relatórios de análise estática.
Para especificar a gravidade mínima, use a propriedade Severity
. Para especificar o número máximo de vulnerabilidades, use a propriedade Number
.
Interface de usuário correspondente: guia Saída/Relatórios/Critérios de sucesso/Descobertas
Reports
(action-name
/Outputs/Reports)
(Opcional)
Uma seção que especifica a configuração dos relatórios de teste.
Interface de usuário correspondente: guia Saídas/Relatórios
report-name-1
(action-name
/Outputs/Reports/report-name-1)
(Obrigatório se Reports for incluído)
O nome que você deseja atribuir ao relatório do CodeCatalyst que será gerado com base nos relatórios brutos.
Interface de usuário correspondente: guia Saídas/Relatórios/Configurar manualmente os relatórios/Nome do relatório
Format
(action-name
/Outputs/Reports/report-name-1
/Format)
(Obrigatório se Reports for incluído)
Especifique o formato de arquivo utilizado para os relatórios. Veja a seguir os valores possíveis.
-
Para relatórios de teste:
-
Para Cucumber JSON, especifique Cucumber (editor visual) ou
CUCUMBERJSON
(editor YAML). -
Para JUnit XML, especifique JUnit (editor visual) ou
JUNITXML
(editor YAML). -
Para NUnit XML, especifique NUnit (editor visual) ou
NUNITXML
(editor YAML). -
Para NUnit 3 XML, especifique NUnit3 (editor visual) ou
NUNIT3XML
(editor YAML). -
Para Visual Studio TRX, especifique Visual Studio TRX (editor visual) ou
VISUALSTUDIOTRX
(editor YAML). -
Para TestNG XML, especifique TestNG (editor visual) ou
TESTNGXML
(editor YAML).
-
-
Para relatórios de cobertura de código:
-
Para Clover XML, especifique Clover (editor visual) ou
CLOVERXML
(editor YAML). -
Para Cobertura XML, especifique Cobertura (editor visual) ou
COBERTURAXML
(editor YAML). -
Para JaCoCo XML, especifique JaCoCo (editor visual) ou
JACOCOXML
(editor YAML). -
Para SimpleCov JSON gerado por simplecov
, não simplecov-json , especifique Simplecov (editor visual) ou SIMPLECOV
(editor YAML).
-
-
Para relatórios de análise de composição de software (SCA):
-
Para SARIF, especifique SARIF (editor visual) ou
SARIFSCA
(editor YAML).
-
Interface de usuário correspondente: guia Saídas/Relatórios/Configurar manualmente relatórios/Adicionar/configurar relatórios/report-name-1
/Tipo de relatório e Formato de relatório
Configuration
(action-name
/Configuration)
(Obrigatório) Uma seção na qual você pode definir as propriedades de configuração da ação.
Interface de usuário correspondente: guia Configuração
Container
(action-name
/Configuration/Container)
(Opcional)
Especifique a imagem do Docker, ou contêiner, que a ação usa para concluir o processamento. É possível especificar uma das imagens ativas que vêm com o CodeCatalyst ou usar a própria imagem. Se você optar por usar a própria imagem, ela poderá residir no Amazon ECR, no Docker Hub ou em outro registro. Se você não especificar uma imagem do Docker, a ação usará uma das imagens ativas para processamento. Para ter informações sobre qual imagem ativa é usada por padrão, consulte Imagens ativas.
Para ter mais informações sobre como especificar a própria imagem do Docker, consulte Atribuir uma imagem do Docker de um ambiente de runtime personalizada a uma ação.
Interface de usuário correspondente: Imagem do Docker do runtime - opcional
Registry
(action-name
/Configuration/Container/Registry)
(Obrigatório se Container
for incluído)
Especifique o registro em que a imagem está armazenada. Os valores válidos são:
-
CODECATALYST
(editor YAML)A imagem é armazenada no registro do CodeCatalyst.
-
Docker Hub (editor visual) ou
DockerHub
(editor YAML)A imagem é armazenada no registro de imagens do Docker Hub.
-
Outro registro (editor visual) ou
Other
(editor YAML)A imagem é armazenada em um registro de imagem personalizado. Qualquer registro disponível publicamente pode ser usado.
-
Amazon Elastic Container Registry (editor visual) ou
ECR
(editor YAML)A imagem é armazenada em um repositório de imagens do Amazon Elastic Container Registry. Para usar uma imagem em um repositório do Amazon ECR, essa ação precisa acessar o Amazon ECR. Para habilitar esse acesso, é necessário criar um perfil do IAM que inclua as permissões e a política de confiança personalizada a seguir. (Se desejar, você poderá modificar um perfil existente para incluir as permissões e a política.)
O perfil do IAM deve incluir as seguintes permissões na política:
-
ecr:BatchCheckLayerAvailability
-
ecr:BatchGetImage
-
ecr:GetAuthorizationToken
-
ecr:GetDownloadUrlForLayer
O perfil do IAM deve incluir a seguinte política de confiança personalizada:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Para ter mais informações sobre como criar perfis do IAM, consulte Criar um perfil usando políticas de confiança personalizadas (console) no Guia do usuário do IAM.
Depois que você criar o perfil, deverá atribuí-lo à ação por meio de um ambiente. Para ter mais informações, consulte Associação de um ambiente a uma ação.
-
Interface de usuário correspondente: opções Amazon Elastic Container Registry, Docker Hub e Outro registro
Image
(action-name
/Configuration/Container/Image)
(Obrigatório se Container
for incluído)
Especifique um dos seguintes:
-
Se você estiver usando um registro
CODECATALYST
, defina a imagem como uma das seguintes imagens ativas:-
CodeCatalystLinux_x86_64:2024_03
-
CodeCatalystLinux_x86_64:2022_11
-
CodeCatalystLinux_Arm64:2024_03
-
CodeCatalystLinux_Arm64:2022_11
-
CodeCatalystLinuxLambda_x86_64:2024_03
-
CodeCatalystLinuxLambda_x86_64:2022_11
-
CodeCatalystLinuxLambda_Arm64:2024_03
-
CodeCatalystLinuxLambda_Arm64:2022_11
-
CodeCatalystWindows_x86_64:2022_11
-
-
Se você estiver usando um registro do Docker Hub, defina a imagem como o nome da imagem do Docker Hub e a tag opcional.
Exemplo:
postgres:latest
-
Se estiver usando um registro do Amazon ECR, defina a imagem como o URI do registro do Amazon ECR.
Exemplo:
111122223333.dkr.ecr.us-west-2.amazonaws.com/codecatalyst-ecs-image-repo
-
Se estiver usando um registro personalizado, defina a imagem como o valor esperado pelo registro personalizado.
Interface de usuário correspondente: imagem do Docker do ambiente de runtime (se o registro for CODECATALYST
), imagem do Docker Hub (se o registro for Docker Hub), URL da imagem do ECR (se o registro for Amazon Elastic Container Registry) e URL da imagem (se o registro for Outro registro).
Steps
(action-name
/Configuration/Steps)
(Obrigatório)
Especifique os comandos do shell que você deseja executar durante a ação para instalar, configurar e executar as ferramentas de compilação.
Confira um exemplo de como criar um projeto npm:
Steps:
- Run: npm install
- Run: npm run build
Veja a seguir um exemplo de como especificar caminhos de arquivo:
Steps:
- Run: cd $ACTION_BUILD_SOURCE_PATH_WorkflowSource/app && cat file2.txt
- Run: cd $ACTION_BUILD_SOURCE_PATH_MyBuildArtifact/build-output/ && cat file.txt
Para ter mais informações sobre como especificar caminhos de arquivo, consulte Fazer referência a arquivos do repositório de origem e Referência de arquivos em um artefato.
Interface de usuário correspondente: guia Configuração/Comandos de shell
Packages
(action-name
/Configuration/Packages)
(Opcional)
Uma seção na qual você pode especificar um repositório de pacotes que a ação usa para resolver dependências. Os pacotes permitem que você armazene e compartilhe com segurança pacotes de software usados para desenvolvimento de aplicações.
Para ter mais informações sobre pacotes, consulte Publicar e compartilhar pacotes de software no CodeCatalyst.
Interface de usuário correspondente: guia Configuração/Pacotes
NpmConfiguration
(action-name
/Configuration/Packages/NpmConfiguration)
(Obrigatório se Packages for incluído)
Uma seção que define a configuração para o formato do pacote npm. Essa configuração é usada por uma ação durante a execução de um fluxo de trabalho.
Para ter mais informações sobre a configuração do pacote npm, consulte Uso de npm.
Interface de usuário correspondente: guia Configuração/Pacotes/Adicionar configuração/npm
PackageRegistries
(action-name
/Configuration/Packages/NpmConfiguration/PackageRegistries)
(Obrigatório se Packages for incluído)
Uma seção na qual você pode definir as propriedades de configuração de uma sequência de repositórios de pacotes.
Interface de usuário correspondente: guia Configuração/Pacotes/Adicionar configuração/npm/Adicionar repositório de pacotes
PackagesRepository
(action-name
/Configuration/Packages/NpmConfiguration/PackageRegistries/PackagesRepository)
(Obrigatório se Packages for incluído)
Especifique o nome do repositório de pacotes do CodeCatalyst que você deseja que a ação use.
Se você especificar vários repositórios padrão, o último repositório terá prioridade.
Para ter mais informações sobre repositórios de pacote, consulte Repositórios de pacotes.
Interface de usuário correspondente: guia Configuração/Pacotes/Adicionar configuração/npm/Adicionar repositório de pacotes/Repositório de pacotes
Scopes
(action-name
/Configuration/Packages/NpmConfiguration/PackageRegistries/Scopes)
(Opcional)
Especifique uma sequência de escopos que você deseja definir no registro do pacote. Na definição de escopos, o repositório de pacotes especificado é configurado como o registro para todos os escopos listados. Se um pacote com o escopo for solicitado por meio do cliente npm, ele usará esse repositório em vez do padrão. Cada nome de escopo deve ter o prefixo “@”.
Se você incluir escopos substitutos, o último repositório terá prioridade.
Se Scopes
for omitido, o repositório de pacotes especificado será configurado como o registro padrão para todos os pacotes usados pela ação.
Para ter mais informações sobre escopos, consulte Namespaces de pacote e Pacotes com escopo definido
Interface de usuário correspondente: guia Configuração/Pacotes/Adicionar configuração/npm/Adicionar repositório de pacotes/Escopos - opcional
ExportAuthorizationToken
(action-name
/Configuration/Packages/ExportAuthorizationToken)
(Opcional)
Habilite ou desabilite o recurso de token de autorização de exportação. Se habilitados, os tokens de autorização exportados poderão ser usados para configurar manualmente um gerenciador de pacotes para autenticação com os repositórios de pacotes do CodeCatalyst. É possível usar o token como uma variável de ambiente que pode ser referida nas ações.
Os valores válidos são true
ou false
.
Se ExportAuthorizationToken
for omitido, o padrão será false
.
Para ter mais informações sobre o token de autorização de exportação, consulte Usar tokens de autorização em ações de fluxo de trabalho.
Interface de usuário correspondente: guia Configuração/Pacotes/Token de autorização de exportação