Crear y probar acciones YAML - Amazon CodeCatalyst

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Crear y probar acciones YAML

La siguiente es la YAML definición de las acciones de construcción y prueba. Hay una referencia para dos acciones porque sus YAML propiedades son muy similares.

Esta definición de acción existe como una sección dentro de un archivo de definición de flujo de trabajo más amplio. Para obtener más información acerca de este archivo, consulte YAMLDefinición del flujo de trabajo.

Elija una YAML propiedad en el código siguiente para ver su descripción.

nota

La mayoría de las YAML propiedades siguientes tienen los elementos de interfaz de usuario correspondientes en el editor visual. Para buscar un elemento de la interfaz de usuario, utilice Ctrl+F. El elemento aparecerá en la lista con su propiedad asociadaYAML.

# The workflow definition starts here. # See Propiedades de nivel 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

nombre de la acción

(Obligatorio)

Especifique el nombre de la acción. Todos los nombres de las acciones deben ser únicos en el flujo de trabajo. Los nombres de las acciones se limitan a caracteres alfanuméricos (a-z, A-Z, 0-9), guiones (-) y guiones bajos (_). No se permiten espacios. No se pueden usar comillas para habilitar los caracteres especiales y los espacios en los nombres de las acciones.

Interfaz de usuario correspondiente: pestaña de configuración/nombre de la acción

Identifier

(action-name/Identifier)

Identifica la acción. No cambie esta propiedad a menos que desee cambiar la versión. Para obtener más información, consulte Especificar la versión de la acción que se va a utilizar.

Se usa aws/build@v1 para acciones de construcción.

Se usa aws/managed-test@v1 para acciones de prueba.

Interfaz de usuario correspondiente: diagrama de flujo de trabajo/nombre de la acción/aws/build@v1|aws/managed-test@v1 etiqueta

DependsOn

(action-name/DependsOn)

(Opcional)

Especifique una acción, un grupo de acciones o una puerta que debe ejecutarse correctamente para que esta acción se ejecute.

Para obtener más información sobre la funcionalidad «depende de», consulte. Secuenciación de acciones

Interfaz de usuario correspondiente: pestaña de entradas/Depende de: opcional

Compute

(action-name/Compute)

(Opcional)

El motor informático utilizado para ejecutar las acciones del flujo de trabajo. Puede especificar el procesamiento en el nivel del flujo de trabajo o en el nivel de acción, pero no en ambos. Cuando se especifica en el nivel del flujo de trabajo, la configuración de procesamiento se aplica a todas las acciones definidas en el flujo de trabajo. En el nivel del flujo de trabajo, también puedes ejecutar varias acciones en la misma instancia. Para obtener más información, consulte Compartir el cómputo entre acciones.

Interfaz de usuario correspondiente: ninguna

Type

(action-name/Compute/Tipo)

(Obligatorio si Compute está incluido)

El tipo de motor de cómputo. Puede usar uno de los siguientes valores:

  • EC2(editor visual) o EC2 (YAMLeditor)

    Optimizado para ofrecer flexibilidad durante las ejecuciones de acción.

  • Lambda (editor visual) o Lambda (YAMLeditor)

    Velocidades de inicio de acciones optimizadas.

Para obtener más información sobre los tipos de computación, consulte Tipos de procesamiento.

Interfaz de usuario correspondiente: pestaña de configuración/tipo de cálculo

Fleet

(action-name/Compute/Fleet)

(Opcional)

Especifique la máquina o la flota que ejecutará el flujo de trabajo o las acciones del flujo de trabajo. Con las flotas bajo demanda, cuando se inicia una acción, el flujo de trabajo aprovisiona los recursos que necesita y las máquinas se destruyen cuando finaliza la acción. Ejemplos de flotas bajo demanda:Linux.x86-64.Large,. Linux.x86-64.XLarge Para obtener más información sobre las flotas bajo demanda, consulte. Propiedades de la flota bajo demanda

Con las flotas aprovisionadas, puede configurar un conjunto de máquinas dedicadas para ejecutar las acciones de su flujo de trabajo. Estas máquinas permanecen inactivas y listas para procesar las acciones de forma inmediata. Para obtener más información sobre las flotas aprovisionadas, consulte. Propiedades de la flota aprovisionada

Si Fleet se omite, el valor predeterminado es. Linux.x86-64.Large

Interfaz de usuario correspondiente: pestaña de configuración/flota de cómputo

Timeout

(action-name/Timeout)

(Opcional)

Especifique la cantidad de tiempo en minutos (YAMLeditor) o en horas y minutos (editor visual) que la acción puede ejecutarse antes de que CodeCatalyst finalice la acción. El mínimo es de 5 minutos y el máximo se describe enCuotas para flujos de trabajo en CodeCatalyst. El tiempo de espera predeterminado es el mismo que el tiempo de espera máximo.

Interfaz de usuario correspondiente: pestaña de configuración/tiempo de espera: opcional

Environment

