

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.

# Invocación de una función de Lambda mediante un flujo de trabajo
<a name="lam-invoke-action"></a>

En esta sección se describe cómo invocar una AWS Lambda función mediante un flujo de trabajo. CodeCatalyst Para ello, debe añadir la acción **invocar en AWS Lambda ** al flujo de trabajo. La acción **invocar en AWS Lambda ** invoca la función de Lambda que especifique.

Además de invocar la función, la acción **invocar en AWS Lambda ** también convierte todas las claves de nivel superior de la carga útil de respuesta recibida de la función de Lambda en una [variable de salida del flujo de trabajo](workflows-working-with-variables.md). Luego, puede hacer referencia a estas variables en acciones posteriores del flujo de trabajo. Si no desea que todas las claves de nivel superior se conviertan en variables, puede usar filtros para especificar las claves exactas. Para obtener más información, consulte la descripción de la propiedad [ResponseFilters](lam-invoke-action-ref.md#lam.invoke.response.filters) en la [YAML de la acción invocar de AWS Lambda](lam-invoke-action-ref.md). 

**Topics**
+ [Cuándo usar esta acción](#lam-invoke-action-when-to-use)
+ [Imagen de tiempo de ejecución utilizada por la acción «invocar»AWS Lambda](#lam-invoke-action-runtime)
+ [Ejemplo: Invocación de una función de Lambda](lam-invoke-action-example-workflow.md)
+ [Añadir la acción «AWS Lambda invocar»](lam-invoke-action-add.md)
+ [Variables de invocar en AWS Lambda](lam-invoke-action-variables.md)
+ [YAML de la acción invocar de AWS Lambda](lam-invoke-action-ref.md)

## Cuándo usar esta acción
<a name="lam-invoke-action-when-to-use"></a>

Utilice esta acción si desea añadir una funcionalidad a un flujo de trabajo encapsulado en una función de Lambda y ejecutado por esta.

Por ejemplo, quizá desee que el flujo de trabajo envíe una notificación `Build started` a un canal de Slack antes de iniciar la compilación de la aplicación. En ese caso, el flujo de trabajo incluiría una acción **invocar en AWS Lambda ** para que Lambda envíe la notificación de Slack, así como una [acción de compilación](build-add-action.md) para compilar la aplicación.

Otro ejemplo: supongamos que necesita que el flujo de trabajo haga un análisis de vulnerabilidades en la aplicación antes de implementarla; en este caso, utilizaría una acción de compilación para compilar la aplicación, una acción **invocar en AWS Lambda ** para que Lambda busque vulnerabilidades y una acción de implementación para implementar la aplicación analizada.

## Imagen de tiempo de ejecución utilizada por la acción «invocar»AWS Lambda
<a name="lam-invoke-action-runtime"></a>

La acción **invocar en AWS Lambda ** 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).

# Ejemplo: Invocación de una función de Lambda
<a name="lam-invoke-action-example-workflow"></a>

El siguiente ejemplo de flujo de trabajo incluye la acción **invocación de AWS Lambda ** junto con una acción de implementación. El flujo de trabajo envía una notificación de Slack en la que se indica que se ha iniciado una implementación y, a continuación, despliega una aplicación utilizando una plantilla. AWS CloudFormation El flujo de trabajo consta de los siguientes componentes, que se ejecutarán en orden:
+ 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 **invocación de AWS Lambda ** (`LambdaNotify`): al activarse, esta acción invoca la función de Lambda `Notify-Start` en la cuenta y la región de AWS especificadas (`my-aws-account` y `us-west-2`). Al invocarse, la función de Lambda envía una notificación de Slack que indica que se ha iniciado una implementación.
+ Una acción de **despliegue de CloudFormation pila** (`Deploy`): al finalizar la acción de **AWS Lambda invocación**, la acción de **despliegue de CloudFormation pila** ejecuta la plantilla (`cfn-template.yml`) para desplegar tu pila de aplicaciones. Para obtener más información sobre la acción **Implementar CloudFormation una pila**, consulte[Implementación de una CloudFormation pila](deploy-action-cfn.md).

**nota**  
El siguiente ejemplo de flujo de trabajo tiene fines ilustrativos y no funcionará sin una configuración adicional.

**nota**  
En el código de YAML que se muestra a continuación, puede omitir las secciones `Connections:` si lo desea. Si omite estas secciones, debe asegurarse de que la función especificada en el campo **Función de IAM predeterminada** de su entorno incluya los permisos y las políticas de confianza que requieren las acciones de **AWS Lambda invocación** e **implementación CloudFormation ** de la pila. Para obtener más información sobre cómo configurar un entorno con un rol de IAM predeterminado, consulte [Creación de un entorno](deploy-environments-creating-environment.md). Para obtener más información sobre los permisos y las políticas de confianza que requieren las acciones de ** CloudFormation pila **AWS Lambda invocar** e implementar**, consulte la descripción de la `Role` propiedad en los campos y. [YAML de la acción invocar de AWS Lambda](lam-invoke-action-ref.md) [Acción «Desplegar CloudFormation pila» YAML](deploy-action-ref-cfn.md)

```
Name: codecatalyst-lamda-invoke-workflow
SchemaVersion: 1.0

Triggers:
  - Type: PUSH
    Branches:
      - main
Actions:
  LambdaNotify:
    Identifier: aws/lambda-invoke@v1
    Environment:
      Name: my-production-environment
      Connections:
        - Name: my-aws-account
          Role: codecatalyst-lambda-invoke-role
    Inputs:
      Sources:
        - WorkflowSource
    Configuration:
      Function: Notify-Start
      AWSRegion: us-west-2
        
  Deploy:
    Identifier: aws/cfn-deploy@v1
    Environment:
      Name: my-production-environment
      Connections:
        - Name: my-aws-account
          Role: codecatalyst-deploy-role
    Inputs:
      Sources:
        - WorkflowSource
    Configuration:
      name: my-application-stack
      region: us-west-2
      role-arn: arn:aws:iam::111122223333:role/StackRole
      template: ./cfn-template.yml
      capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
```

# Añadir la acción «AWS Lambda invocar»
<a name="lam-invoke-action-add"></a>

 Siga estas instrucciones para añadir la acción **invocación de AWS Lambda ** en un flujo de trabajo. 

**Requisito previo**  
Antes de empezar, asegúrese de que la AWS Lambda función y el rol de ejecución de Lambda asociado estén listos y disponibles en. AWS Para obtener más información, consulte [Rol de ejecución de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) en la *Guía del desarrollador de AWS Lambda *.

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

**Para añadir la acción de «AWS Lambda invocar», utilice el editor visual**

1. [Abra 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. Elija **Edit (Edición de)**.

1. Elija **Visual**.

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

1. En la lista desplegable, selecciona **Amazon CodeCatalyst**.

1. Busque la acción **Invocación de AWS Lambda ** y lleve a cabo 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
   + Seleccione **Invocación de AWS Lambda **. 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 [YAML de la acción invocar de AWS Lambda](lam-invoke-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 «AWS Lambda invocar» 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. Elija **Edit (Edición de)**.

1. Elija **YAML**.

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

1. En la lista desplegable, selecciona **Amazon CodeCatalyst**.

1. Busque la acción **Invocación de AWS Lambda ** y lleve a cabo 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
   + Seleccione **Invocación de AWS Lambda **. 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 [YAML de la acción invocar de AWS Lambda](lam-invoke-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**.

------

# Variables de invocar en AWS Lambda
<a name="lam-invoke-action-variables"></a>

De forma predeterminada, la acción **invocar en AWS Lambda ** produce una variable por clave de nivel superior en la carga útil de respuesta de Lambda.

Por ejemplo, si la carga útil de respuesta tiene el siguiente aspecto:

```
responsePayload = {
  "name": "Saanvi",
  "location": "Seattle",
  "department": {
    "company": "Amazon",
    "team": "AWS"
  }
}
```

la acción generará las siguientes variables:


| Clave | Valor | 
| --- | --- | 
|  name  |  Saanvi  | 
|  ubicación  |  Seattle  | 
|  departamento  |  \$1“company”: “Amazon”, “team”: “AWS”\$1  | 

**nota**  
Puede cambiar las variables que se generan mediante la propiedad `ResponseFilters` de YAML. Para obtener más información, consulte [ResponseFilters](lam-invoke-action-ref.md#lam.invoke.response.filters) en la [YAML de la acción invocar de AWS Lambda](lam-invoke-action-ref.md).

*Las variables generadas y establecidas por la acción de «AWS Lambda invocar» en tiempo de ejecución se conocen como variables predefinidas.*

Para obtener información sobre cómo hacer referencia a estas variables en un flujo de trabajo, consulte [Uso de variables predefinidas](workflows-using-predefined-variables.md).

# YAML de la acción invocar de AWS Lambda
<a name="lam-invoke-action-ref"></a>

A continuación, encontrará una definición en YAML de la acción **invocar de AWS Lambda **. Para obtener información sobre cómo utilizar esta acción, consulte [Invocación de una función de Lambda mediante un flujo de trabajo](lam-invoke-action.md).

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

**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.   
  LambdaInvoke\$1nn: 
    Identifier: aws/lambda-invoke@v1
    DependsOn:
      - dependent-action
    Compute:  
      Type: EC2 | Lambda
      Fleet: fleet-name
    Timeout: timeout-minutes
    Inputs:
      # Specify a source or an artifact, but not both.
      Sources:
        - source-name-1
      Artifacts:
        - request-payload
      Variables:
        - Name: variable-name-1
          Value: variable-value-1
        - Name: variable-name-2
          Value: variable-value-2
    Environment:
      Name: environment-name
      Connections:
        - Name: account-connection-name
          Role: iam-role-name
    Configuration:
      Function: my-function|function-arn
      AWSRegion: us-west-2
      # Specify RequestPayload or RequestPayloadFile, but not both.
      RequestPayload: '{"firstname": "Li", lastname: "Jean", "company": "ExampleCo", "team": "Development"}'
      RequestPayloadFile: my/request-payload.json
      ContinueOnError: true|false
      LogType: Tail|None
      ResponseFilters: '{"name": ".name", "company": ".department.company"}'
    Outputs:
      Artifacts:
        - Name: lambda_artifacts
          Files: 
            - "lambda-response.json"
```

## LambdaInvoke
<a name="lam.invoke.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.

Predeterminado: `Lambda_Invoke_Action_Workflow_nn`.

Interfaz de usuario correspondiente: pestaña Configuración/**Nombre de la acción**

## Identifier
<a name="lam.invoke.identifier"></a>

(*LambdaInvoke*/**Identifier**)

(Obligatorio) 

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

Predeterminado: `aws/lambda-invoke@v1`.

Interfaz de usuario correspondiente: Diagrama de flujo de trabajo/LambdaInvoke\$1nn/etiqueta **aws/lambda-invoke@v1**

## DependsOn
<a name="lam.invoke.dependson"></a>

(*LambdaInvoke*/**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="lam.invoke.computename"></a>

(*LambdaInvoke*/**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*

## Type
<a name="lam.invoke.computetype"></a>

(*LambdaInvoke*/Compute/**Type**)

(Obligatorio si se incluye [Compute](#lam.invoke.computename))

El tipo de motor de computación. Puede utilizar uno de los siguientes valores:
+ **EC2**(editor visual) o (editor YAML`EC2`)

  Optimizado para ofrecer flexibilidad durante las ejecuciones de acciones.
+ **Lambda** (editor visual) o `Lambda` (editor de YAML)

  Velocidades de inicio de acciones optimizadas.

Para obtener más información sobre los tipos de computación, consulte [Tipos de computación](workflows-working-compute.md#compute.types).

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

## Fleet
<a name="lam.invoke.computefleet"></a>

(*LambdaInvoke*/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**

## Timeout
<a name="lam.invoke.timeout"></a>

(*LambdaInvoke*/**Timeout**)

(Obligatorio) 

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 CodeCatalyst finalice la acción. 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)**

## Inputs
<a name="lam.invoke.inputs"></a>

(*LambdaInvoke*/**Inputs**)

(Obligatorio) 

La sección `Inputs` define los datos que la acción **invocar en AWS Lambda ** necesita durante la ejecución de un flujo de trabajo.

**nota**  
Solo se permite una entrada (ya sea un código fuente o un artefacto) para cada acción **invocar en AWS Lambda **. Las variables no se contabilizan en este total.

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

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

(*LambdaInvoke*/Inputs/**Sources**)

(Obligatorio si [RequestPayloadFile](#lam.invoke.request.payload.file)se proporciona)

Si quiere pasar un archivo JSON de carga útil de solicitud a la acción **invocar en AWS Lambda ** y ese archivo de carga útil está almacenado en un repositorio de código fuente, especifique la etiqueta de ese repositorio. Actualmente, la única etiqueta admitida es `WorkflowSource`.

Si el archivo de carga útil de solicitud no está incluido en un repositorio de código fuente, debe residir en un artefacto generado por otra acción.

Para obtener más información sobre el archivo de carga útil, consulte [RequestPayloadFile](#lam.invoke.request.payload.file).

**nota**  
En lugar de especificar un archivo de carga útil, puede añadir el código JSON de la carga útil directamente en la acción mediante la propiedad `RequestPayload`. Para obtener más información, consulte [RequestPayload](#lam.invoke.request.payload). 

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="lam.invoke.inputs.artifacts"></a>

(*LambdaInvoke*/Inputs/**Artifacts**)

(Obligatorio si [RequestPayloadFile](#lam.invoke.request.payload.file)se proporciona)

Si desea pasar un archivo JSON de carga útil de solicitud a la acción **invocar en AWS Lambda ** y ese archivo de carga útil está contenido en un [artefacto de salida](build-action-ref.md#build.outputs.artifacts) de una acción anterior, especifique aquí ese artefacto.

Para obtener más información sobre el archivo de carga útil, consulte [RequestPayloadFile](#lam.invoke.request.payload.file).

**nota**  
En lugar de especificar un archivo de carga útil, puede añadir el código JSON de la carga útil directamente en la acción mediante la propiedad `RequestPayload`. Para obtener más información, consulte [RequestPayload](#lam.invoke.request.payload). 

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 Configuración/**Artefactos (opcional)**

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

(*LambdaInvoke*/Inputs/**Variables**)

(Opcional)

Especifique una secuencia de name/value pares que defina las variables de entrada que desea poner a disposición de 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)**

## Environment
<a name="lam.invoke.environment"></a>

(*LambdaInvoke*/**Environment**)

(Obligatorio) 

Especifique el CodeCatalyst entorno que se va a utilizar 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="lam.invoke.environment.name"></a>

(*LambdaInvoke*/Environment/**Name**)

(Obligatorio si se incluye [Environment](#lam.invoke.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="lam.invoke.environment.connections"></a>

(*LambdaInvoke*/Environment/**Connections**)

(Opcional en las versiones más recientes de la acción; obligatorio en las versiones más antiguas)

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: una de las siguientes, según la versión de la acción.
+ (Versiones más recientes) ¿tab/Environment/WhatLa configuración está lista? *my-environment* **/menú de tres puntos/ Cambiar rol**
+ **(Versiones anteriores) Pestaña de configuración/' '/ conexión de cuenta Environment/account/role AWS **

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

(*LambdaInvoke*/Environment/Connections/**Name**)

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

Especifique el nombre de la conexión de cuenta.

Interfaz de usuario correspondiente: una de las siguientes, según la versión de la acción.
+ (Versiones más recientes) ¿La configuración está lista? tab/Environment/What *my-environment* **/menú de tres puntos/ Cambiar rol**
+ **(Versiones anteriores) Pestaña de configuración/' '/ conexión de cuenta Environment/account/role AWS **

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

(*LambdaInvoke*/Environment/Connections/**Role**)

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

Especifique el nombre de la función de IAM que la acción de **AWS Lambda invocación** utiliza para acceder a la función AWS Lambda e invocarla. Asegúrese de haber [agregado el rol a su CodeCatalyst espacio](ipa-connect-account-addroles.md) y de que el rol incluya las siguientes políticas.

Si no especifica un rol de IAM, la acción utilizará el rol de IAM predeterminado que aparece en el [entorno](deploy-environments.md) de la consola. CodeCatalyst Si usa el rol predeterminado en el entorno, asegúrese de que tenga las siguientes políticas.
+ La siguiente política de permisos:
**aviso**  
Limite los permisos a los que se muestran en la siguiente política. El uso de un rol con permisos más amplios puede suponer un riesgo de seguridad.
+ La siguiente política de confianza personalizada:

**nota**  
Puede usar el rol `CodeCatalystWorkflowDevelopmentRole-spaceName` con esta acción, si así lo desea. 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. 

Interfaz de usuario correspondiente: una de las siguientes, según la versión de la acción.
+ (Versiones más recientes) ¿tab/Environment/WhatLa configuración está lista? *my-environment* **/menú de tres puntos/ Cambiar rol**
+ **(Versiones anteriores) Pestaña de configuración/' '/ Rol Environment/account/role**

## Configuration
<a name="lam.invoke.configuration"></a>

(*LambdaInvoke*/**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**

## Function
<a name="lam.invoke.function"></a>

(*LambdaInvoke*/Configuration/**Function**)

(Obligatorio) 

Especifique la AWS Lambda función que invocará esta acción. Puede especificar el nombre de la función o su Nombre de recurso de Amazon (ARN). Encontrará el nombre o el ARN en la consola de Lambda.

**nota**  
La AWS cuenta en la que reside la función Lambda puede ser diferente de la cuenta especificada en. `Connections:`

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

## AWSRegion
<a name="lam.invoke.region"></a>

(*LambdaInvoke*/Configuration/**AWSRegion**)

(Obligatorio) 

Especifique la AWS región en la que reside AWS Lambda la función. Para obtener una lista de códigos de región, consulte [Puntos de conexión regionales](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) en la *Referencia general de AWS*.

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

## RequestPayload
<a name="lam.invoke.request.payload"></a>

(*LambdaInvoke*/Configuration/**RequestPayload**)

(Opcional)

Si quiere pasar una carga útil de solicitud a la acción **invocar en AWS Lambda **, especifique aquí la carga útil de solicitud, en formato JSON.

Ejemplo de carga útil de solicitud:

```
'{ "key": "value" }'
```

Si no desea pasar una carga útil de solicitud a la función de Lambda, omita esta propiedad.

**nota**  
Puede especificar `RequestPayload` o `RequestPayloadFile`, pero no ambos.

Para obtener más información sobre la carga útil de solicitud, consulte el tema [Invocar](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html) en la *Referencia de la API de AWS Lambda *.

Interfaz de usuario correspondiente: pestaña Configuración/**Carga útil de solicitud (opcional)**

## RequestPayloadFile
<a name="lam.invoke.request.payload.file"></a>

(*LambdaInvoke*/Configuration/**RequestPayloadFile**)

(Opcional)

Si quiere pasar una carga útil de solicitud a la acción **invocar en AWS Lambda **, especifique aquí la ruta a esa carga útil de solicitud. El archivo debe estar en formato JSON.

El archivo de carga útil de la solicitud puede residir en un repositorio de código fuente o en un artefacto de una acción anterior. La ruta del archivo hace referencia al directorio raíz del repositorio de código fuente o del artefacto.

Si no desea pasar una carga útil de solicitud a la función de Lambda, omita esta propiedad.

**nota**  
Puede especificar `RequestPayload` o `RequestPayloadFile`, pero no ambos.

Para obtener más información sobre el archivo de carga útil de solicitud, consulte el tema [Invocar](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html) en la *Referencia de la API de AWS Lambda *.

Interfaz de usuario correspondiente: pestaña Configuración/**Archivo de carga útil de solicitud (opcional)**

## ContinueOnError
<a name="lam.invoke.continue"></a>

(*LambdaInvoke*/Configuration/**RequestPayloadFile**)

(Opcional)

Especifique si desea marcar la acción **invocar en AWS Lambda ** como realizada correctamente aunque haya un error en la función de AWS Lambda invocada. Valore la posibilidad de poner esta propiedad en `true` para permitir que se inicien las acciones posteriores del flujo de trabajo a pesar del error en Lambda.

El valor predeterminado es que la acción falle si la función de Lambda falla (“desactivado” en el editor visual o `false` en el editor YAML).

Interfaz de usuario correspondiente: pestaña Configuración/**Continuar en caso de error**

## LogType
<a name="lam.invoke.log.type"></a>

(*LambdaInvoke*/Configuration/**LogType**)

(Opcional)

Especifique si desea incluir los registros de errores en la respuesta de la función de Lambda después de invocarla. Puede ver estos registros en la pestaña **Registros** de la acción de **invocación de Lambda** en la consola. CodeCatalyst Los valores posibles son los que se indican a continuación.
+ `Tail`: devolver registros
+ `None`: no devolver registros

El valor predeterminado es **Cola**.

Para obtener más información sobre el tipo de registro, consulte el tema [Invocar](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html) en la *Referencia de la API de AWS Lambda *.

Para obtener más información acerca de cómo visualizar los archivos de registro, consulte [Visualización del estado y los detalles de la ejecución de un flujo de trabajo](workflows-view-run.md).

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

## ResponseFilters
<a name="lam.invoke.response.filters"></a>

(*LambdaInvoke*/Configuration/**ResponseFilters**)

(Opcional)

Especifique qué claves de la carga útil de respuesta de Lambda desea convertir en variables de salida. Luego, puede hacer referencia a las variables de salida en acciones posteriores del flujo de trabajo. Para obtener más información sobre las variables de CodeCatalyst, consulte. [Uso de variables en flujos de trabajo](workflows-working-with-variables.md)

Por ejemplo, si la carga útil de respuesta tiene el siguiente aspecto:

```
responsePayload = {
  "name": "Saanvi",
  "location": "Seattle",
  "department": {
    "company": "Amazon",
    "team": "AWS"
  }
}
```

y los filtros de respuesta son similares a lo siguiente:

```
Configuration:
  ...
  ResponseFilters: '{"name": ".name", "company": ".department.company"}'
```

la acción generará las siguientes variables de salida:


| Clave | Valor | 
| --- | --- | 
|  name  |  Saanvi  | 
|  company  |  Amazon  | 

A continuación, puede hacer referencia a las variables `name` y `company` en acciones posteriores.

Si no especifica ninguna clave en `ResponseFilters`, la acción convierte cada clave de nivel superior de la respuesta de Lambda en una variable de salida. Para obtener más información, consulte [Variables de invocar en AWS Lambda](lam-invoke-action-variables.md).

Valore la posibilidad de utilizar filtros de respuesta para limitar las variables de salida generadas a las que realmente desee utilizar.

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

## Outputs
<a name="lam.invoke.outputs"></a>

(*LambdaInvoke*/**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
<a name="lam.invoke.outputs.artifacts"></a>

(*LambdaInvoke*/Outputs/**Artifacts**)

(Opcional)

Especifique el nombre de los artefactos generados por la acción. Puede hacer referencia a estos artefactos como entrada en otras acciones.

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/**Nombre del artefacto de compilación**

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

(*LambdaInvoke*/Outputs/Artifacts/**Name**)

(Opcional)

Especifique el nombre del artefacto que contendrá la carga útil de respuesta de Lambda devuelta por la función de Lambda. El valor predeterminado es `lambda_artifacts`. Si no especifica un artefacto, la carga útil de la respuesta de Lambda se puede ver en los registros de la acción, que están disponibles en la pestaña Registros de **la** acción en la consola. CodeCatalyst Para obtener más información acerca de cómo visualizar los archivos de registro, consulte [Visualización del estado y los detalles de la ejecución de un flujo de trabajo](workflows-view-run.md).

Interfaz de usuario correspondiente: pestaña Salidas/Artefactos/**Nombre del artefacto de compilación**

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

(*LambdaInvoke*/Outputs/Artifacts/**Files**)

(Opcional)

Especifique los archivos que desee incluir en el artefacto. Debe especificar `lambda-response.json` para incluir el archivo de carga útil de respuesta de Lambda.

Interfaz de usuario correspondiente: pestaña Salidas/Artefactos/**Archivos producidos por compilación**