

Amazon ya no CodeCatalyst está abierto a nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Cómo migrar desde CodeCatalyst](migration.md).

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.

# Conceptos de los flujos de trabajo
<a name="workflows-concepts"></a>

Estos son algunos conceptos y términos que debes conocer a la hora de crear, probar o implementar tu código con flujos de trabajo integrados CodeCatalyst.

## Flujos de trabajo
<a name="workflows-concepts-workflows"></a>

Un *flujo de trabajo* es un procedimiento automatizado que describe cómo compilar, probar e implementar su código como parte de un sistema de integración y entrega continuas (CI/CD). Un flujo de trabajo define una serie de pasos o *acciones* que se realizan durante la ejecución de un flujo de trabajo. Un flujo de trabajo también define los eventos, o *desencadenadores*, que activan el inicio del flujo de trabajo. Para configurar un flujo de trabajo, debes crear un *archivo de definición del flujo* de trabajo mediante el [editor visual o YAML](https://docs.aws.amazon.com//codecatalyst/latest/userguide/flows.html#workflow.editors) de la CodeCatalyst consola.

**sugerencia**  
Para ver rápidamente cómo se pueden utilizar los flujos de trabajo en un proyecto, [cree un proyecto con un esquema](https://docs.aws.amazon.com//codecatalyst/latest/userguide/projects-create.html#projects-create-console-template). Cada esquema implementa un flujo de trabajo funcional que puede revisar, ejecutar y probar.

## Archivos de definición de flujo de trabajo
<a name="workflows-concepts-workflows-def"></a>

Un *archivo de definición de flujo de trabajo* es un archivo YAML que describe su flujo de trabajo. De forma predeterminada, el archivo se almacena en una carpeta `~/.codecatalyst/workflows/` en el directorio raíz del [repositorio de código fuente](source-repositories.md). El archivo puede tener la extensión .yml o .yaml, y la extensión debe estar en minúsculas.

Para obtener más información sobre el archivo de definición del flujo de trabajo, consulte [Definición de flujo de trabajo en YAML](workflow-reference.md).

## Acciones
<a name="workflows-concepts-actions"></a>

Una *acción* es el componente principal de un flujo de trabajo y define una unidad lógica de trabajo, o una tarea, que se realiza durante la ejecución de un flujo de trabajo. Por lo general, un flujo de trabajo incluye varias acciones que se ejecutan de forma secuencial o paralela en función de cómo se hayan configurado.

Para obtener más información sobre las acciones, consulte [Configuración de acciones de flujo de trabajo](workflows-actions.md).

## Grupos de acciones
<a name="workflows-concepts-action-groups"></a>

Un *grupo de acciones* contiene una o más acciones. Agrupar las acciones en grupos de acciones le ayuda a mantener el flujo de trabajo organizado y también le permite configurar las dependencias entre los distintos grupos.

Para obtener más información sobre los grupos de acciones, consulte [Agrupación de acciones en grupos de acciones](workflows-group-actions.md).

## Artefactos
<a name="workflows-concepts-artifacts"></a>

Un *artefacto* es el resultado de una acción de flujo de trabajo y, por lo general, consiste en una carpeta o un archivo de archivos. Los artefactos son importantes porque permiten compartir archivos e información entre acciones.

Para obtener más información acerca de los artefactos, consulte [Cómo compartir artefactos y archivos entre acciones](workflows-working-artifacts.md).

## Computación
<a name="workflows-concepts-compute"></a>

La *computación* hace referencia al motor informático (la CPU, la memoria y el sistema operativo) que administra y mantiene CodeCatalyst para ejecutar las acciones del flujo de trabajo.

Para obtener más información acerca de la computación, consulte [Configuración de imágenes de computación y tiempo de ejecución](workflows-working-compute.md).

## Entornos
<a name="workflows-concepts-environments"></a>

Un CodeCatalyst *entorno*, que no debe confundirse con un [entorno de desarrollo](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment.html), define la Amazon VPC de destino Cuenta de AWS y opcional a la que se conecta un CodeCatalyst [flujo de trabajo](workflow.md). Un entorno también define la [función de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) que necesita un flujo de trabajo para acceder a los AWS servicios y recursos de la cuenta de destino.

Puede configurar varios entornos y asignarles nombres, como desarrollo, pruebas, almacenamiento provisional y producción. Al realizar un despliegue en estos entornos, la información sobre los despliegues aparece en las pestañas **Actividad de CodeCatalyst despliegue** y **Objetivos de despliegue** del entorno.

Para obtener más información sobre los entornos, consulte [Implementación en Cuentas de AWS y VPCs](deploy-environments.md).

## Puertas
<a name="workflows-concepts-gates"></a>

Una *puerta* es un componente de flujo de trabajo que se puede utilizar para impedir que la ejecución de un flujo de trabajo continúe a menos que se cumplan determinadas condiciones. Un ejemplo de puerta es la puerta de **aprobación**, en la que los usuarios deben enviar una aprobación en la CodeCatalyst consola antes de permitir que continúe la ejecución del flujo de trabajo.

Puede añadir puertas entre las secuencias de acciones de un flujo de trabajo o antes de la primera acción (que se ejecuta inmediatamente después de descargar el **Origen**). También puede agregar puertas después de la última acción, si es necesario.

Para obtener más información acerca de las puertas, consulte [Uso de puertas en una ejecución de flujo de trabajo](workflows-gates.md).

## Informes
<a name="workflows-concepts-test-reports"></a>

Un *informe* contiene detalles sobre las pruebas que se realizan durante la ejecución de un flujo de trabajo. Puede crear informes como un informe de prueba, un informe de cobertura de código, un informe de análisis de la composición del software y un informe de análisis estático. Puede utilizar un informe para solucionar un problema durante un flujo de trabajo. Si tiene muchos informes de varios flujos de trabajo, puede utilizarlos para ver las tendencias y las tasas de errores, lo que le ayudará a optimizar las aplicaciones y las configuraciones de implementación.

Para obtener más información acerca de los informes, consulte [Tipos de informes de calidad](test-workflow-actions.md#test-reporting).

## Ejecuciones
<a name="workflows-concepts-runs"></a>

Una *ejecución* es una iteración única de un flujo de trabajo. Durante una ejecución, CodeCatalyst realiza las acciones definidas en el archivo de configuración del flujo de trabajo y genera los registros, los artefactos y las variables asociados.

Para obtener más información acerca de las ejecuciones, consulte [Ejecución de un flujo de trabajo](workflows-working-runs.md).

## Orígenes
<a name="workflows-concepts-sources"></a>

Un *origen*, denominado también *origen de entrada*, es un repositorio de código fuente al que se conecta una [acción del flujo de trabajo](workflows-actions.md) para obtener los archivos que necesita para llevar a cabo sus operaciones. Por ejemplo, una acción de flujo de trabajo puede conectarse a un repositorio de código fuente para obtener los archivos de código fuente de la aplicación con el fin de compilar una aplicación.

Para obtener más información sobre orígenes, consulte [Conexión de repositorios de código fuente a flujos de trabajo](workflows-sources.md).

## Variables
<a name="workflows-concepts-variables"></a>

 Una *variable* es un par clave-valor que contiene información a la que puedes hacer referencia en tu flujo de trabajo de Amazon CodeCatalyst . La parte del valor de la variable se reemplaza por un valor real cuando se ejecuta el flujo de trabajo.

Para obtener más información acerca de las variables, consulte [Uso de variables en flujos de trabajo](workflows-working-with-variables.md).

## Desencadenadores de flujo de trabajo
<a name="workflows-concepts-triggers"></a>

Un *desencadenador de flujo de trabajo*, o simplemente un *desencadenador*, permite iniciar la ejecución automática de un flujo de trabajo cuando se producen determinados eventos, como una inserción de código. Es posible que desee configurar los activadores para evitar que los desarrolladores de software tengan que iniciar las ejecuciones del flujo de trabajo manualmente a través de la CodeCatalyst consola.

Puede utilizar tres tipos de desencadenadores:
+ **Inserción**: un desencadenador de inserción de código hace que se inicie la ejecución de un flujo de trabajo cada vez que se ejecute una confirmación.
+ **Solicitud de extracción**: un desencadenador de solicitud de extracción hace que se inicie la ejecución de un flujo de trabajo cada vez que se cree, revise o cierre una solicitud de extracción.
+ **Programación**: un desencadenador de programación hace que la ejecución de un flujo de trabajo comience según los plazos que defina. Plantéese la posibilidad de utilizar un desencadenador de programación para ejecutar compilaciones nocturnas de su software, de modo que la última versión esté lista para que los desarrolladores de software puedan trabajar en ella a la mañana siguiente.

Puede usar los desencadenadores de inserción, solicitud de extracción y programación solos o combinados en el mismo flujo de trabajo.

Los desencadenadores son opcionales; si no se configura ninguno, solo se puede iniciar un flujo de trabajo manualmente.

Para obtener más información acerca de los desencadenadores, consulte [Inicio de un flujo de trabajo y ejecución automática mediante desencadenadores](workflows-add-trigger.md).