(action-name/Environment)

(Opcional)

Especifique el CodeCatalyst entorno que se va a utilizar con la acción. La acción se conecta al Cuenta de AWS Amazon opcional VPC especificado en el entorno elegido. La acción usa el IAM rol predeterminado especificado en el entorno para conectarse a Amazon y usa el IAM rol especificado en la VPCconexión de Amazon para conectarse a AmazonVPC. Cuenta de AWS

nota

Si el IAM rol predeterminado no tiene los permisos necesarios para la acción, puedes configurar la acción para usar un rol diferente. Para obtener más información, consulte Cambiar el IAM papel de una acción.

Para obtener más información sobre los entornos, consulte Implementación en Cuentas de AWS y VPCs yCreación de un entorno.

Interfaz de usuario correspondiente: pestaña de configuración/entorno

Name

(action-name/Environment/Name)

(Opcional)

Especifique el nombre de un entorno existente que desee asociar a la acción.

Interfaz de usuario correspondiente: pestaña de configuración/entorno

Connections

(action-name/Environment/Connections)

(Opcional)

Especifique la conexión de cuenta que desee asociar a la acción. Puede especificar un máximo de una conexión de cuenta por debajoEnvironment.

Si no especificas una conexión de cuenta:

  • La acción utiliza la Cuenta de AWS conexión y el IAM rol predeterminado especificados en el entorno de la CodeCatalyst consola. Para obtener información sobre cómo añadir una conexión de cuenta y un IAM rol predeterminado al entorno, consulteCreación de un entorno.

  • El IAM rol predeterminado debe incluir las políticas y los permisos que requiere la acción. Para determinar cuáles son esas políticas y permisos, consulte la descripción de la propiedad del rol en la documentación de YAML definición de la acción.

Para obtener más información sobre las conexiones de cuentas, consultePermitir el acceso a AWS los recursos con conexión Cuentas de AWS. Para obtener información sobre cómo añadir una conexión de cuenta a un entorno, consulteCreación de un entorno.

Interfaz de usuario correspondiente: la configuración tab/Environment/What está en my-environment? /menú de tres puntos/ Cambiar rol

Name

(action-name/Environment/Connections/Name)

(Obligatorio si está incluidoConnections)

Especifique el nombre de la conexión de la cuenta.

Interfaz de usuario correspondiente: la configuración tab/Environment/What está en my-environment? /menú de tres puntos/ Cambiar rol

Role

(action-name/Environment/Connections/Role)

(Obligatorio si está incluidoConnections)

Especifique el nombre del IAM rol que utiliza esta acción para acceder y operar en AWS servicios como Amazon S3 y AmazonECR. Asegúrese de añadir este rol a la Cuenta de AWS conexión de su espacio. Para añadir un IAM rol a una conexión de cuenta, consulteAñadir IAM roles a las conexiones de cuentas.

Si no especifica ningún IAM rol, la acción utilizará el IAM rol predeterminado que aparece en el entorno de la CodeCatalyst consola. Si usa el rol predeterminado en el entorno, asegúrese de que tenga las siguientes políticas.

nota

Puede usar el CodeCatalystWorkflowDevelopmentRole-spaceName rol con esta acción. Para obtener más información acerca de este rol, consulte Crear el CodeCatalystWorkflowDevelopmentRole-spaceNamerol para su cuenta y su espacio. Ten en cuenta que el CodeCatalystWorkflowDevelopmentRole-spaceName rol tiene permisos de acceso total, lo que puede suponer un riesgo para la seguridad. Te recomendamos que solo utilices este rol en los tutoriales y en situaciones en las que la seguridad sea un problema menor.

aviso

Limite los permisos a los necesarios para las acciones de compilación y prueba. El uso de un rol con permisos más amplios puede suponer un riesgo de seguridad.

Interfaz de usuario correspondiente: la configuración tab/Environment/What está en my-environment? /menú de tres puntos/ Cambiar rol

Caching

(action-name/Caching)

(Opcional)

Una sección en la que puede especificar una memoria caché para guardar los archivos en el disco y restaurarlos desde esa memoria caché en las siguientes ejecuciones del flujo de trabajo.

Para obtener más información sobre el almacenamiento en caché de archivos, consulte. Almacenamiento en caché de archivos entre ejecuciones de flujos de trabajo

Interfaz de usuario correspondiente: pestaña de configuración/almacenamiento en caché de archivos: opcional

FileCaching

(action-name/Caching/FileCaching)

(Opcional)

Una sección que especifica la configuración de una secuencia de cachés.

Interfaz de usuario correspondiente: pestaña de configuración/Almacenamiento en caché de archivos (opcional)/Agregar caché

nombre-clave-1

(action-name/Caching/FileCaching/key-name-1)

(Opcional)

Especifique el nombre de su propiedad de caché principal. Los nombres de las propiedades de la caché deben ser únicos en el flujo de trabajo. Cada acción puede tener hasta cinco entradasFileCaching.

