

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.

# Uso de variables definidas por el usuario
<a name="workflows-using-variables"></a>

Las *variables definidas por el usuario* son pares clave-valor que usted puede definir. Hay dos tipos:
+ **Variables de texto sin formato**, o simplemente **variables**: se trata de pares clave-valor que se definen en texto sin formato en el archivo de definición del flujo de trabajo.
+ **Secretos**: son pares clave-valor que se definen en una página de **secretos** independiente de la consola de Amazon CodeCatalyst . La *clave* (nombre) es una etiqueta pública y el *valor* contiene la información que quiera mantener privada. Solo debe especificar la clave en el archivo de definición del flujo de trabajo. Utilice secretos en lugar de contraseñas y otra información confidencial en el archivo de definición del flujo de trabajo.

**nota**  
Por motivos de brevedad, en esta guía se utiliza el término *variable* para referirse a una *variable de texto sin formato*.

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

**Topics**
+ [Ejemplos de variables](workflows-working-with-variables-ex.md)
+ [Definición de una variable](workflows-working-with-variables-define-input.md)
+ [Definición de un secreto](workflows-working-with-variables-define-secret.md)
+ [Exportación de una variable para que otras acciones puedan utilizarla](workflows-working-with-variables-export-input.md)
+ [Referencia a una variable en la acción que la define](workflows-working-with-variables-reference-input.md)
+ [Referencia a la salida de una variable generada por otra acción](workflows-working-with-variables-reference-action.md)
+ [Referencia a un secreto](workflows-working-with-variables-reference-secret.md)

# Ejemplos de variables
<a name="workflows-working-with-variables-ex"></a>

En los siguientes ejemplos se muestra cómo definir variables y hacer referencia a ellas en el archivo de definición del flujo de trabajo.

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

