Configuração de relatórios de qualidade em uma ação - Amazon CodeCatalyst

O Amazon CodeCatalyst não está mais disponível para novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte Como migrar do CodeCatalyst.

Configuração de relatórios de qualidade em uma ação

Esta seção descreve como configurar um relatório de qualidade em uma ação.

Descoberta automática e relatórios manuais

Quando a descoberta automática está habilitada, o CodeCatalyst pesquisa todas as entradas passadas para a ação e todos os arquivos gerados pela própria ação, procurando por relatórios de teste, cobertura de código, análise de composição de software (SCA) e análise estática (SA). Você pode visualizar e manipular cada um desses relatórios no CodeCatalyst.

Você também pode configurar manualmente quais relatórios são gerados. Você pode especificar o tipo de relatório que deseja gerar, bem como o formato do arquivo. Para obter mais informações, consulte Tipos de relatório de qualidade.

Configuração de critérios de sucesso para relatórios

Defina os valores que determinam os critérios de sucesso para um teste, cobertura de código, análise de composição de software (SCA) ou relatório de análise estática (SA).

Os critérios de sucesso são limites que determinam se um relatório é aprovado ou reprovado. O CodeCatalyst primeiro gera seu relatório, que pode ser um relatório de teste, cobertura de código, SCA ou SA, e depois aplica os critérios de sucesso aos relatórios gerados. Em seguida, mostra se os critérios de sucesso foram atendidos e em que medida. Se algum relatório não atender aos critérios de sucesso especificados, a ação do CodeCatalyst que especificou os critérios de sucesso falhará.

Por exemplo, quando você define os critérios de sucesso para seu relatório de SCA, os valores de vulnerabilidade válidos que variam do mais ao menos grave são: CRITICAL, HIGH, MEDIUM, LOW e INFORMATIONAL. Se você definir os critérios para verificar uma vulnerabilidade com a gravidade HIGH, o relatório falhará se houver pelo menos uma vulnerabilidade com a gravidade HIGH ou nenhuma vulnerabilidade com a gravidade HIGH, mas pelo menos uma vulnerabilidade em um nível de gravidade mais alto, como uma vulnerabilidade em uma gravidade CRITICAL.

Se você não especificar os critérios de sucesso, então:

  • O relatório do CodeCatalyst gerado com base em seus relatórios brutos não exibirá critérios de sucesso.

  • Os critérios de sucesso não serão usados para determinar se a ação do fluxo de trabalho associada será aprovada ou falhará.

Visual
Para configurar critérios de sucesso
  1. No painel de navegação, escolha CI/CD e Fluxos de trabalho.

  2. Escolha um fluxo de trabalho com uma ação que gere um relatório. Este é o relatório ao qual você deseja aplicar os critérios de sucesso. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

  3. Escolha Editar.

  4. Selecione Visual.

  5. No diagrama do fluxo de trabalho, escolha a ação configurada para gerar relatórios do CodeCatalyst.

  6. Escolha a guia Outputs.

  7. Em Relatórios de descoberta automática ou em Configurar relatórios manualmente, selecione Critérios de sucesso.

    Os critérios de sucesso são exibidos. Dependendo das suas seleções anteriores, você pode ver uma ou todas essas opções:

    Taxa de aprovação

    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.

    Cobertura de linha

    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.

    Cobertura de ramificações

    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.

    Vulnerabilidades (SCA)

    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 e INFORMATIONAL.

      Por exemplo, se você escolher HIGH, as vulnerabilidades HIGH e CRITICAL 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.

    Bugs

    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 e INFORMATIONAL.

      Por exemplo, se você escolher HIGH, os bugs HIGH e CRITICAL 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.

    Vulnerabilidades de segurança

    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 e INFORMATIONAL.

      Por exemplo, se você escolher HIGH, as vulnerabilidades de segurança HIGH e CRITICAL 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.

    Problemas de qualidade

    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 e INFORMATIONAL.

      Por exemplo, se você escolher HIGH, os problemas de qualidade HIGH e CRITICAL 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.

  8. Selecione Confirmar.

  9. Execute seu fluxo de trabalho para que o CodeCatalyst aplique critérios de sucesso aos seus relatórios brutos e regenere os relatórios associados do CodeCatalyst com as informações dos critérios de sucesso incluídas. Para obter mais informações, consulte Iniciar um fluxo de trabalho executado manualmente.

YAML
Para configurar critérios de sucesso
  1. No painel de navegação, escolha CI/CD e Fluxos de trabalho.

  2. Escolha um fluxo de trabalho com uma ação que gere um relatório. Este é o relatório ao qual você deseja aplicar os critérios de sucesso. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

  3. Escolha Editar.

  4. Selecione YAML.

  5. No diagrama do fluxo de trabalho, escolha a ação configurada para gerar relatórios do CodeCatalyst.

  6. No painel de detalhes, selecione a guia Saídas.

  7. Na ação, na seção AutoDiscoverReports ou na seção Reports, adicione uma propriedade SuccessCriteria junto com as propriedades PassRate, LineCoverage, BranchCoverage, Vulnerabilities, StaticAnalysisBug, StaticAnalysisSecurity e StaticAnalysisQuality.

    Para ver uma explicação de cada uma dessas propriedades, consulte Ações de criação e de teste YAML.

  8. Selecione Confirmar.

  9. Execute seu fluxo de trabalho para que o CodeCatalyst aplique critérios de sucesso aos seus relatórios brutos e regenere os relatórios associados do CodeCatalyst com as informações dos critérios de sucesso incluídas. Para ter mais informações sobre como iniciar um fluxo de trabalho, consulte Iniciar um fluxo de trabalho executado manualmente.

Exemplo de relatórios de qualidade YAML

O exemplo a seguir mostra como configurar manualmente quatro relatórios: um relatório de teste, um relatório de cobertura de código, um relatório de análise de composição de software e um relatório de análise estática.

Reports: MyTestReport: Format: JUNITXML IncludePaths: - "*.xml" ExcludePaths: - report1.xml SuccessCriteria: PassRate: 90 MyCoverageReport: Format: CLOVERXML IncludePaths: - output/coverage/jest/clover.xml SuccessCriteria: LineCoverage: 75 BranchCoverage: 75 MySCAReport: Format: SARIFSCA IncludePaths: - output/sca/reports.xml SuccessCriteria: Vulnerabilities: Number: 5 Severity: HIGH MySAReport: Format: ESLINTJSON IncludePaths: - output/static/eslint.xml SuccessCriteria: StaticAnalysisBug: Number: 10 Severity: MEDIUM StaticAnalysisSecurity: Number: 5 Severity: CRITICAL StaticAnalysisQuality: Number: 0 Severity: INFORMATIONAL