Interfaz de usuario correspondiente: tab/File caching - optional/Add caché/clave de configuración

Path

(action-name/Caching/FileCaching/key-name-1/Path)

(Opcional)

Especifique la ruta asociada a la memoria caché.

Interfaz de usuario correspondiente: tab/File caching - optional/Add caché o ruta de configuración

RestoreKeys

(action-name/Caching/FileCaching/key-name-1/RestoreKeys)

(Opcional)

Especifique la clave de restauración que se utilizará como alternativa cuando no se pueda encontrar la propiedad principal de la caché. Los nombres de las claves de restauración deben ser exclusivos de su flujo de trabajo. Cada caché puede contener hasta cinco entradasRestoreKeys.

Interfaz de usuario correspondiente: tab/File caching - optional/Add caché de configuración/claves de restauración (opcional)

Inputs

(action-name/Inputs)

(Opcional)

La Inputs sección define los datos que necesita una acción durante la ejecución de un flujo de trabajo.

nota

Se permite un máximo de cuatro entradas (una fuente y tres artefactos) por acción de construcción o acción de prueba. Las variables no se tienen en cuenta para este total.

Si necesita hacer referencia a archivos que se encuentran en entradas diferentes (por ejemplo, una fuente y un artefacto), la entrada de origen es la entrada principal y el artefacto es la entrada secundaria. Las referencias a los archivos en las entradas secundarias llevan un prefijo especial para distinguirlas de las principales. Para obtener más información, consulte Ejemplo: hacer referencia a archivos en varios artefactos.

Interfaz de usuario correspondiente: pestaña de entradas

Sources

(action-name/Inputs/Sources)

(Opcional)

Especifique las etiquetas que representan los repositorios de origen que necesitará la acción. Actualmente, la única etiqueta admitida es WorkflowSource la que representa el repositorio de origen en el que se almacena el archivo de definición de flujo de trabajo.

Si omite una fuente, debe especificar al menos un artefacto de entrada en ella. action-name/Inputs/Artifacts

Para obtener más información sobre orígenes, consulte Conexión de repositorios de origen a flujos de trabajo.

Interfaz de usuario correspondiente: ninguna

Artifacts - input

(action-name/Inputs/Artifacts)

(Opcional)

Especifique los artefactos de acciones anteriores que desee proporcionar como entrada a esta acción. Estos artefactos ya deben estar definidos como artefactos de salida en acciones anteriores.

Si no especifica ningún artefacto de entrada, debe especificar al menos un repositorio de origen en élaction-name/Inputs/Sources.

Para obtener más información sobre los artefactos, incluidos ejemplos, consulteCompartir artefactos y archivos entre acciones.

nota

Si la lista desplegable Artefactos (opcional) no está disponible (editor visual) o si se producen errores al validar el YAML archivo (YAMLeditor), es posible que la acción solo admita una entrada. En este caso, intenta eliminar la entrada de origen.

Interfaz de usuario correspondiente: pestaña de entradas/Artefactos (opcional)

Variables - input

(action-name/Inputs/Variables)

(Opcional)

Especifique una secuencia de pares de nombre/valor que definan las variables de entrada que desea poner a disposición de la acción. Los nombres de las variables se limitan a caracteres alfanuméricos (a-z, A-Z, 0-9), guiones (-) y guiones bajos (_). No se permiten espacios. No puede usar comillas para habilitar los caracteres especiales y los espacios en los nombres de las variables.

Para obtener más información sobre las variables, incluidos ejemplos, consulteUso de variables en los flujos de trabajo.

Interfaz de usuario correspondiente: pestaña de entradas/variables: opcional

Outputs

(action-name/Outputs)

(Opcional)

Define los datos que genera la acción durante la ejecución de un flujo de trabajo.

Interfaz de usuario correspondiente: pestaña de salidas

Artifacts - output

(action-name/Outputs/Artifacts)

(Opcional)

Especifique el nombre de un artefacto generado por la acción. Los nombres de los artefactos deben ser únicos dentro de un flujo de trabajo y están limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) y guiones bajos (_). No se permiten espacios, guiones (-) ni otros caracteres especiales. No puede usar comillas para habilitar los espacios, guiones y otros caracteres especiales en los nombres de los artefactos de salida.

Para obtener más información sobre los artefactos, incluidos ejemplos, consulte. Compartir artefactos y archivos entre acciones

Interfaz de usuario correspondiente: pestaña de salidas/artefactos

Name

(action-name/Outputs/Artifacts/Name)

(Obligatorio si Artifacts - output está incluido)

Especifique el nombre de un artefacto generado por la acción. Los nombres de los artefactos deben ser únicos dentro de un flujo de trabajo y están limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) y guiones bajos (_). No se permiten espacios, guiones (-) ni otros caracteres especiales. No puede usar comillas para habilitar los espacios, guiones y otros caracteres especiales en los nombres de los artefactos de salida.