**Topics**
+ [Ejemplo: Definición de una variable mediante la propiedad Inputs](#workflows-working-with-variables-ex-define-inputs)
+ [Ejemplo: Definición de una variable mediante la propiedad Steps](#workflows-working-with-variables-ex-define-steps)
+ [Ejemplo: Exportación de una variable mediante la propiedad Outputs](#workflows-working-with-variables-ex-export-outputs)
+ [Ejemplo: Referencia a una variable definida en la misma acción](#workflows-working-with-variables-ex-refer-current)
+ [Ejemplo: Referencia a una variable definida en otra acción](#workflows-working-with-variables-ex-refer-other)
+ [Ejemplo: Referencia a un secreto](#workflows-working-with-variables-ex-refer-secret)

## Ejemplo: Definición de una variable mediante la propiedad Inputs
<a name="workflows-working-with-variables-ex-define-inputs"></a>

El siguiente ejemplo muestra cómo definir dos variables, `VAR1` y `VAR2`, en una sección `Inputs`.

```
Actions:
  Build:
    Identifier: aws/build@v1
    Inputs:
      Variables:
      - Name: VAR1
        Value: "My variable 1"
      - Name: VAR2
        Value: "My variable 2"
```

## Ejemplo: Definición de una variable mediante la propiedad Steps
<a name="workflows-working-with-variables-ex-define-steps"></a>

El siguiente ejemplo muestra cómo definir una variable `DATE` en la sección `Steps` de forma explícita.

```
Actions:
  Build:
    Identifier: aws/build@v1
    Configuration:    
      Steps:
        - Run: DATE=$(date +%m-%d-%y)
```

## Ejemplo: Exportación de una variable mediante la propiedad Outputs
<a name="workflows-working-with-variables-ex-export-outputs"></a>

El siguiente ejemplo muestra cómo definir dos variables, `REPOSITORY-URI` y `TIMESTAMP`, y exportarlas utilizando la sección `Outputs`.

```
Actions:
  Build:
    Identifier: aws/build@v1
    Inputs:
      Variables:
        - Name: REPOSITORY-URI
          Value: 111122223333.dkr.ecr.us-east-2.amazonaws.com/codecatalyst-ecs-image-repo
    Configuration:
      Steps:
        - Run: TIMESTAMP=$(date +%m-%d-%y-%H-%m-%s) 
    Outputs:
      Variables:
        - REPOSITORY-URI
        - TIMESTAMP
```

## Ejemplo: Referencia a una variable definida en la misma acción
<a name="workflows-working-with-variables-ex-refer-current"></a>

El siguiente ejemplo muestra cómo especificar una variable `VAR1` en `MyBuildAction` y después hacer referencia a ella en la misma acción utilizando `$VAR1`.

```
Actions:
  MyBuildAction:
    Identifier: aws/build@v1
    Inputs:
      Variables:
        - Name: VAR1
          Value: my-value
    Configuration:
      Steps:
        - Run: $VAR1
```

## Ejemplo: Referencia a una variable definida en otra acción
<a name="workflows-working-with-variables-ex-refer-other"></a>

El siguiente ejemplo muestra cómo especificar una variable `TIMESTAMP` en `BuildActionA`, exportarla con la propiedad `Outputs` y después hacer referencia a ella en `BuildActionB` con `${BuildActionA.TIMESTAMP}`.

```
Actions:
  BuildActionA:
    Identifier: aws/build@v1
    Configuration:    
      Steps:
        - Run: TIMESTAMP=$(date +%m-%d-%y-%H-%m-%s) 
    Outputs:
      Variables:
        - TIMESTAMP
  BuildActionB:
    Identifier: aws/build@v1
    Configuration:
      Steps:
        - Run: docker build -t my-ecr-repo/image-repo:latest .      
        - Run: docker tag my-ecr-repo/image-repo:${BuildActionA.TIMESTAMP}
        
        # Specifying just '$TIMESTAMP' here will not work 
        # because TIMESTAMP is not a variable 
        # in the BuildActionB action.
```

## Ejemplo: Referencia a un secreto
<a name="workflows-working-with-variables-ex-refer-secret"></a>

En el siguiente ejemplo se muestra cómo hacer referencia a un secreto `my-password`. La `my-password` es la clave del secreto. La clave de este secreto y el valor de la contraseña correspondiente deben especificarse en la página **Secretos** de la CodeCatalyst consola antes de utilizarlos en el archivo de definición del flujo de trabajo. Para obtener más información, consulte [Enmascaramiento de datos mediante secretos](workflows-secrets.md).

```
Actions:
  BuildActionA:
    Identifier: aws/build@v1
    Configuration:    
      Steps:
        - Run: curl -u LiJuan:${Secrets.my-password} https://example.com
```

# Definición de una variable
<a name="workflows-working-with-variables-define-input"></a>

Puede definir las variables de dos maneras:
+ En la sección `Inputs` de una acción de flujo de trabajo: consulte [Definición de una variable en la sección Entradas](#workflows-to-define-variable-input)
+ En la sección `Steps` de una acción de flujo de trabajo: consulte [Definición de una variable en la sección Steps](#workflows-to-define-variable-steps)
**nota**  
El `Steps` método solo funciona con las acciones de CodeCatalyst compilación, prueba y **GitHub Acciones**, ya que son las únicas acciones que incluyen una `Steps` sección.

Para ver ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md).

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

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

**Definición de una variable en la sección Entradas (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. Elija **Edit (Edición de)**.

1. Elija **Visual**.

1. En el diagrama de flujo de trabajo, elija la acción en la que quiera especificar la variable.

1. Seleccione **Entradas**.

1. En **Variables (opcional)**, seleccione **Agregar variable** y haga lo siguiente:

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

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 ]

**Definición de una variable en la sección Entradas (editor de YAML)**

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 **YAML**.

1. En una acción de flujo de trabajo, agregue código similar al siguiente:

   ```
   action-name:
     Inputs:
       Variables:
         - Name: variable-name
           Value: variable-value
   ```

   Para obtener más ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md). Para obtener más información, consulte la [Definición de flujo de trabajo en YAML](workflow-reference.md) para su acció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**.

------

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

**Definición de una variable en la sección “Pasos” (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 el diagrama de flujo de trabajo, elija la acción en la que quiera especificar la variable.

1. Elija **Configuración**.

1. En **los comandos de Shell** o en **GitHublas acciones (YAML)**, las que estén disponibles, defina una variable en la acción`Steps`, de forma explícita o implícita.
   + Para definir la variable de forma explícita, inclúyala en un comando bash directamente en la sección `Steps`.
   + Para definir una variable de forma implícita, especifíquela en un archivo al que se haga referencia en la sección `Steps` de la acción.

     Para ver ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md). Para obtener más información, consulte la [Definición de flujo de trabajo en YAML](workflow-reference.md) de la acció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 ]

**Definición de una variable en la sección “Pasos” (editor de 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 una acción de flujo de trabajo, defina una variable en la sección `Steps` de la acción, de forma explícita o implícita.
   + Para definir la variable de forma explícita, inclúyala en un comando bash directamente en la sección `Steps`.
   + Para definir una variable de forma implícita, especifíquela en un archivo al que se haga referencia en la sección `Steps` de la acción.

     Para ver ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md). Para obtener más información, consulte la [Definición de flujo de trabajo en YAML](workflow-reference.md) de la acció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**.

------

# Definición de un secreto
<a name="workflows-working-with-variables-define-secret"></a>

Defina un secreto en la página **Secretos** de la CodeCatalyst consola. Para obtener más información, consulte [Enmascaramiento de datos mediante secretos](workflows-secrets.md).

Por ejemplo, puede definir un secreto que tenga este aspecto:
+ Nombre (clave): **my-password**
+ Valor: **^\$1H3\$1\$1b9**

Una vez definido el secreto, puede especificar la clave del secreto (**my-password**) en el archivo de definición del flujo de trabajo. Para ver un ejemplo práctico, consulte [Ejemplo: Referencia a un secreto](workflows-working-with-variables-ex.md#workflows-working-with-variables-ex-refer-secret).

# Exportación de una variable para que otras acciones puedan utilizarla
<a name="workflows-working-with-variables-export-input"></a>

Siga estas instrucciones para exportar una variable de una acción para poder hacer referencia a ella en otras acciones.

Antes de exportar una variable, tenga en cuenta lo siguiente:
+ Si solo tiene que hacer referencia a la variable dentro de la acción en la que está definida, no necesita exportarla.
+ No todas las acciones son compatibles con la exportación de variables. Para determinar si su acción es compatible con esta característica, siga las instrucciones del editor visual que aparecen a continuación y compruebe si la acción incluye un botón de **Variables** en la pestaña **Salidas**. En caso afirmativo, la exportación de variables es compatible. 
+ Para exportar una variable de una GitHub acción, consulte[Exportación de los parámetros de salida de GitHub](integrations-github-action-export.md).

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

**Requisito previo**  
Asegúrese de haber definido la variable que quiera exportar. Para obtener más información, consulte [Definición de una variable](workflows-working-with-variables-define-input.md).

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

**Exportación de una variable (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 el diagrama del flujo, elija la acción desde la que quiera exportar la variable.

1. Seleccione **Salidas**.

1. En **Variables (opcional)**, seleccione **Agregar variable** y haga lo siguiente:

   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.

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 ]

**Exportación de una variable (editor de YAML)**

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 **YAML**.

1. En la acción desde la que quiera exportar la variable, añada un código similar al siguiente:

   ```
   action-name:
     Outputs:
       Variables:
         - Name: variable-name
   ```

   Para obtener más ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.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**.

------

# Referencia a una variable en la acción que la define
<a name="workflows-working-with-variables-reference-input"></a>

Siga estas instrucciones para hacer referencia a una variable en la acción que la define.

**nota**  
Para hacer referencia a una variable generada por una GitHub acción, consulte[Referencia a parámetros GitHub de salida](integrations-github-action-referencing.md).

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

**Requisito previo**  
Asegúrese de haber definido la variable a la que quiera hacer referencia. Para obtener más información, consulte [Definición de una variable](workflows-working-with-variables-define-input.md).

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

*No disponible. Seleccione YAML para ver las instrucciones de YAML.*

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

**Referencia a una variable en la acción que la define**

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 **YAML**.

1. En la CodeCatalyst acción que define la variable a la que quieres hacer referencia, añade la variable con la siguiente sintaxis de bash:

   ```
   $variable-name
   ```

   Por ejemplo:

   ```
   MyAction:
       Configuration:
         Steps:
           - Run: $variable-name
   ```

   Para obtener más ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md). Para obtener más información, consulte la información de referencia de su acción en la [Definición de flujo de trabajo en YAML](workflow-reference.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**.

------

# Referencia a la salida de una variable generada por otra acción
<a name="workflows-working-with-variables-reference-action"></a>

Utilice las siguientes instrucciones para hacer referencia a salidas de variables generadas por otras acciones.

**nota**  
 Para hacer referencia a una salida variable de una GitHub acción, consulte[Referencia a parámetros GitHub de salida](integrations-github-action-referencing.md).

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

**Requisito previo**  
Asegúrese de haber exportado la variable a la que quiera hacer referencia. Para obtener más información, consulte [Exportación de una variable para que otras acciones puedan utilizarla](workflows-working-with-variables-export-input.md).

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

*No disponible. Seleccione YAML para ver las instrucciones de YAML.*

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

**Referencia a la salida de una variable generada por otra acción (editor de YAML)**

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 **YAML**.

1. En la CodeCatalyst acción, añada una referencia a la variable con la siguiente sintaxis:

   ```
   ${action-group-name.action-name.variable-name}
   ```

   Reemplace:
   + *action-group-name*con el nombre del grupo de acciones que contiene la acción que genera la variable.
**nota**  
Puede omitir *action-group-name* si no hay ningún grupo de acciones o si la variable es producida por una acción del mismo grupo de acciones.
   + *action-name*con el nombre de la acción que genera la variable.
   + *variable-name*con el nombre de la variable.

   Por ejemplo:

   ```
   MySecondAction:
       Configuration:
         Steps:
           - Run: ${MyFirstAction.TIMESTAMP}
   ```

   Para obtener más ejemplos, consulte [Ejemplos de variables](workflows-working-with-variables-ex.md). Para obtener más información, consulte la [Definición de flujo de trabajo en YAML](workflow-reference.md) para su acció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**.

------

# Referencia a un secreto
<a name="workflows-working-with-variables-reference-secret"></a>

Para obtener instrucciones sobre cómo hacer referencia a un secreto en el archivo de definición del flujo de trabajo, consulte [Uso de un secreto](workflows-secrets.using.md).

Para ver un ejemplo, consulte [Ejemplo: Referencia a un secreto](workflows-working-with-variables-ex.md#workflows-working-with-variables-ex-refer-secret).