

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.

# Integración con GitHub acciones
<a name="integrations-github-actions"></a>

Una *GitHub acción* se parece mucho a una [CodeCatalyst acción](workflows-actions.md#workflows-actions-types-cc), excepto que se desarrolló para su uso con GitHub flujos de trabajo. Para obtener más información sobre GitHub las acciones, consulte la documentación sobre [GitHub las acciones](https://docs.github.com/en/actions).

Puede utilizar GitHub las acciones junto con las CodeCatalyst acciones nativas en un CodeCatalyst flujo de trabajo.

Hay dos formas de añadir una GitHub acción a un CodeCatalyst flujo de trabajo:
+ Puedes seleccionar la GitHub acción de una lista seleccionada en la CodeCatalyst consola. Hay varias GitHub acciones populares disponibles. Para obtener más información, consulte [Añadir una GitHub acción seleccionada](integrations-github-action-add-curated.md).
+ Si la GitHub acción que quieres usar no está disponible en la CodeCatalyst consola, puedes añadirla mediante una acción de **GitHub Acciones**.

  Una acción de ***GitHub acciones*** es una *CodeCatalyst acción* que envuelve una GitHub acción y la hace compatible con los CodeCatalyst flujos de trabajo.

  A continuación se muestra un ejemplo de una acción de **GitHub acciones** que envuelve la acción de [SuperLinter](https://github.com/marketplace/actions/super-linter) GitHub:

  ```
  Actions:
    GitHubAction:
      Identifier: aws/github-actions-runner@v1
      Configuration:
        Steps:
          - name: Lint Code Base
            uses: github/super-linter@v4
            env:
              VALIDATE_ALL_CODEBASE: "true"
              DEFAULT_BRANCH: main
  ```

  En el código anterior, la acción CodeCatalyst **GitHub Actions** (identificada por`aws/github-actions-runner@v1`) envuelve la acción Super-Linter (identificada por`github/super-linter@v4`), lo que hace que funcione en un flujo de trabajo. CodeCatalyst 

  Para obtener más información, consulte [Añadir la GitHub acción «Acciones»](integrations-github-action-add.md).

Todas las GitHub acciones, tanto las seleccionadas como las no seleccionadas, deben estar incluidas en una acción de **GitHub Acciones** (`aws/github-actions-runner@v1`), como se muestra en el ejemplo anterior. El encapsulado es necesario para que la acción funcione correctamente. 

**Topics**
+ [¿En qué se diferencian las GitHub acciones de las acciones? CodeCatalyst](#integrations-github-actions-how-different)
+ [¿ GitHub Las acciones pueden interactuar con otras CodeCatalyst acciones del flujo de trabajo?](#integrations-github-actions-interactions.title)
+ [¿Qué GitHub acciones puedo usar?](#integrations-github-actions-supported)
+ [Limitaciones de GitHub las acciones en CodeCatalyst](#integrations-github-actions-limitations)
+ [¿Cómo añado una GitHub acción (pasos de alto nivel)?](#integrations-github-actions-how-to)
+ [¿Se ejecuta la GitHub acción GitHub?](#integrations-github-actions-where-it-runs)
+ [¿También puedo usar GitHub flujos de trabajo?](#integrations-github-actions-workflows-support.title)
+ [Imagen en tiempo de ejecución utilizada por la GitHub acción «Acciones»](#integrations-github-actions-runtime)
+ [Tutorial: código de Lint mediante una acción GitHub](integrations-github-action-tutorial.md)
+ [Añadir la GitHub acción «Acciones»](integrations-github-action-add.md)
+ [Añadir una GitHub acción seleccionada](integrations-github-action-add-curated.md)
+ [Exportación de los parámetros de salida de GitHub](integrations-github-action-export.md)
+ [Referencia a parámetros GitHub de salida](integrations-github-action-referencing.md)
+ [GitHub Acción «Acciones» YAML](github-action-ref.md)

## ¿En qué se diferencian las GitHub acciones de las acciones? CodeCatalyst
<a name="integrations-github-actions-how-different"></a>

GitHub Las acciones que se utilizan dentro de un CodeCatalyst flujo de trabajo no tienen el mismo nivel de acceso e integración ni las mismas CodeCatalyst características (como [los entornos](deploy-environments.md) y [los problemas](issues.md)) que CodeCatalyst las acciones. AWS 

## ¿ GitHub Las acciones pueden interactuar con otras CodeCatalyst acciones del flujo de trabajo?
<a name="integrations-github-actions-interactions.title"></a>

Sí. Por ejemplo, GitHub las acciones pueden usar variables generadas por otras CodeCatalyst acciones como entrada y también pueden compartir los parámetros y artefactos de salida con CodeCatalyst las acciones. Para obtener más información, consulte [Exportación de los parámetros de salida de GitHub](integrations-github-action-export.md) y [Referencia a parámetros GitHub de salida](integrations-github-action-referencing.md).

## ¿Qué GitHub acciones puedo usar?
<a name="integrations-github-actions-supported"></a>

Puedes usar cualquier GitHub acción disponible en la CodeCatalyst consola y cualquier GitHub acción disponible en [GitHubMarketplace](https://github.com/marketplace/actions). Si decides usar una GitHub Acción del Marketplace, ten en cuenta las siguientes [limitaciones](#integrations-github-actions-limitations).

## Limitaciones de GitHub las acciones en CodeCatalyst
<a name="integrations-github-actions-limitations"></a>
+ GitHub Las acciones no se pueden usar con el tipo de [cómputo CodeCatalyst Lambda](workflows-working-compute.md#compute.types).
+ GitHub Las acciones se ejecutan en la imagen de Docker del entorno de ejecución de [noviembre de 2022](build-images.md#build.previous-image), que incluye herramientas antiguas. Para obtener más información acerca de la imagen y las herramientas, consulte [Especificación de imágenes del entorno en tiempo de ejecución](build-images.md).
+ GitHub Las acciones que dependan internamente del [`github`contexto](https://docs.github.com/en/actions/learn-github-actions/contexts#github-context) o que hagan referencia a recursos GitHub específicos no funcionarán en ellas. CodeCatalyst Por ejemplo, las siguientes acciones no funcionarán en CodeCatalyst:
  + Acciones que intentan añadir, cambiar o actualizar GitHub recursos. Algunos ejemplos son las acciones que actualizan las solicitudes de cambios o que crean problemas en ellas GitHub.
  + Casi todas las acciones aparecen en [https://github.com/actions.](https://github.com/actions)
+ GitHub Las acciones que son [acciones de contenedor de Docker](https://docs.github.com/en/actions/creating-actions/about-custom-actions#docker-container-actions) funcionarán, pero debe ejecutarlas el usuario predeterminado de Docker (root). No ejecute la acción como usuario 1001. (En el momento de escribir este artículo, el usuario 1001 trabaja en GitHub, pero no en CodeCatalyst). Para obtener más información, consulta el tema [USER](https://docs.github.com/en/actions/creating-actions/dockerfile-support-for-github-actions#user) en el [soporte de Dockerfile para GitHub Actions](https://docs.github.com/en/actions/creating-actions/dockerfile-support-for-github-actions).

Para ver una lista de GitHub las acciones disponibles en la CodeCatalyst consola, consulte. [Añadir una GitHub acción seleccionada](integrations-github-action-add-curated.md)

## ¿Cómo añado una GitHub acción (pasos de alto nivel)?
<a name="integrations-github-actions-how-to"></a>

Los pasos de alto nivel para añadir una GitHub acción a un CodeCatalyst flujo de trabajo son los siguientes:

1. En el CodeCatalyst proyecto, se **crea un flujo de trabajo**. El flujo de trabajo es el lugar en el que puede definir cómo compilar, probar e implementar la aplicación. Para obtener más información, consulte [Introducción a los flujos de trabajo](workflows-getting-started.md).

1. En el flujo de trabajo, se **añade una GitHub acción seleccionada** o se **añade la acción de GitHub acciones**.

1. Puede elegir una de las opciones siguientes:
   + Si elige añadir una acción seleccionada, configúrela. Para obtener más información, consulte [Añadir una GitHub acción seleccionada](integrations-github-action-add-curated.md).
   + **Si eliges añadir una acción no seleccionada, **pegas el GitHub código YAML de la GitHub acción dentro de** la acción.** Puedes encontrar este código en la página de detalles de la GitHub acción que hayas elegido en [GitHubMarketplace](https://github.com/marketplace/actions). Es probable que tengas que modificar ligeramente el código para que funcione CodeCatalyst. Para obtener más información, consulte [Añadir la GitHub acción «Acciones»](integrations-github-action-add.md).

1. (Opcional) Dentro del flujo de trabajo, **añada otras acciones**, como las acciones de compilación y prueba. Para obtener más información, consulte [Creación, pruebas e implementaciones con flujos de trabajoCreación, pruebas e implementaciones con flujos de trabajo](workflow.md).

1. **Inicie el flujo de trabajo** de forma manual o automática mediante un desencadenador. El flujo de trabajo ejecuta la GitHub acción y cualquier otra acción del flujo de trabajo. Para obtener más información, consulte [Inicio manual de la ejecución de un flujo de trabajo](workflows-manually-start.md).

Para ver los pasos detallados, consulte:
+ [Añadir una GitHub acción seleccionada](integrations-github-action-add-curated.md).
+ [Añadir la GitHub acción «Acciones»](integrations-github-action-add.md).

## ¿Se ejecuta la GitHub acción GitHub?
<a name="integrations-github-actions-where-it-runs"></a>

¿No?. La GitHub acción se ejecuta utilizando CodeCatalyst la [imagen del entorno de ejecución](workflows-working-compute.md). CodeCatalyst

## ¿También puedo usar GitHub flujos de trabajo?
<a name="integrations-github-actions-workflows-support.title"></a>

No.

## Imagen en tiempo de ejecución utilizada por la GitHub acción «Acciones»
<a name="integrations-github-actions-runtime"></a>

La acción CodeCatalyst **GitHub Acciones** se ejecuta en una [imagen de noviembre de 2022](build-images.md#build.previous-image). Para obtener más información, consulte [Imágenes activas](build-images.md#build-curated-images).

# Tutorial: código de Lint mediante una acción GitHub
<a name="integrations-github-action-tutorial"></a>

En este tutorial, añadirás la [ GitHub acción Super-Linter](https://github.com/marketplace/actions/super-linter) a un flujo de trabajo de Amazon CodeCatalyst . La acción Super-Linter inspecciona el código, encuentra áreas en las que el código contiene errores, problemas de formato y construcciones sospechosas y, a continuación, envía los resultados a la consola). CodeCatalyst Después de añadir el linter al flujo de trabajo, ejecute el flujo de trabajo para hacer una revisión lint de una aplicación de Node.js de muestra (`app.js`). A continuación, corrija los problemas detectados y vuelva a ejecutar el flujo de trabajo para comprobar si las soluciones han funcionado.

**sugerencia**  
Valore la posibilidad de usar Super-Linter para hacer una revisión lint en archivos YAML, como [plantillas de CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html).

**Topics**
+ [Requisitos previos](#integrations-github-action-tutorial-prereqs)
+ [Paso 1: crear un repositorio de código fuente](#integrations-github-action-tutorial-create-source-repo)
+ [Paso 2: añadir un archivo app.js](#integrations-github-action-tutorial-add-appjs)
+ [Paso 3: crear un flujo de trabajo que ejecute la acción Super-Linter](#integrations-github-action-tutorial-create-workflow)
+ [Paso 4: solucionar los problemas encontrados por Super-Linter](#integrations-github-action-tutorial-fix-probs)
+ [Limpieza](#integrations-github-action-tutorial-cleanup)

## Requisitos previos
<a name="integrations-github-action-tutorial-prereqs"></a>

Antes de comenzar, necesitará lo siguiente:
+ Un CodeCatalyst **espacio con un conectado.** Cuenta de AWS Para obtener más información, consulte [Creación de un espacio](spaces-create.md).
+ Se llama un proyecto vacío en tu CodeCatalyst espacio`codecatalyst-linter-project`. Use la opción **Empezar desde cero** para crear este proyecto.

  ```
  ```

  Para obtener más información, consulte [Crear un proyecto vacío en Amazon CodeCatalyst](projects-create.md#projects-create-empty).

## Paso 1: crear un repositorio de código fuente
<a name="integrations-github-action-tutorial-create-source-repo"></a>

En este paso, crearás un repositorio de origen en CodeCatalyst. Utilizará este repositorio para almacenar el archivo fuente de la aplicación de muestra (`app.js`) para este tutorial.

Para obtener más información sobre los repositorios de código fuente, consulte [Creación de un repositorio de código fuente](source-repositories-create.md).

**Creación de un repositorio de código fuente**

1. Abra la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Vaya a su proyecto, `codecatalyst-linter-project`.

1. En el panel de navegación, elija **Código** y, a continuación, elija **Repositorios de origen**. 

1. Elija **Agregar repositorio** y, a continuación, elija **Crear repositorio**.

1. En **Nombre del repositorio**, escriba:

   ```
   codecatalyst-linter-source-repository
   ```

1. Seleccione **Crear**.

## Paso 2: añadir un archivo app.js
<a name="integrations-github-action-tutorial-add-appjs"></a>

En este paso, añadirá un archivo `app.js` al repositorio de código fuente. El `app.js` contiene un código de función con algunos errores que el linter encontrará.

**Adición del archivo app.js**

1. En la CodeCatalyst consola, elige tu proyecto,`codecatalyst-linter-project`.

1. En el panel de navegación, elija **Código** y, a continuación, elija **Repositorios de origen**.

1. En la lista de repositorios de código fuente, elija su repositorio, `codecatalyst-linter-source-repository`.

1. En **Archivos**, elija **Crear archivo**.

1. En el cuadro de texto, introduzca el siguiente código:

   ```
   // const axios = require('axios')
   // const url = 'http://checkip.amazonaws.com/';
   let response;
   /**
    *
    * Event doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html#api-gateway-simple-proxy-for-lambda-input-format
    * @param {Object} event - API Gateway Lambda Proxy Input Format
    *
    * Context doc: https://docs.aws.amazon.com/lambda/latest/dg/nodejs-prog-model-context.html 
    * @param {Object} context
    *
    * Return doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html
    * @returns {Object} object - API Gateway Lambda Proxy Output Format
    *
    */
   exports.lambdaHandler = async (event, context) => {
     try {
       // const ret = await axios(url);
       response = {
         statusCode: 200,
         'body': JSON.stringify({
           message: 'hello world'
           // location: ret.data.trim()
         })
       }
     } catch (err) {
       console.log(err)
       return err
     }
   
       return response
   }
   ```

1. En **Nombre del archivo**, escriba `app.js`. Conserve las otras opciones predeterminadas.

1. Elija **Confirmar**.

   Ahora ha creado un archivo llamado `app.js`.

## Paso 3: crear un flujo de trabajo que ejecute la acción Super-Linter
<a name="integrations-github-action-tutorial-create-workflow"></a>

En este paso, creará un flujo de trabajo que ejecuta la acción Super-Linter al insertar código en el repositorio de código fuente. El flujo de trabajo consta de los siguientes componentes básicos, que se definen en un archivo YAML:
+ **Un desencadenador**: este desencadenador inicia la ejecución automática del flujo de trabajo cuando se introduce un cambio en el repositorio de código fuente. 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).
+ **Una acción GitHub de «Acciones»**: al activarse, la acción **GitHub Acciones** ejecuta la acción Super-Linter, que a su vez inspecciona todos los archivos del repositorio de origen. Si el linter encuentra un problema, habrá un error en la acción del flujo de trabajo. 

**Creación de un flujo de trabajo que ejecute la acción Super-Linter**

1. En la CodeCatalyst consola, elige tu proyecto,. `codecatalyst-linter-project`

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**. 

1. Seleccione **Crear flujo de trabajo**.

1. En **Repositorio de código fuente**, elija `codecatalyst-linter-source-repository`.

1. En **Ramificación**, elija `main`.

1. Seleccione **Crear**.

1. Elimine el código de ejemplo de YAML.

1. Añada el YAML siguiente:

   ```
   Name: codecatalyst-linter-workflow
   SchemaVersion: "1.0"
   Triggers:
     - Type: PUSH
       Branches:
         - main
   Actions:
     SuperLinterAction:
       Identifier: aws/github-actions-runner@v1
       Configuration:
         Steps:
           github-action-code
   ```

   En el código anterior, *github-action-code* sustitúyalo por el código de acción de Super-Linter, tal y como se indica en los pasos siguientes de este procedimiento.

1. Ve a la [página de Super-Linter](https://github.com/marketplace/actions/super-linter) en Marketplace. GitHub 

1. En `steps:` (minúsculas), busca el código y pégalo en el CodeCatalyst flujo de trabajo (mayúsculas). `Steps:`

   Ajusta el código de GitHub acción para que se ajuste a CodeCatalyst los estándares, como se muestra en el código siguiente.

   Su CodeCatalyst flujo de trabajo ahora tiene el siguiente aspecto:

   ```
   Name: codecatalyst-linter-workflow
   SchemaVersion: "1.0"
   Triggers:
     - Type: PUSH
       Branches:
         - main
   Actions:
     SuperLinterAction:
       Identifier: aws/github-actions-runner@v1
       Configuration:
         Steps:
           - name: Lint Code Base
             uses: github/super-linter@v4
             env:
               VALIDATE_ALL_CODEBASE: "true"
               DEFAULT_BRANCH: main
   ```

1. (Opcional) Seleccione **Validar** para asegurarse de que el código de YAML del flujo de trabajo es válido antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un **mensaje de confirmación**, seleccione su **repositorio** `codecatalyst-linter-source-repository` y vuelva a seleccionar **Confirmar**.

   Ahora ha creado un flujo de trabajo. La ejecución del flujo de trabajo se inicia automáticamente debido al desencadenador definido en la parte superior del flujo de trabajo.

**Consulta de la ejecución del flujo de trabajo en curso**

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el flujo de trabajo que acaba de crear: `codecatalyst-linter-workflow`.

1. En el diagrama de flujo de trabajo, elija **SuperLinterAction**.

1. Espere a que la acción tenga un error. Este error era esperable, ya que linter encontró problemas en el código.

1. Deje la CodeCatalyst consola abierta y vaya a[Paso 4: solucionar los problemas encontrados por Super-Linter](#integrations-github-action-tutorial-fix-probs).

## Paso 4: solucionar los problemas encontrados por Super-Linter
<a name="integrations-github-action-tutorial-fix-probs"></a>

Super-Linter debería haber encontrado problemas en el código `app.js`, así como en el archivo `README.md` incluido en el repositorio de código fuente.

**Resolución de los problemas encontrados por linter**

1. En la CodeCatalyst consola, selecciona la pestaña **Registros** y, a continuación, selecciona **Lint Code Base**.

   Aparecerán los registros generados por la acción Super-Linter.

1. En los registros de Super-Linter, desplácese hacia abajo, hasta aproximadamente la línea 90, donde encontrará el origen de los problemas. Tendrán un aspecto similar al siguiente: 

   ```
   /github/workspace/hello-world/app.js:3:13: Extra semicolon.
   /github/workspace/hello-world/app.js:9:92: Trailing spaces not allowed.
   /github/workspace/hello-world/app.js:21:7: Unnecessarily quoted property 'body' found.
   /github/workspace/hello-world/app.js:31:1: Expected indentation of 2 spaces but found 4.
   /github/workspace/hello-world/app.js:32:2: Newline required at end of file but not found.
   ```

1. Corrija `app.js` y `README.md` en el repositorio de código fuente y confirme los cambios. 
**sugerencia**  
Para corregir `README.md`, añada `markdown` al bloque de código de la siguiente manera:  

   ```
   ```markdown
   Setup examples:
   ...
   ```
   ```

   Los cambios inician otro flujo de trabajo que se ejecuta automáticamente. Espere a que el flujo de trabajo finalice. Si ha solucionado todos los problemas, el flujo de trabajo debería funcionar correctamente.

## Limpieza
<a name="integrations-github-action-tutorial-cleanup"></a>

Limpie CodeCatalyst para eliminar los rastros de este tutorial de su entorno.

**Para limpiar en CodeCatalyst**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elimine `codecatalyst-linter-source-repository`.

1. Elimine `codecatalyst-linter-workflow`.

En este tutorial, has aprendido a añadir la GitHub acción Super-Linter a un CodeCatalyst flujo de trabajo para imprimir código.

# Añadir la GitHub acción «Acciones»
<a name="integrations-github-action-add"></a>

Una acción de ***GitHub acciones*** es una *CodeCatalyst acción* que envuelve una GitHub acción y la hace compatible con los flujos de trabajo. CodeCatalyst 

Para obtener más información, consulte [Integración con GitHub acciones](integrations-github-actions.md).

Para añadir la acción **GitHub Acciones** a un flujo de trabajo, sigue estos pasos.

**sugerencia**  
Para ver un tutorial que muestra cómo utilizar la acción **GitHub Acciones**, consulte[Tutorial: código de Lint mediante una acción GitHub](integrations-github-action-tutorial.md).

------
#### [ Visual ]

**Para añadir la acción «GitHub Acciones» mediante el editor visual**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Seleccione **Editar**.

1. Elija **Visual**.

1. En la parte superior izquierda, seleccione **\$1 Acciones** para abrir el catálogo de acciones.

1. En la lista desplegable, elija **GitHub**.

1. Busque la acción **GitHub Acciones** y realice una de las siguientes acciones:
   + Elija el signo más (**\$1**) para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

     O
   + Elija **GitHub Acciones**. Aparecerá el cuadro de diálogo de detalles de la acción. En este cuadro de diálogo:
     + (Opcional) Seleccione **Ver código fuente** para [ver el código fuente de la acción](workflows-view-source.md#workflows-view-source.title).
     + Seleccione **Añadir al flujo de trabajo** para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

1. En las pestañas **Entradas** y **Configuración**, complete los campos según sus necesidades. Para obtener una descripción de cada uno de los campos, consulte la [GitHub Acción «Acciones» YAML](github-action-ref.md). Esta referencia proporciona información detallada sobre cada campo (y el valor de la propiedad de YAML correspondiente) tal como aparece en el editor visual y el de YAML.

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------
#### [ YAML ]

**Para añadir la acción «GitHub Acciones» mediante el editor YAML**

1. [Abre la CodeCatalyst consola en https://codecatalyst.aws/.](https://codecatalyst.aws/)

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Seleccione **Editar**.

1. Elija **YAML**.

1. En la parte superior izquierda, seleccione **\$1 Acciones** para abrir el catálogo de acciones.

1. En la lista desplegable, elija **GitHub**.

1. Busque la acción **GitHub Acciones** y realice una de las siguientes acciones:
   + Elija el signo más (**\$1**) para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

     O
   + Elija **GitHub Acciones**. Aparecerá el cuadro de diálogo de detalles de la acción. En este cuadro de diálogo:
     + (Opcional) Seleccione **Ver código fuente** para [ver el código fuente de la acción](workflows-view-source.md#workflows-view-source.title).
     + Seleccione **Añadir al flujo de trabajo** para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

1. Modifique las propiedades del código de YAML en función de sus necesidades. Encontrará una explicación de todas las propiedades disponibles en la [GitHub Acción «Acciones» YAML](github-action-ref.md).

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------

## Definición de la GitHub acción «Acciones»
<a name="integrations-github-action-add-definition"></a>

La acción **GitHub Acciones** se define como un conjunto de propiedades YAML dentro del archivo de definición de flujo de trabajo. Para obtener más información sobre estas propiedades, consulte [GitHub Acción «Acciones» YAML](github-action-ref.md) en la [Definición de flujo de trabajo en YAML](workflow-reference.md).

# Añadir una GitHub acción seleccionada
<a name="integrations-github-action-add-curated"></a>

Una * GitHub acción seleccionada* es una GitHub acción que está disponible en la CodeCatalyst consola y sirve como ejemplo de cómo utilizarla en un GitHub CodeCatalyst flujo de trabajo.

 GitHub **Las acciones seleccionadas se incluyen en la [acción CodeCatalyst](integrations-github-action-add.md) de la que se ha creado GitHub y se identifica mediante el `aws/github-actions-runner@v1` identificador.** Por ejemplo, este es el aspecto de la GitHub acción seleccionada, [TruffleHog OSS](https://github.com/marketplace/actions/trufflehog-oss): 

```
Actions:
  TruffleHogOSS_e8:
    Identifier: aws/github-actions-runner@v1
    Inputs:
      Sources:
        - WorkflowSource # This specifies that the action requires this Workflow as a source
    Configuration:
      Steps:
        - uses: trufflesecurity/trufflehog@v3.16.0
          with:
            path: ' ' # Required; description: Repository path
            base: ' ' # Required; description: Start scanning from here (usually main branch).
            head: ' ' # Optional; description: Scan commits until here (usually dev branch).
            extra_args: ' ' # Optional; description: Extra args to be passed to the trufflehog cli.
```

En el código anterior, la acción CodeCatalyst **GitHub Actions** (identificada por`aws/github-actions-runner@v1`) envuelve la acción TruffleHog OSS (identificada por`trufflesecurity/trufflehog@v3.16.0`), lo que hace que funcione en un CodeCatalyst flujo de trabajo.

Para configurar esta acción, debe reemplazar las cadenas vacías bajo `with:` con sus propios valores. Por ejemplo:

```
Actions:
  TruffleHogOSS_e8:
    Identifier: aws/github-actions-runner@v1
    Inputs:
      Sources:
        - WorkflowSource # This specifies that the action requires this Workflow as a source
    Configuration:
      Steps:
        - uses: trufflesecurity/trufflehog@v3.16.0
          with:
            path: ./
            base: main # Required; description: Start scanning from here (usually main branch).
            head: HEAD # Optional; description: Scan commits until here (usually dev branch).
            extra_args: '‐‐debug ‐‐only-verified' # Optional; description: Extra args to be passed to the trufflehog cli.
```

Para añadir una GitHub acción seleccionada a un flujo de trabajo, utilice el siguiente procedimiento. Para obtener información general sobre el uso de GitHub las acciones en un CodeCatalyst flujo de trabajo, consulte[Integración con GitHub acciones](integrations-github-actions.md).

**nota**  
Si tu GitHub acción no aparece en la lista de acciones seleccionadas, puedes añadirla a tu flujo de trabajo mediante la acción **GitHub Acciones**. Para obtener más información, consulte [Añadir la GitHub acción «Acciones»](integrations-github-action-add.md).

------
#### [ Visual ]

**Para añadir una GitHub acción seleccionada mediante el editor visual**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Seleccione **Editar**.

1. Elija **Visual**.

1. En la parte superior izquierda, seleccione **\$1 Acciones** para abrir el catálogo de acciones.

1. En la lista desplegable, elija **GitHub**.

1. Examine o busque una GitHub acción y realice una de las siguientes acciones:
   + Elija el signo más (**\$1**) para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

     O
   + Elija el nombre de la GitHub acción. Aparecerá el cuadro de diálogo de detalles de la acción. En este cuadro de diálogo:
     + (Opcional) Seleccione **Ver código fuente** para [ver el código fuente de la acción](workflows-view-source.md#workflows-view-source.title).
     + Seleccione **Añadir al flujo de trabajo** para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

1. En las pestañas **Entradas**, **Configuración** y **Salidas**, complete los campos según sus necesidades. Para obtener una descripción de cada uno de los campos, consulte la [GitHub Acción «Acciones» YAML](github-action-ref.md). Esta referencia proporciona información detallada sobre cada campo (y el valor de propiedad de YAML correspondiente) disponible para la acción **GitHubActions**, tal como aparece en los editores de YAML y visual.

   Para obtener información sobre las opciones de configuración disponibles para la GitHub acción seleccionada, consulta su documentación.

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------
#### [ YAML ]

**Para añadir una GitHub acción seleccionada mediante el editor YAML**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Seleccione **Editar**.

1. Elija **YAML**.

1. En la parte superior izquierda, seleccione **\$1 Acciones** para abrir el catálogo de acciones.

1. En la lista desplegable, elija **GitHub**.

1. Examine o busque una GitHub acción y realice una de las siguientes acciones:
   + Elija el signo más (**\$1**) para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

     O
   + Elija el nombre de la GitHub acción. Aparecerá el cuadro de diálogo de detalles de la acción. En este cuadro de diálogo:
     + (Opcional) Seleccione **Ver código fuente** para [ver el código fuente de la acción](workflows-view-source.md#workflows-view-source.title).
     + Seleccione **Añadir al flujo de trabajo** para añadir la acción al diagrama de flujo de trabajo y abrir su panel de configuración.

1. Modifique las propiedades del código de YAML en función de sus necesidades. En **GitHub la**[GitHub Acción «Acciones» YAML](github-action-ref.md).

   Para obtener información sobre las opciones de configuración disponibles para la GitHub acción seleccionada, consulta su documentación.

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------

# Exportación de los parámetros de salida de GitHub
<a name="integrations-github-action-export"></a>

Puede usar los [parámetros de salida de GitHub](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter) en los flujos de trabajo de CodeCatalyst.

**nota**  
Otra palabra para *parámetro de salida* es *variable*. Como GitHub usa el término *parámetro de salida* en su documentación, también usaremos este término.

Use las siguientes instrucciones para exportar un parámetro de salida de GitHub desde una acción de GitHub, de modo que esté disponible para que lo usen otras acciones del flujo de trabajo de CodeCatalyst.

**Exportación de un parámetro de salida de GitHub**

1. Abra un flujo de trabajo y seleccione **Editar**. Para obtener más información, consulte [Creación de un flujo de trabajo](workflows-create-workflow.md).

1. En la acción de **GitHub Actions** que genera el parámetro de salida que desea exportar, añada una sección `Outputs` con una propiedad `Variables` subyacente que tenga este aspecto:

   ```
   Actions:
     MyGitHubAction:
       Identifier: aws/github-actions-runner@v1
       Outputs:
         Variables:
           - 'step-id_output-name'
   ```

   Reemplace:
   + Sustituya *step id* por el valor de la propiedad `id:` en la sección `steps` de la acción de GitHub.
   + Sustituya *output-name* por el nombre del parámetro de salida de GitHub.

**Ejemplo**  
En el siguiente ejemplo, se muestra cómo exportar un parámetro de salida de GitHub llamado `SELECTEDCOLOR`.

   ```
   Actions:
     MyGitHubAction:
       Identifier: aws/github-actions-runner@v1
       Outputs:
         Variables:
           - 'random-color-generator_SELECTEDCOLOR'
       Configuration:
         Steps:
           - name: Set selected color
             run: echo "SELECTEDCOLOR=green" >> $GITHUB_OUTPUT
             id: random-color-generator
   ```

# Referencia a parámetros GitHub de salida
<a name="integrations-github-action-referencing"></a>

Utilice las siguientes instrucciones para hacer referencia a un parámetro GitHub de salida.

**Para hacer referencia a un parámetro GitHub de salida**

1. Realice los pasos que se indican en [Exportación de los parámetros de salida de GitHub](integrations-github-action-export.md).

   El parámetro GitHub de salida ahora está disponible para su uso en otras acciones.

1. Anote el valor `Variables` del parámetro de salida. Incluye un guion bajo (\$1).

1. Haga referencia al parámetro de salida con la siguiente sintaxis:

   ```
   ${action-name.output-name}
   ```

   Reemplace:
   + *action-name*con el nombre de la CodeCatalyst **GitHub acción** que produce el parámetro de salida (no utilice el `name` o de la GitHub acción`id`).
   + *output-name*con el `Variables` valor del parámetro de salida que anotaste anteriormente.

   **Ejemplo**

   ```
   BuildActionB:
     Identifier: aws/build@v1
     Configuration:
       Steps:
         - Run: echo ${MyGitHubAction.random-color-generator_SELECTEDCOLOR}
   ```

**Ejemplo con contexto**  
El siguiente ejemplo muestra cómo establecer una variable `SELECTEDCOLOR` en `GitHubActionA`, generarla y hacer referencia a ella en `BuildActionB`.

   ```
   Actions:
     GitHubActionA:
       Identifier: aws/github-actions-runner@v1
       Configuration:
         Steps:
           - name: Set selected color
             run: echo "SELECTEDCOLOR=green" >> $GITHUB_OUTPUT
             id: random-color-generator
       Outputs:
         Variables:
         - 'random-color-generator_SELECTEDCOLOR'
         
      BuildActionB:
       Identifier: aws/build@v1
       Configuration:
         Steps:
           - Run: echo ${GitHubActionA.random-color-generator_SELECTEDCOLOR}
   ```

# GitHub Acción «Acciones» YAML
<a name="github-action-ref"></a>

La siguiente es la definición en YAML de la acción **GitHubAcciones**.

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 [Definición de flujo de trabajo en YAML](workflow-reference.md).

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

**nota**  
La mayoría de las propiedades de YAML que se muestran a continuación tienen elementos de interfaz de usuario correspondientes en el editor visual. Para buscar un elemento de la interfaz de usuario, use **Ctrl\$1F**. El elemento aparecerá en la lista con su propiedad de YAML asociada.

```
# 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/github-actions-runner@v1
    DependsOn:
      - dependent-action-name-1
    Compute:
      Fleet: fleet-name
    Timeout: timeout-minutes
    Environment:
      Name: environment-name
      Connections:
        - Name: account-connection-name
          Role: iam-role-name
    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: 
            - github-output/artifact-1.jar
            - "github-output/build*"
        - Name: output-artifact-2
          Files:
            - github-output/artifact-2.1.jar
            - github-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
      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
    Configuration      
      Steps:
        - github-actions-code
```

## action-name
<a name="github.name"></a>

(Obligatorio)

Especifique el nombre de la acción. Todos los nombres de las acciones deben ser únicos dentro del flujo de trabajo. Los nombres de las acciones están limitados a caracteres alfanuméricos (a-z, A-Z y 0-9), guiones (-) y guiones bajos (\$1). No se permiten espacios. No puede utilizar comillas para permitir caracteres especiales ni espacios en los nombres de las acciones.

Interfaz de usuario correspondiente: pestaña de configuración/ *action-name*

## Identifier
<a name="github.identifier"></a>

(*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 [Especificación de la versión de la acción que se va a utilizar](workflows-action-versions.md).

Úselo `aws/github-actions-runner@v1` para **GitHubacciones y acciones**.

Interfaz de usuario correspondiente: diagrama de flujo de trabajo//*action-name***aws/ @v1 label github-actions-runner**

## DependsOn
<a name="github.depends-on"></a>

(*action-name*/**DependsOn**)

(Opcional)

Especifique la acción, el grupo de acciones o la 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](workflows-depends-on.md).

Interfaz de usuario correspondiente: pestaña Entradas/**Depende de (opcional)**

## Compute
<a name="github.computename"></a>

(*action-name*/**Compute**)

(Opcional)

El motor de computación utilizado para ejecutar las acciones del flujo de trabajo. Puede especificar el motor de computación en el nivel del flujo de trabajo o en el nivel de acción, pero no en ambos. Cuando se especifica en el nivel de flujo de trabajo, la configuración del motor de computación se aplica a todas las acciones definidas en el flujo de trabajo. En el nivel de flujo de trabajo, también puede ejecutar varias acciones en la misma instancia. Para obtener más información, consulte [Uso compartido de recursos de computación entre acciones](compute-sharing.md).

Interfaz de usuario correspondiente: *ninguna*

## Fleet
<a name="github.computefleet"></a>

(*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 las flotas bajo demanda](workflows-working-compute.md#compute.on-demand).

Con las flotas aprovisionadas, configura un conjunto de máquinas dedicadas para ejecutar las acciones del flujo de trabajo. Estas máquinas permanecen inactivas, listas para procesar acciones de forma inmediata. Para obtener más información sobre las flotas aprovisionadas, consulte [Propiedades de flotas aprovisionadas](workflows-working-compute.md#compute.provisioned-fleets).

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

Interfaz de usuario correspondiente: pestaña Configuración/**Flota de computación: opcional**

## Timeout
<a name="github.timeout"></a>

(*action-name*/**Timeout**)

(Opcional)

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

Interfaz de usuario correspondiente: pestaña Configuración/**Tiempo de espera (opcional)**

## Environment
<a name="github.environment"></a>

(*action-name*/**Environment**)

(Opcional)

Especifica el CodeCatalyst entorno que se va a usar con la acción. La acción se conecta a Cuenta de AWS la Amazon VPC opcional especificada en el entorno elegido. La acción utiliza la función de IAM predeterminada especificada en el entorno para conectarse a Cuenta de AWS, y utiliza la función de IAM especificada en la [conexión de Amazon VPC](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-vpcs.add.html) para conectarse a la Amazon VPC.

**nota**  
Si el rol de IAM predeterminado no tiene los permisos necesarios para la acción, puede configurarla para que utilice un rol diferente. Para obtener más información, consulte [Cambio del rol de IAM de una acción](deploy-environments-switch-role.md).

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

Interfaz de usuario correspondiente: pestaña Configuración/**Entorno**

## Name
<a name="github.environment.name"></a>

(*action-name*/Environment/**Name**)

(Obligatorio si se incluye [Environment](#github.environment))

Especifique el nombre del entorno existente que desea asociar a la acción.

Interfaz de usuario correspondiente: pestaña Configuración/**Entorno**

## Connections
<a name="github.environment.connections"></a>

(*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 en `Environment`.

Si no especifica una conexión de cuenta:
+ La acción utiliza la Cuenta de AWS conexión y la función de IAM predeterminada especificadas en el entorno de la consola. CodeCatalyst Para obtener información sobre cómo añadir una conexión de cuenta y un rol de IAM predeterminado al entorno, consulte [Creación de un entorno](deploy-environments-creating-environment.md).
+ El rol de IAM 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 **Role** en la documentación de la definición de YAML de la acción.

Para obtener más información sobre las conexiones de cuenta, consulte [Permitir el acceso a AWS los recursos con conexión Cuentas de AWS](ipa-connect-account.md). Para obtener más información sobre cómo añadir una conexión de cuenta a un entorno, consulte [Creación de un entorno](deploy-environments-creating-environment.md).

Interfaz de usuario correspondiente: ¿tab/Environment/WhatLa configuración está activa? *my-environment* **/menú de tres puntos/ Cambiar rol**

## Name
<a name="github.environment.connections.name"></a>

(*action-name*/Environment/Connections/**Name**)

(Obligatorio si se incluye [Connections](#github.environment.connections))

Especifique el nombre de la conexión de cuenta.

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

## Role
<a name="github.environment.connections.role"></a>

(*action-name*/Environment/Connections/**Role**)

(Obligatorio si se incluye [Connections](#github.environment.connections))

Especifique el nombre del rol de IAM que usa esta acción para acceder a servicios de AWS , como Amazon S3 y Amazon ECR y utilizar estos servicios. Asegúrese de añadir este rol a la conexión de Cuenta de AWS de su espacio. Para añadir un rol de IAM a una conexión de cuenta, consulte [Adición de roles de IAM a las conexiones de cuentas](ipa-connect-account-addroles.md).

[Si no especifica una función de IAM, la acción utilizará la función de IAM predeterminada que aparece en el entorno de la consola.](deploy-environments.md) CodeCatalyst Si usa el rol predeterminado en el entorno, asegúrese de que tenga las siguientes políticas.

**nota**  
Puede usar el rol `CodeCatalystWorkflowDevelopmentRole-spaceName` con esta acción. Para obtener más información acerca de este rol, consulte [Creación del rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** para su cuenta y su espacio](ipa-iam-roles.md#ipa-iam-roles-service-create). Tenga en cuenta que el rol `CodeCatalystWorkflowDevelopmentRole-spaceName` tiene permisos de acceso total, lo que puede suponer un riesgo para la seguridad. Le recomendamos que utilice este rol solo en tutoriales y situaciones en las que la seguridad no sea un problema. 

**aviso**  
Limite los permisos a los requeridos por la **GitHub acción Action**. El uso de un rol con permisos más amplios puede suponer un riesgo de seguridad.

Interfaz de usuario correspondiente: ¿tab/Environment/WhatLa configuración está activa*my-environment*? **/menú de tres puntos/ Cambiar rol**

## Inputs
<a name="github.inputs"></a>

(*action-name*/**Inputs**)

(Opcional)

La sección `Inputs` 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 GitHub acción de Actions.** Las variables no se contabilizan en este total.

Si necesita hacer referencia a archivos que se encuentran en entradas diferentes (por ejemplo, un código fuente y un artefacto), la entrada de código fuente 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: Referencia a archivos en varios artefactos](workflows-working-artifacts-ex.md#workflows-working-artifacts-ex-ref-file).

Interfaz de usuario correspondiente: pestaña **Entradas**

## Sources
<a name="github.inputs.sources"></a>

(*action-name*/Inputs/**Sources**)

(Opcional)

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

Si omite un origen, debe especificar al menos un artefacto de entrada en `action-name/Inputs/Artifacts`.

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).

Interfaz de usuario correspondiente: pestaña Entradas/**Orígenes (opcional)**

## Artifacts - input
<a name="github.inputs.artifacts"></a>

(*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 código fuente en `action-name/Inputs/Sources`.

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

**nota**  
Si la lista desplegable **Artefactos: opcional** no está disponible (editor visual) o si se producen errores al validar el código de YAML (editor de YAML), es posible que la acción solo admita una entrada. En este caso, intente eliminar la entrada de código fuente.

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

## Variables - input
<a name="github.inputs.variables"></a>

(*action-name*/Inputs/**Variables**)

(Opcional)

Especifica una secuencia de name/value pares que defina las variables de entrada que quieres que estén disponibles para la acción. Los nombres de variables están limitados a caracteres alfanuméricos (a-z, A-Z y 0-9), guiones (-) y guiones bajos (\$1). No se permiten espacios. No puede utilizar comillas para permitir caracteres especiales ni espacios en los nombres de variables.

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

Interfaz de usuario correspondiente: pestaña Entradas/**Variables (opcional)**

## Outputs
<a name="github.outputs"></a>

(*action-name*/**Outputs**)

(Opcional)

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

Interfaz de usuario correspondiente: pestaña **Salidas**

## Artifacts - output
<a name="github.outputs.artifacts"></a>

(*action-name*/Outputs/**Artifacts**)

(Opcional)

Especifique el nombre de un artefacto generado por la acción. Los nombres de los artefactos deben ser únicos en un flujo de trabajo y están limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) y guiones bajos (\$1). No se admiten espacios, guiones (-) ni otros caracteres especiales. No puede utilizar comillas para permitir 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 [Cómo compartir artefactos y archivos entre acciones](workflows-working-artifacts.md).

Interfaz de usuario correspondiente: pestaña Salidas/**Artefactos**

## Name
<a name="github.outputs.artifacts.name"></a>

(*action-name*/Outputs/Artifacts/**Name**)

(Obligatorio si se incluye [Artifacts - output](#github.outputs.artifacts))

Especifique el nombre de un artefacto generado por la acción. Los nombres de los artefactos deben ser únicos en un flujo de trabajo y están limitados a caracteres alfanuméricos (a-z, A-Z, 0-9) y guiones bajos (\$1). No se admiten espacios, guiones (-) ni otros caracteres especiales. No puede utilizar comillas para permitir 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 [Cómo compartir artefactos y archivos entre acciones](workflows-working-artifacts.md).

**Interfaz de usuario correspondiente: genera el nombre del tab/Artifacts/Add artefacto o crea el nombre del artefacto**

## Files
<a name="github.outputs.artifacts.files"></a>

(*action-name*/Outputs/Artifacts/**Files**)

(Obligatorio si se incluye [Artifacts - output](#github.outputs.artifacts))

Especifique los archivos que se CodeCatalyst incluyen en el artefacto que genera 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 código fuente. Las rutas de los archivos pueden residir en un repositorio de código fuente o en un artefacto de una acción anterior, y son relativas a la raíz del repositorio de código fuente o del artefacto. Puede utilizar patrones glob 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 código fuente, 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](workflow-reference.md#workflow.terms.syntax.conv).

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

**nota**  
Puede que tenga que añadir un prefijo a la ruta del archivo para indicar en qué artefacto u origen debe encontrarlo. Para obtener más información, consulte [Referencia a los archivos del repositorio de código fuente](workflows-sources-reference-files.md) y [Referencia a archivos en un artefacto](workflows-working-artifacts-refer-files.md).

**Interfaz de usuario correspondiente: genera los tab/Artifacts/Add artefactos o archivos producidos por build**

## Variables - output
<a name="github.outputs.variables"></a>

(*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, consulte [Uso de variables en flujos de trabajo](workflows-working-with-variables.md).

Interfaz de usuario correspondiente: pestaña Salidas/Variables/**Agregar variable**

## variable-name-1
<a name="github.outputs.variables.name"></a>

**(nombre de la variable-1) *action-name* /Outputs/Variables**

(Opcional)

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

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

**Interfaz de usuario correspondiente: genera la variable/nombre tab/Variables/Add**

## AutoDiscoverReports
<a name="github.outputs.autodiscover"></a>

(*action-name*/Outputs/**AutoDiscoverReports**)

(Opcional)

Define la configuración de la característica 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 se 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 característica de detección automática inspecciona todos los archivos. Puede limitar los archivos que se inspeccionan mediante las propiedades [IncludePaths](#github.reports.includepaths) o [ExcludePaths](#github.reports.excludepaths). 

Interfaz de usuario correspondiente: *ninguna*

## Enabled
<a name="github.outputs.autodiscover.enabled"></a>

(*action-name*/Outputs/AutoDiscoverReports/**Enabled**)

(Opcional)

Active o desactive la característica 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 Salidas/informes/**Detección de informes de forma automática**

## ReportNamePrefix
<a name="github.outputs.autodiscover.reportnameprefix"></a>

(*action-name*/Outputs/AutoDiscoverReports/**ReportNamePrefix**)

(Obligatorio si [AutoDiscoverReports](#github.outputs.autodiscover) está 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` y`TestSuiteTwo.xml`, los CodeCatalyst informes asociados se `AutoDiscoveredTestSuiteOne` denominarán y. `AutoDiscoveredTestSuiteTwo`

**Interfaz de usuario correspondiente: los resultados tab/Reports/Automatically detectan informes/prefijo de informe**

## IncludePaths
<a name="github.reports.includepaths"></a>

(*action-name*/Outputs/AutoDiscoverReports/**IncludePaths**)

O

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

(Obligatorio si [AutoDiscoverReports](#github.outputs.autodiscover) está incluido y activado, o si se incluye [Reports](#github.configuration.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](build-images.md) 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](workflow-reference.md#workflow.terms.syntax.conv).

Si se omite esta propiedad, el valor predeterminado es `"**/*"`, lo que significa que la búsqueda incluye todos los archivos de todas las rutas.

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

Interfaz de usuario correspondiente:
+ **Rutas de salida: tab/Reports/Automatically discover reports/'Include/exclude '/ Incluir rutas**
+ **Las salidas tab/Reports/Manually configuran informes/ /'Include/Exclude rutas'/ Incluyen rutas *report-name-1***

## ExcludePaths
<a name="github.reports.excludepaths"></a>

(*action-name*/Outputs/AutoDiscoverReports/**ExcludePaths**)

O

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

(Opcional)

Especifique los archivos y las rutas de archivo que se excluyen al buscar informes sin procesar. CodeCatalyst 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 glob `**/*`.

**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](workflow-reference.md#workflow.terms.syntax.conv).

Interfaz de usuario correspondiente:
+ **Rutas de salida: tab/Reports/Automatically discover reports/'Include/exclude '/ Excluye rutas**
+ **Las salidas tab/Reports/Manually configuran los informes/ /'Include/Exclude rutas'/ Excluir rutas *report-name-1***

## SuccessCriteria
<a name="github.reports.successcriteria"></a>

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

O

(*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 de software (SCA) y análisis estático (SA).

Para obtener más información, consulte [Configuración de los criterios de éxito de los informes](test-config-action.md#test.success-criteria).

Interfaz de usuario correspondiente:
+ tab/Reports/AutomaticallyLas salidas detectan **informes o criterios de éxito**
+ **Las salidas tab/Reports/Manually configuran los informes//criterios de éxito *report-name-1***

## PassRate
<a name="github.reports.successcriteria.passrate"></a>

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

O

(*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 son números decimales. Por ejemplo: `50`, `60.5`. Los criterios del índice de aprobación se aplican únicamente a los informes de pruebas. Para obtener más información sobre los informes de pruebas, consulte [Informes de pruebas](test-workflow-actions.md#test-reports).

Interfaz de usuario correspondiente:
+ tab/Reports/Automatically discover reports/Success**Criterios de salida y tasa de aprobación**
+ **Los resultados tab/Reports/Manually configuran los informes/ /Criterios de éxito/Tasa *report-name-1* de aprobación**

## LineCoverage
<a name="github.reports.successcriteria.linecoverage"></a>

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

O

(*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 son 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, consulte [Informes de cobertura de código](test-workflow-actions.md#test-code-coverage-reports).

Interfaz de usuario correspondiente:
+ tab/Reports/Automatically discover reports/Success**Criterios de salida o cobertura de línea**
+ **Las salidas tab/Reports/Manually configuran los informes/ /Criterios de éxito/ Cobertura *report-name-1* de línea**

## BranchCoverage
<a name="github.reports.successcriteria.branchcoverage"></a>

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

O

(*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 son números decimales. Por ejemplo: `50`, `60.5`. Los criterios de cobertura de ramificaciones 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, consulte [Informes de cobertura de código](test-workflow-actions.md#test-code-coverage-reports).

Interfaz de usuario correspondiente:
+ tab/Reports/Automatically discover reports/Success**Criterios de salida o cobertura de sucursales**
+ **Los resultados tab/Reports/Manually configuran los informes/ /Criterios de éxito/ Cobertura de *report-name-1* las sucursales**

## Vulnerabilities
<a name="github.reports.successcriteria.vulnerabilities"></a>

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

O

(*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 informe de la SCA para que el CodeCatalyst informe asociado se marque como aprobado. Para especificar las vulnerabilidades, debe especificar lo siguiente:
+ La gravedad mínima de las vulnerabilidades que desea incluir en el recuento. Los valores válidos, desde el más al menos grave, son `CRITICAL`, `HIGH`, `MEDIUM`, `LOW` y `INFORMATIONAL`.

  Por ejemplo, si elige `HIGH`, se contabilizan las vulnerabilidades `HIGH` y `CRITICAL`.
+ 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 los informes de SCA. Para obtener más información acerca de los informes de SCA, consulte [Informes de análisis de composición de software](test-workflow-actions.md#test-sca-reports).

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

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

Interfaz de usuario correspondiente:
+ tab/Reports/Automatically discover reports/Success**Criterios o vulnerabilidades de salida**
+ **Los resultados tab/Reports/Manually configuran los *report-name-1* informes/ /Criterios de éxito/ Vulnerabilidades**

## Reports
<a name="github.configuration.reports"></a>

(*action-name*/Outputs/**Reports** )

(Opcional)

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

Interfaz de usuario correspondiente: pestaña Salidas/**Informes**

## report-name-1
<a name="github.configuration.reports.report-name-1"></a>

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

(Obligatorio si se incluye [Reports](#github.configuration.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
<a name="github.configuration.reports.name.testresults.format"></a>

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

(Obligatorio si se incluye [Reports](#github.configuration.reports))

Especifique el formato de archivo que va a utilizar para sus informes. Los valores posibles son los siguientes.
+ Para los informes de prueba:
  + Para Cucumber JSON, especifique **Cucumber** (editor visual) o `CUCUMBERJSON` (editor de YAML).
  + Para JUnit XML, especifique **JUnit**(editor visual) o `JUNITXML` (editor YAML).
  + Para NUnit XML, especifique **NUnit**(editor visual) o `NUNITXML` (editor YAML).
  + Para NUnit 3 XML, especifique **NUnit3**(editor visual) o `NUNIT3XML` (editor YAML).
  + Para Visual Studio TRX, especifique **Visual Studio TRX** (editor visual) o `VISUALSTUDIOTRX` (editor de YAML).
  + Para TestNG XML, especifique **TestNG** (editor visual) o `TESTNGXML` (editor de YAML).
+ Para los informes de cobertura de código:
  + Para Clover XML, especifique **Clover** (editor visual) o `CLOVERXML` (editor de YAML).
  + Para Cobertura XML, especifique **Cobertura** (editor visual) o `COBERTURAXML` (editor de YAML).
  + Para JaCoCo XML, especifique **JaCoCo**(editor visual) o `JACOCOXML` (editor YAML).
  + Para el SimpleCov JSON generado por [simplecov, no por simplecov-json](https://github.com/simplecov-ruby/simplecov)[, especifique **Simplecov**](https://github.com/vicentllongo/simplecov-json) (editor visual) o (editor YAML). `SIMPLECOV`
+ Para los informes de análisis de composición de software (SCA):
  + Para SARIF, especifique **SARIF** (editor visual) o `SARIFSCA` (editor de YAML).

****Interfaz de usuario correspondiente: Muestra el tipo de informe y el formato del informe tab/Reports/Manually configure reports/Add *report-name-1*****

## Configuration
<a name="github.configuration"></a>

(*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 **Configuración**

## Steps
<a name="github.configuration.steps"></a>

(*action-name*/Configuration/**Steps**)

(Obligatorio) 

Especifica tu código de GitHub acción tal como aparece en la página de detalles de la acción en [GitHub Marketplace](https://github.com/marketplace). Añada el código siguiendo estas pautas:

1. Pega el código de la `steps:` sección de la GitHub acción en la `Steps:` sección del CodeCatalyst flujo de trabajo. El código comienza con un guion (-) y tiene un aspecto similar al siguiente.

   GitHub código para pegar:

   ```
   - name: Lint Code Base
     uses: github/super-linter@v4
     env:
       VALIDATE_ALL_CODEBASE: false
       DEFAULT_BRANCH: master
       GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
   ```

1. Revise el código que acaba de pegar y modifíquelo según sea necesario para que cumpla con los CodeCatalyst estándares. **Por ejemplo, con el bloque de código anterior, puede eliminar el código y añadirlo en *red italics* negrita.**

   CodeCatalyst flujo de trabajo yaml:

   ```
   Steps:      
      - name: Lint Code Base
        uses: github/super-linter@v4
        env:
          VALIDATE_ALL_CODEBASE: false
          DEFAULT_BRANCH: mastermain
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
   ```

1. Para obtener código adicional que se incluya en la GitHub acción pero que no exista dentro de la `steps:` sección, agréguelo al CodeCatalyst flujo de trabajo con un código CodeCatalyst equivalente. Puedes revisarla [Definición de flujo de trabajo en YAML](workflow-reference.md) para obtener información sobre cómo puedes transferir tu GitHub código a CodeCatalyst. En esta guía, no hablaremos de los pasos de migración detallados.

Este es un ejemplo de cómo especificar las rutas de los archivos en una acción de **GitHub Acciones**:

```
Steps:
  - name: Lint Code Base
    uses: github/super-linter@v4
    ...
  - run: cd /sources/WorkflowSource/MyFolder/  && cat file.txt
  - run: cd /artifacts/MyGitHubAction/MyArtifact/MyFolder/  && cat file2.txt
```

Para obtener más información sobre cómo especificar rutas de archivos, consulte [Referencia a los archivos del repositorio de código fuente](workflows-sources-reference-files.md) y [Referencia a archivos en un artefacto](workflows-working-artifacts-refer-files.md).

Interfaz de usuario correspondiente: pestaña de **GitHub configuración/acciones** (YAML)