Para obtener más información sobre los artefactos, incluidos ejemplos, consulte. Compartir artefactos y archivos entre acciones

Interfaz de usuario correspondiente: tab/Artifacts/New salida o crea el nombre del artefacto

Files

(action-name/Outputs/Artifacts/Files)

(Obligatorio si está incluidoArtifacts - output)

Especifique los archivos que se CodeCatalyst incluyen en el artefacto que se genera con la acción. Estos archivos los genera la acción del flujo de trabajo cuando se ejecuta y también están disponibles en el repositorio de origen. Las rutas de los archivos pueden residir en un repositorio de origen o en un artefacto de una acción anterior y son relativas al repositorio de origen o a la raíz del artefacto. Puede utilizar patrones globales para especificar las rutas. Ejemplos:

  • Para especificar un único archivo que esté en la raíz de la ubicación de compilación o de la ubicación del repositorio de origen, utilice my-file.jar.

  • Para especificar un único archivo en un subdirectorio, use directory/my-file.jar o directory/subdirectory/my-file.jar.

  • Para especificar todos los archivos, utilice "**/*". El patrón glob de ** indica que debe coincidir con cualquier número de subdirectorios.

  • Para especificar todos los archivos y directorios de un directorio denominado directory, utilice "directory/**/*". El patrón glob de ** indica que debe coincidir con cualquier número de subdirectorios.

  • Para especificar todos los archivos de un directorio denominado directory, pero no ninguno de sus subdirectorios, utilice "directory/*".

nota

Si la ruta del archivo incluye uno o más asteriscos (*) u otro carácter especial, escriba la ruta entre comillas dobles (). "" Para obtener más información sobre los caracteres especiales, consulte. Pautas y convenciones de sintaxis

Para obtener más información sobre los artefactos, incluidos ejemplos, consulteCompartir artefactos y archivos entre acciones.

nota

Puede que tenga que añadir un prefijo a la ruta del archivo para indicar en qué artefacto o fuente puede encontrarlo. Para obtener más información, consulte Hacer referencia a los archivos del repositorio de origen y Hacer referencia a archivos en un artefacto.

Interfaz de usuario correspondiente: genera la tab/Artifacts/New salida o los archivos producidos por la compilación

Variables - output

(action-name/Outputs/Variables)

(Opcional)

Especifique las variables que desea que exporte la acción para que estén disponibles para su uso en acciones posteriores.

Para obtener más información sobre las variables, incluidos ejemplos, consulteUso de variables en los flujos de trabajo.

Interfaz de usuario correspondiente: pestaña de salidas/Variables/ Añadir variable

nombre de la variable-1

(action-name/Outputs/Variables/variable-name-1)

(Opcional)

Especifique el nombre de la variable que desee que exporte la acción. Esta variable ya debe estar definida en la Steps sección Inputs o de la misma acción.

Para obtener más información sobre las variables, incluidos ejemplos, consulteUso de variables en los flujos de trabajo.

Interfaz de usuario correspondiente: tab/Variables/Add Variable/nombre de salida

AutoDiscoverReports

(action-name/Outputs/AutoDiscoverReports)

(Opcional)

Define la configuración de la función de detección automática.

Al habilitar la detección automática, CodeCatalyst busca todos los archivos Inputs transferidos a la acción, así como todos los archivos generados por la propia acción, buscando informes de pruebas, cobertura de código y análisis de composición de software (SCA). Para cada informe que encuentre, lo CodeCatalyst transforma en un CodeCatalyst informe. Un CodeCatalyst informe es un informe que está totalmente integrado en el CodeCatalyst servicio y se puede ver y manipular a través de la CodeCatalyst consola.

nota

De forma predeterminada, la función de detección automática inspecciona todos los archivos. Puede limitar los archivos que se inspeccionan mediante las propiedades IncludePaths oExcludePaths.

Interfaz de usuario correspondiente: pestaña de salidas/informes/informes de detección automática

Enabled

(action-name/Outputs/AutoDiscoverReports/Enabled)

(Opcional)

Activa o desactiva la función de detección automática.

Los valores válidos son true o false.

Si Enabled se omite, el valor predeterminado es. true

Interfaz de usuario correspondiente: pestaña de salidas/informes/informes de detección automática

ReportNamePrefix

(action-name/Outputs/AutoDiscoverReports/ReportNamePrefix)

(Obligatorio si está AutoDiscoverReports incluido y activado)

Especifique un prefijo que CodeCatalyst preceda a todos los informes que encuentre para asignar un nombre a los informes asociados. CodeCatalyst Por ejemplo, si especifica un prefijo de AutoDiscovered y CodeCatalyst descubre automáticamente dos informes de pruebas TestSuiteOne.xml yTestSuiteTwo.xml, los CodeCatalyst informes asociados se AutoDiscoveredTestSuiteOne denominarán y. AutoDiscoveredTestSuiteTwo

Interfaz de usuario correspondiente: pestaña de resultados, informes y nombre del prefijo

IncludePaths

(action-name/Outputs/AutoDiscoverReports/IncludePaths)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/IncludePaths)

(Obligatorio si AutoDiscoverReports está incluido y activado, o si está incluido) Reports

Especifique los archivos y las rutas de archivo que se CodeCatalyst incluyen al buscar informes sin procesar. Por ejemplo, si lo especificas"/test/report/*", CodeCatalyst busca en el /test/report/* directorio toda la imagen de compilación utilizada por la acción. Cuando encuentra ese directorio, CodeCatalyst busca los informes en ese directorio.

nota

Si la ruta del archivo incluye uno o más asteriscos (*) u otros caracteres especiales, escriba la ruta entre comillas dobles (). "" Para obtener más información sobre los caracteres especiales, consulte. Pautas y convenciones de sintaxis

Si se omite esta propiedad, será la predeterminada"**/*", lo que significa que la búsqueda incluirá todos los archivos de todas las rutas.

nota

En el caso de los informes configurados manualmente, IncludePaths debe ser un patrón global que coincida con un único archivo.

Interfaz de usuario correspondiente:

  • Rutas de tab/Reports/Auto-discover reports/Include/exclude salida/incluye rutas

  • Las salidas tab/Reports/Manually configuran los informes/report-name-1/include/Excluir rutas/ Incluir rutas

ExcludePaths

(action-name/Outputs/AutoDiscoverReports/ExcludePaths)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/ExcludePaths)

(Opcional)

Especifique los archivos y las rutas de archivo que se CodeCatalyst excluyen al buscar informes sin procesar. Por ejemplo, si lo especifica"/test/my-reports/**/*", no CodeCatalyst buscará archivos en el /test/my-reports/ directorio. Para ignorar todos los archivos de un directorio, utilice el patrón **/* global.

nota

Si la ruta del archivo incluye uno o más asteriscos (*) u otros caracteres especiales, escriba la ruta entre comillas dobles (). "" Para obtener más información sobre los caracteres especiales, consulte. Pautas y convenciones de sintaxis

Interfaz de usuario correspondiente:

  • Rutas de salida o tab/Reports/Auto-discover reports/Include/exclude excluyen rutas

  • Las salidas tab/Reports/Manually configuran los informes/report-name-1/Include/Excluir rutas/ Excluir rutas

SuccessCriteria

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria)

(Opcional)

Especifique los criterios de éxito de los informes de prueba, cobertura del código, análisis de composición del software (SCA) y análisis estático (SA).

Para obtener más información, consulte Configurar los criterios de éxito de los informes.

Interfaz de usuario correspondiente: pestaña de salida/informes/criterios de éxito

PassRate

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/PassRate)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/PassRate)

(Opcional)

Especifique el porcentaje de pruebas en un informe de prueba que deben aprobarse para que el CodeCatalyst informe asociado se marque como aprobado. Los valores válidos incluyen los números decimales. Por ejemplo: 50, 60.5. Los criterios de porcentaje de aprobados se aplican únicamente a los informes de las pruebas. Para obtener más información sobre los informes de las pruebas, consulteInformes de pruebas.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida/tasa de aprobación

LineCoverage

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/LineCoverage)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/LineCoverage)

(Opcional)

Especifique el porcentaje de líneas de un informe de cobertura de código que deben cubrirse para que el CodeCatalyst informe asociado se marque como aprobado. Los valores válidos incluyen los números decimales. Por ejemplo: 50, 60.5. Los criterios de cobertura de línea se aplican únicamente a los informes de cobertura de código. Para obtener más información sobre los informes de cobertura de código, consulteInformes de cobertura de código.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida/cobertura de línea

BranchCoverage

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/BranchCoverage)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/BranchCoverage)

(Opcional)

Especifique el porcentaje de ramas en un informe de cobertura de código que deben cubrirse para que el CodeCatalyst informe asociado se marque como aprobado. Los valores válidos incluyen los números decimales. Por ejemplo: 50, 60.5. Los criterios de cobertura de las sucursales se aplican únicamente a los informes de cobertura de códigos. Para obtener más información sobre los informes de cobertura de código, consulteInformes de cobertura de código.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida/cobertura de sucursales

Vulnerabilities

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/Vulnerabilities)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/Vulnerabilities)

(Opcional)

Especifique el número máximo y la gravedad de las vulnerabilidades permitidas en el SCA informe para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar las vulnerabilidades, debe especificar:

  • La gravedad mínima de las vulnerabilidades que desea incluir en el recuento. Los valores válidos, del más grave al menos grave, son:CRITICAL,HIGH,MEDIUM,LOW,INFORMATIONAL.

    Por ejemplo, si lo eligeHIGH, se HIGH contabilizarán CRITICAL las vulnerabilidades.

  • El número máximo de vulnerabilidades de la gravedad especificada que desea permitir. Si se supera este número, el CodeCatalyst informe se marca como fallido. Los valores válidos son números enteros.

Los criterios de vulnerabilidad se aplican únicamente a SCA los informes. Para obtener más información sobre SCA los informes, consulteInformes de análisis de composición de software.

Para especificar la gravedad mínima, utilice la Severity propiedad. Para especificar el número máximo de vulnerabilidades, utilice la Number propiedad.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida o vulnerabilidades

StaticAnalysisBug

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisBug)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisBug)

(Opcional)

Especifique el número máximo y la gravedad de los errores permitidos en el informe de la SA para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar los errores, debe especificar:

  • La gravedad mínima de los errores que quieres incluir en el recuento. Los valores válidos, del más grave al menos grave, son:CRITICAL,HIGH,MEDIUM,LOW,INFORMATIONAL.

    Por ejemplo, si lo eligesHIGH, se HIGH contabilizarán CRITICAL los errores.

  • El número máximo de errores de la gravedad especificada que deseas permitir. Si se supera este número, el CodeCatalyst informe se marca como fallido. Los valores válidos son números enteros.

Los criterios de errores se aplican únicamente a PyLint los informes de ESLint SA. Para obtener más información sobre los informes de SA, consulteInformes de análisis estáticos.

Para especificar la gravedad mínima, utilice la Severity propiedad. Para especificar el número máximo de vulnerabilidades, utilice la Number propiedad.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida o errores

StaticAnalysisSecurity

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisSecurity)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisSecurity)

(Opcional)

Especifique el número máximo y la gravedad de las vulnerabilidades de seguridad permitidas en el informe de la SA para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar las vulnerabilidades de seguridad, debe especificar:

  • La gravedad mínima de las vulnerabilidades de seguridad que desea incluir en el recuento. Los valores válidos, del más grave al menos grave, son:CRITICAL,HIGH,MEDIUM,LOW,INFORMATIONAL.

    Por ejemplo, si lo deseaHIGH, se HIGH contabilizarán las vulnerabilidades de CRITICAL seguridad.

  • El número máximo de vulnerabilidades de seguridad de la gravedad especificada que desea permitir. Si se supera este número, el CodeCatalyst informe se marca como fallido. Los valores válidos son números enteros.

Los criterios de vulnerabilidad de seguridad se aplican únicamente a PyLint los informes de ESLint SA. Para obtener más información sobre los informes de SA, consulteInformes de análisis estáticos.

Para especificar la gravedad mínima, utilice la Severity propiedad. Para especificar el número máximo de vulnerabilidades, utilice la Number propiedad.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida o vulnerabilidades de seguridad

StaticAnalysisQuality

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisQuality)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisQuality)

(Opcional)

Especifique el número máximo y la gravedad de los problemas de calidad permitidos en el informe de la SA para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar los problemas de calidad, debe especificar:

  • La gravedad mínima de los problemas de calidad que desea incluir en el recuento. Los valores válidos, del más grave al menos grave, son:CRITICAL,HIGH,MEDIUM,LOW,INFORMATIONAL.

    Por ejemplo, si lo deseaHIGH, se HIGH contabilizarán los problemas de CRITICAL calidad.

  • El número máximo de problemas de calidad de la gravedad especificada que desee permitir. Si se supera este número, el CodeCatalyst informe se marca como fallido. Los valores válidos son números enteros.

Los criterios de calidad se aplican únicamente a PyLint los informes ESLint SA. Para obtener más información sobre los informes de SA, consulteInformes de análisis estáticos.

Para especificar la gravedad mínima, utilice la Severity propiedad. Para especificar el número máximo de vulnerabilidades, utilice la Number propiedad.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida o problemas de calidad

StaticAnalysisFinding

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisFinding)

Or (Disyunción)

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisFinding)

(Opcional)

Especifique el número máximo y la gravedad de las conclusiones permitidas en el informe de la SA para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar los resultados, debe especificar:

  • La gravedad mínima de los hallazgos que desea incluir en el recuento. Los valores válidos, del más grave al menos grave, son:CRITICAL,HIGH,MEDIUM,LOW,INFORMATIONAL.

    Por ejemplo, si lo eligeHIGH, se HIGH contabilizarán CRITICAL los resultados.

  • El número máximo de hallazgos de la gravedad especificada que desee permitir. Si se supera este número, el CodeCatalyst informe se marca como fallido. Los valores válidos son números enteros.

Los resultados se aplican únicamente a los informes de SARIF SA. Para obtener más información sobre los informes de SA, consulteInformes de análisis estáticos.

Para especificar la gravedad mínima, utilice la Severity propiedad. Para especificar el número máximo de vulnerabilidades, utilice la Number propiedad.

Interfaz de usuario correspondiente: tab/Reports/Success criterios de salida y hallazgos

Reports

(action-name/Outputs/Reports )

(Opcional)

Una sección que especifica la configuración de los informes de las pruebas.

Interfaz de usuario correspondiente: pestaña de salidas/informes

nombre-informe-1

(action-name/Outputs/Reports/nombre-informe-1)

(Obligatorio si está incluido) Reports

El nombre que desea asignar al CodeCatalyst informe que se generará a partir de los informes sin procesar.

Interfaz de usuario correspondiente: los resultados tab/Reports/Manually configuran los informes o el nombre del informe

Format

(action-name/Outputs/Reports/report-name-1/Format)

(Obligatorio si Reports está incluido)

Especifique el formato de archivo que va a utilizar para sus informes. Los valores posibles son los siguientes.

  • Para los informes de prueba:

    • Para CucumberJSON, especifique Cucumber (editor visual) o CUCUMBERJSON (YAMLeditor).

    • Para JUnitXML, especifique JUnit(editor visual) o JUNITXML (YAMLeditor).

    • Para NUnitXML, especifique NUnit(editor visual) o NUNITXML (YAMLeditor).

    • Para NUnit 3XML, especifique NUnit3(editor visual) o NUNIT3XML (YAMLeditor).

    • Para Visual StudioTRX, especifique Visual Studio TRX (editor visual) o VISUALSTUDIOTRX (YAMLeditor).

    • Para TestNGXML, especifique TestNG (editor visual) o TESTNGXML (editor). YAML

  • Para los informes de cobertura de código:

    • Para CloverXML, especifique Clover (editor visual) o CLOVERXML (YAMLeditor).

    • XMLEn Cobertura, especifique Cobertura (editor visual) o COBERTURAXML (YAMLeditor).

    • Para JaCoCo XML, especifique JaCoCo(editor visual) o JACOCOXML (YAMLeditor).

    • Para SimpleCov JSON generado por simplecov, no por simplecov-json, especifique Simplecov (editor visual) o (editor). SIMPLECOV YAML

  • Para los informes SCA de análisis de composición de software ():

    • ParaSARIF, especifique SARIF(editor visual) o SARIFSCA (YAMLeditor).

Interfaz de usuario correspondiente: genera tab/Reports/Manually configure reports/Add/configure informes/report-name-1/Tipo de informe y formato de informe

Configuration

(action-name/Configuration)

(Obligatorio) Una sección en la que puede definir las propiedades de configuración de la acción.

Interfaz de usuario correspondiente: pestaña de configuración

Container

(action-name/Configuration/Container)

(Opcional)

Especifique la imagen de Docker, o el contenedor, que utilizará la acción para completar su procesamiento. Puede especificar una de las imágenes activas incluidas o puede usar la suya propia. CodeCatalyst Si eliges usar tu propia imagen, puede residir en AmazonECR, Docker Hub u otro registro. Si no especificas una imagen de Docker, la acción utilizará una de las imágenes activas para su procesamiento. Para obtener información sobre qué imagen activa se usa de forma predeterminada, consulteImágenes activas.

Para obtener más información sobre cómo especificar su propia imagen de Docker, consulteAsignación de una imagen de Docker de un entorno de ejecución personalizado a una acción.

Interfaz de usuario correspondiente: imagen de Docker del entorno de ejecución (opcional)

Registry

(action-name/Configuration/Container/Registry)

(Obligatorio si Container está incluido)

Especifique el registro en el que se guarda la imagen. Los valores válidos son:

  • CODECATALYST(YAMLeditor)

    La imagen se guarda en el CodeCatalyst registro.

  • Docker Hub (editor visual) o DockerHub (YAMLeditor)

    La imagen se almacena en el registro de imágenes de Docker Hub.

  • Otro registro (editor visual) o Other (YAMLeditor)

    La imagen se guarda en un registro de imágenes personalizado. Se puede utilizar cualquier registro disponible públicamente.

  • Amazon Elastic Container Registry (editor visual) o ECR (YAMLeditor)

    La imagen se almacena en un repositorio de imágenes de Amazon Elastic Container Registry. Para usar una imagen en un ECR repositorio de Amazon, esta acción necesita acceso a AmazonECR. Para habilitar este acceso, debes crear un IAMrol que incluya los siguientes permisos y una política de confianza personalizada. (Si lo desea, puede modificar un rol existente para incluir los permisos y la política).

    El IAM rol debe incluir los siguientes permisos en su política de roles:

    • ecr:BatchCheckLayerAvailability

    • ecr:BatchGetImage

    • ecr:GetAuthorizationToken

    • ecr:GetDownloadUrlForLayer

    El IAM rol debe incluir la siguiente política de confianza personalizada:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

    Para obtener más información sobre la creación de IAM roles, consulte Creación de un rol mediante políticas de confianza personalizadas (consola) en la Guía del IAM usuario.

    Una vez que haya creado el rol, debe asignarlo a la acción a través de un entorno. Para obtener más información, consulte Asociar un entorno a una acción.

Interfaz de usuario correspondiente: Amazon Elastic Container Registry, Docker Hub y otras opciones de registro

Image

(action-name/Configuration/Container/Image)

(Obligatorio si Container está incluido)

Especifique uno de los siguientes valores:

  • Si utiliza un CODECATALYST registro, defina la imagen en una de las siguientes imágenes activas:

    • 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

  • Si utiliza un registro de Docker Hub, defina la imagen con el nombre de la imagen de Docker Hub y la etiqueta opcional.

    Ejemplo: postgres:latest

  • Si utilizas un ECR registro de Amazon, configura la imagen en el ECR registro de AmazonURI.

    Ejemplo: 111122223333.dkr.ecr.us-west-2.amazonaws.com/codecatalyst-ecs-image-repo

  • Si utilizas un registro personalizado, establece la imagen en el valor esperado por el registro personalizado.

Interfaz de usuario correspondiente: imagen de docker del entorno de ejecución (si el registro esCODECATALYST), imagen de Docker Hub (si el registro es Docker Hub), ECRimagen URL (si el registro es Amazon Elastic Container Registry) e imagen URL (si el registro es Otro registro).

Steps

(action-name/Configuration/Steps)

(Obligatorio)

Especifique los comandos de shell que desea ejecutar durante la acción para instalar, configurar y ejecutar las herramientas de compilación.

Este es un ejemplo de cómo crear un proyecto de npm:

Steps: - Run: npm install - Run: npm run build

A continuación, se muestra un ejemplo de cómo especificar las rutas de los archivos:

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 obtener más información sobre cómo especificar las rutas de los archivos, consulte Hacer referencia a los archivos del repositorio de origen yHacer referencia a archivos en un artefacto.

Interfaz de usuario correspondiente: pestaña de configuración/comandos de shell

Packages

(action-name/Configuration/Packages)

(Opcional)

Una sección en la que puede especificar un repositorio de paquetes que la acción utilizará para resolver las dependencias. Los paquetes permiten almacenar y compartir de forma segura los paquetes de software utilizados para el desarrollo de aplicaciones.

Para obtener más información sobre los paquetes, consultePublica y comparte paquetes de software en CodeCatalyst.

Interfaz de usuario correspondiente: pestaña de configuración/paquetes

NpmConfiguration

(action-name/Configuration/Packages/NpmConfiguration)

(Obligatorio si Packages está incluido)

Una sección que define la configuración del formato del paquete npm. Una acción utiliza esta configuración durante la ejecución de un flujo de trabajo.

Para obtener más información sobre la configuración del paquete npm, consulteCon npm.

Interfaz de usuario correspondiente: Configuration tab/Packages/Add configuration/ npm

PackageRegistries

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries)

(Obligatorio si está incluidoPackages)

Una sección en la que puede definir las propiedades de configuración de una secuencia de repositorios de paquetes.

Interfaz de usuario correspondiente: Configuracióntab/Packages/Add configuration/npm/Agregar repositorio de paquetes

PackagesRepository

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries/PackagesRepository)

(Obligatorio si Packages está incluido)

Especifique el nombre del repositorio de CodeCatalyst paquetes que desea que utilice la acción.

Si especificas varios repositorios predeterminados, el último repositorio tendrá prioridad.

Para obtener más información sobre los repositorios de paquetes, consulte. Repositorios de paquetes

Interfaz de usuario correspondiente: repositorio de tab/Packages/Add configuration/npm/Add paquetes de configuración/repositorio de paquetes

Scopes

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries/Scopes)

(Opcional)

Especifique la secuencia de ámbitos que desee definir en el registro de paquetes. Al definir los ámbitos, el repositorio de paquetes especificado se configura como el registro de todos los ámbitos de la lista. Si se solicita un paquete con ese alcance a través del cliente npm, utilizará ese repositorio en lugar del predeterminado. El nombre de cada ámbito debe tener el prefijo «@».

Si incluye ámbitos principales, el último repositorio tendrá prioridad.

Si Scopes se omite, el repositorio de paquetes especificado se configura como el registro predeterminado para todos los paquetes utilizados por la acción.

Para obtener más información sobre los ámbitos, consulte Paquetes Espacios de nombres de paquetes con ámbito.

Interfaz de usuario correspondiente: repositorio de tab/Packages/Add configuration/npm/Add paquetes de configuración/Ámbitos: opcional

ExportAuthorizationToken

(action-name/Configuration/Packages/ExportAuthorizationToken)

(Opcional)

Activa o desactiva la función de token de autorización de exportación. Si está habilitada, los tokens de autorización exportados se pueden usar para configurar manualmente un administrador de paquetes para autenticarse en los repositorios de CodeCatalyst paquetes. Puede usar el token como una variable de entorno a la que se puede hacer referencia en sus acciones.

Los valores válidos son true o false.

Si ExportAuthorizationToken se omite, el valor predeterminado esfalse.

Para obtener más información sobre el token de autorización de exportación, consulteUso de tokens de autorización en las acciones del flujo de trabajo.

Interfaz de usuario correspondiente: pestaña de configuración/paquetes/token de autorización de exportación