# Guía de referencia de la sintaxis de metadatos

Puedes crear acciones para realizar tareas en tu repositorio. Si va a realizar una acción personalizada, necesitará un archivo de metadatos que use la sintaxis YAML.

> \[!NOTE]
> Puedes crear un contenedor Docker, JavaScript y acciones compuestas. Las acciones requieren un archivo de metadatos para definir la configuración de entradas, salidas y ejecuciones de la acción. Los archivos de metadatos de acción usan la sintaxis YAML y el nombre de archivo de metadatos debe ser `action.yml` o `action.yaml`. El formato preferido es `action.yml`.

## `name`

**Obligatorio** Nombre de la acción.
GitHub muestra `name` en la pestaña **Acciones** para ayudar a identificar visualmente las acciones en cada tarea.

## `author`

**Opcional** Nombre del creador de la acción.

## `description`

**Obligatorio** Descripción breve de la acción.

## `inputs`

**Opcional** Los parámetros de entrada permiten especificar los datos que la acción espera usar durante el tiempo de ejecución.
GitHub almacena parámetros de entrada como variables de entorno. Recomendamos usar Id de entrada en minúsculas.

### Ejemplo: Especificar las entradas

En este ejemplo se configuran dos entradas: `num-octocats` y `octocat-eye-color`. La entrada `num-octocats` no es necesaria y toma `1` como valor predeterminado. La entrada `octocat-eye-color` sí es necesaria y no tiene valor predeterminado.

> \[!NOTE]
> Las acciones que usan `required: true` no devolverán automáticamente un error si no se especifica la entrada.

Los archivos de flujo de trabajo que utilizan esta acción deben usar la palabra clave `with` para establecer un valor de entrada para `octocat-eye-color`. Para más información sobre la sintaxis `with`, consulta [Sintaxis del flujo de trabajo para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idstepswith).

```yaml
inputs:
  num-octocats:
    description: 'Number of Octocats'
    required: false
    default: '1'
  octocat-eye-color:
    description: 'Eye color of the Octocats'
    required: true
```

Al especificar una entrada, GitHub crea una variable de entorno para la entrada con el nombre `INPUT_<VARIABLE_NAME>`. La variable de entorno creada convierte los nombre de entrada en letras mayúsculas y reemplaza los espacios con caracteres `_`.

Si la acción se escribe mediante una [composición](/es/enterprise-server@3.22/actions/tutorials/create-actions/create-a-composite-action), no obtendrá `INPUT_<VARIABLE_NAME>`automáticamente. Con las acciones compuestas, puede usar el [`inputs` contexto](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/contexts#inputs-context) para acceder a las entradas de acción.

Para acceder a la variable de entorno en una acción de contenedor de Docker, debe pasar la entrada mediante la palabra clave `args` en el archivo de metadatos de la acción. Para más información sobre el archivo de metadatos de la acción para acciones de contenedor de Docker, consulta [Creación de una acción de contenedor de Docker](/es/enterprise-server@3.22/actions/tutorials/use-containerized-services/create-a-docker-container-action#creating-an-action-metadata-file).

Por ejemplo, si en un flujo de trabajo se han definido las entradas `num-octocats` y `octocat-eye-color`, el código de acción podría leer los valores de las entradas mediante las variables de entorno `INPUT_NUM-OCTOCATS` y `INPUT_OCTOCAT-EYE-COLOR`.

### `inputs.<input_id>`

**Obligatorio** Identificador `string` que se va a asociar a la entrada. El valor de `<input_id>` es un mapa de los metadatos de la entrada.
`<input_id>` debe ser un identificador único dentro del objeto `inputs`.
`<input_id>` debe empezar con una letra o `_`, y solo puede contener caracteres alfanuméricos `-` o `_`.

### `inputs.<input_id>.description`

**Obligatorio** Descripción `string` del parámetro de entrada.

### `inputs.<input_id>.required`

**Opcional** Un valor `boolean` para indicar si la acción necesita el parámetro de entrada. Se establece en `true` cuando el parámetro es obligatorio.

### `inputs.<input_id>.default`

**Opcional** Un valor `string` que representa el valor predeterminado. El valor predeterminado se usa cuando un parámetro de entrada no se especifica en un archivo de flujo de trabajo.

### `inputs.<input_id>.deprecationMessage`

**Opcional** Si se usa el parámetro de entrada, `string` se registra como un mensaje de advertencia. Puede usar esta advertencia para notificar a los usuarios que la entrada es cerrar definitivamente y mencionar cualquier alternativa.

## `outputs` para acciones de contenedor de Docker y JavaScript

**Opcional** Los parámetros de salida permiten declarar datos que establece una acción. Las acciones que se ejecutan más tarde en un flujo de trabajo pueden usar el conjunto de datos de salida en acciones de ejecución anterior. Por ejemplo, si tuviste una acción que realizó la adición de dos entradas (x + y = z), la acción podría dar como resultado la suma (z) para que otras acciones la usen como entrada.

Las salidas pueden ser un máximo de 1 MB por trabajo. El total de salidas de una ejecución de flujo de trabajo puede tener un máximo de 50 MB. El tamaño es aproximado en función de la codificación UTF-16.

Si no declaras una salida en tu archivo de metadatos de acción, todavía puedes configurar las salidas y utilizarlas en un flujo de trabajo. Para obtener más información sobre cómo establecer salidas en una acción, consulta [Comandos de flujo de trabajo para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/workflow-commands#setting-an-output-parameter).

### Ejemplo: Declarar las salidas para los contenedores Docker y las acciones de JavaScript

```yaml
outputs:
  sum: # id of the output
    description: 'The sum of the inputs'
```

### `outputs.<output_id>`

**Obligatorio** Identificador `string` que se va a asociar a la salida. El valor de `<output_id>` es un mapa de los metadatos de la salida.
`<output_id>` debe ser un identificador único dentro del objeto `outputs`.
`<output_id>` debe empezar con una letra o `_`, y solo puede contener caracteres alfanuméricos `-` o `_`.

### `outputs.<output_id>.description`

**Obligatorio** Descripción `string` del parámetro de salida.

## `outputs` para acciones compuestas

**Opcional**`outputs` usa los mismos parámetros que `outputs.<output_id>` y `outputs.<output_id>.description` (consulta [`outputs` para acciones de contenedor de Docker y JavaScript](#outputs-for-docker-container-and-javascript-actions)), pero también incluye el token `value`.

Las salidas pueden ser un máximo de 1 MB por trabajo. El total de salidas de una ejecución de flujo de trabajo puede tener un máximo de 50 MB. El tamaño es aproximado en función de la codificación UTF-16.

### Ejemplo: Declarar las salidas para las acciones compuestas

```yaml
outputs:
  random-number:
    description: "Random number"
    value: ${{ steps.random-number-generator.outputs.random-id }}
runs:
  using: "composite"
  steps:
    - id: random-number-generator
      run: echo "random-id=$(echo $RANDOM)" >> $GITHUB_OUTPUT
      shell: bash
```

### `outputs.<output_id>.value`

**Obligatorio** Valor al que se asignará el parámetro de salida. Puede configurarlo en `string` o en una expresión teniendo en cuenta el contexto. Por ejemplo, puede usar el contexto `steps` para establecer el valor `value` de una salida en el valor de salida de un paso.

Para más información sobre cómo usar la sintaxis de contexto, consulta [Contextos de referencia](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/contexts).

## `runs`

**Obligatorio** Especifica si es una acción de JavaScript, una acción compuesta o una acción de contenedor de Docker y cómo se ejecut.

## `runs` para acciones de JavaScript

**Obligatorio** Configura la ruta al código de la acción y el tiempo de ejecución que se usa para ejecutar el código.

### Ejemplo: uso de Node.js v24

```yaml
runs:
  using: 'node24'
  main: 'main.js'
```

### `runs.using` para acciones de JavaScript

**Obligatorio** Tiempo de ejecución utilizado para ejecutar el código especificado en [`main`](#runsmain).

* Utiliza `node20` para Node.js 20.
* Usa `node24` para Node.js v24.

### `runs.main`

**Obligatorio** El archivo que contiene el código de la acción. El tiempo de ejecución especificado en [`using`](#runsusing-for-javascript-actions) ejecuta este archivo.

### `runs.pre`

**Opcional** Permite ejecutar un script al principio de un trabajo, antes de que comience la acción `main:`. Por ejemplo, puede usar `pre:` para ejecutar un script de configuración de requisitos previos. El tiempo de ejecución especificado con la sintaxis [`using`](#runsusing-for-javascript-actions) ejecutará este archivo. La acción `pre:` siempre se ejecuta de forma predeterminada, pero puede invalidarla mediante [`runs.pre-if`](#runspre-if).

> \[!NOTE]
> `runs.pre` no es compatible con las acciones locales.

En este ejemplo, la acción `pre:` ejecuta un script denominado `setup.js`:

```yaml
runs:
  using: 'node24'
  pre: 'setup.js'
  main: 'index.js'
  post: 'cleanup.js'
```

### `runs.pre-if`

**Opcional** Permite definir condiciones para la ejecución de la acción `pre:`. La acción `pre:` solo se ejecutará si se cumplen las condiciones de `pre-if`. Si no se establece, el valor predeterminado de `pre-if` es `always()`. En `pre-if`, las funciones de comprobación de estado se comparan con el estado del puesto, no con el de la acción en sí.

Tenga en cuenta que el contexto `step` no está disponible, ya que todavía no se ha ejecutado ningún paso.

En este ejemplo, `cleanup.js` solo se ejecuta en ejecutores basados en Linux:

```yaml
  pre: 'cleanup.js'
  pre-if: runner.os == 'linux'
```

### `runs.post`

**Opcional** Permite ejecutar un script al final de un trabajo una vez que se complete la acción `main:`. Por ejemplo, puede usar `post:` para finalizar algunos procesos o eliminar archivos innecesarios. El tiempo de ejecución especificado con la sintaxis [`using`](#runsusing-for-javascript-actions) ejecutará este archivo.

En este ejemplo, la acción `post:` ejecuta un script denominado `cleanup.js`:

```yaml
runs:
  using: 'node24'
  main: 'index.js'
  post: 'cleanup.js'
```

La acción `post:` siempre se ejecuta de forma predeterminada, pero puede invalidarla mediante `post-if`.

### `runs.post-if`

**Opcional** Permite definir condiciones para la ejecución de la acción `post:`. La acción `post:` solo se ejecutará si se cumplen las condiciones de `post-if`. Si no se establece, el valor predeterminado de `post-if` es `always()`. En `post-if`, las funciones de comprobación de estado se comparan con el estado del puesto, no con el de la acción en sí.

Por ejemplo, `cleanup.js` solo se ejecutará en ejecutores basados en Linux:

```yaml
  post: 'cleanup.js'
  post-if: runner.os == 'linux'
```

## `runs` para acciones compuestas

**Obligatorio** Configura la ruta a la acción compuesta.

### `runs.using` para acciones compuestas

**Obligatorio** Debe establecer este valor en `'composite'`.

### `runs.steps`

**Obligatorio** Pasos que tienes previsto ejecutar en esta acción. Pueden ser pasos `run` o `uses`.

#### `runs.steps[*].run`

**Opcional** Comando que quieres ejecutar. Esto puede estar integrado o ser un script en tu repositorio de acciones.

```yaml
runs:
  using: "composite"
  steps:
    - run: ${{ github.action_path }}/test/script.sh
      shell: bash
```

Como alternativa, puede usar `$GITHUB_ACTION_PATH`:

```yaml
runs:
  using: "composite"
  steps:
    - run: $GITHUB_ACTION_PATH/script.sh
      shell: bash
```

Para más información, consulta [Contextos de referencia](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/contexts#github-context).

#### `runs.steps[*].shell`

**Opcional** Shell donde quieres ejecutar el comando. Puedes usar cualquiera de los shells que se enumeran en [Sintaxis del flujo de trabajo para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idstepsshell). Es obligatorio si se establece `run`.

#### `runs.steps[*].if`

**Opcional** Puede usar la condicional `if` para impedir que se ejecute un paso si no se cumple una condición. Puedes usar cualquier contexto y expresión admitidos para crear un condicional.

Cuando se usan expresiones en un condicional `if`, se puede omitir la sintaxis de la expresión `${{ }}` opcionalmente, porque GitHub Actions evalúa automáticamente el condicional `if` como una expresión. Sin embargo, esta excepción no se aplica en todas partes.

Debe usar siempre la sintaxis de expresión `${{ }}` o escapar con `''`, `""`o   `()` cuando la expresión comienza con `!`, ya que `!` es una notación reservada en formato YAML. Por ejemplo:

```yaml
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
```

Para obtener más información, consulte [Evaluación de expresiones en flujos de trabajo y acciones](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/expressions).

**Ejemplo: Uso de contextos**

Este paso solo se ejecuta cuando el tipo de evento es `pull_request` y la acción del evento es `unassigned`.

```yaml
steps:
  - run: echo This event is a pull request that had an assignee removed.
    if: ${{ github.event_name == 'pull_request' && github.event.action == 'unassigned' }}
```

**Ejemplo: Uso de funciones de comprobación de estado**

`my backup step` solo se ejecuta cuando se produce un error en el paso anterior de una acción compuesta. Para más información, consulta [Evaluación de expresiones en flujos de trabajo y acciones](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/expressions#status-check-functions).

```yaml
steps:
  - name: My first step
    uses: octo-org/action-name@main
  - name: My backup step
    if: ${{ failure() }}
    uses: actions/heroku@1.0.0
```

#### `runs.steps[*].name`

**Opcional** Nombre del paso compuesto.

#### `runs.steps[*].id`

**Opcional** Identificador único para el paso. Puede usar `id` para hacer referencia al paso en los contextos. Para más información, consulta [Contextos de referencia](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/contexts).

#### `runs.steps[*].env`

**Opcional** Establece una `map` de variables de entorno solo para ese paso. Si quiere modificar la variable de entorno almacenada en el flujo de trabajo, use `echo "{name}={value}" >> $GITHUB_ENV` en un paso compuesto.

#### `runs.steps[*].working-directory`

**Opcional** Especifica el directorio de trabajo donde se ejecuta el comando.

#### `runs.steps[*].uses`

**Opcional** Selecciona una acción que se ejecutará como parte de un paso en el trabajo. Una acción es una unidad de código reutilizable. Puede usar una acción definida en el mismo repositorio que el flujo de trabajo, un repositorio público o en una [imagen de contenedor de Docker publicada](https://hub.docker.com/).

Te recomendamos firmemente que incluyas la versión de la acción que estás utilizando y especifiques un número de etiqueta de la ref de Git, SHA o Docker. Si no especificas una versión, podrías interrumpir tus flujos de trabajo o provocar un comportamiento inesperado cuando el propietario de la acción publique una actualización.

* El uso del SHA de confirmación de una versión de acción lanzada es lo más seguro para la estabilidad y la seguridad.
* Usar la versión de acción principal específica te permite recibir correcciones críticas y parches de seguridad y al mismo tiempo mantener la compatibilidad. También asegura que tu flujo de trabajo aún debería funcionar.
* Puede ser conveniente utilizar la rama predeterminada de una acciòn, pero si alguien lanza una versiòn principal nueva con un cambio importante, tu flujo de trabajo podrìa fallar.

Algunas acciones necesitan entradas que debe establecer mediante la palabra clave [`with`](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idstepswith). Revisa el archivo README de la acción para determinar las entradas requeridas.

```yaml
runs:
  using: "composite"
  steps:
    # Reference a specific commit
    - uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3
    # Reference the major version of a release
    - uses: actions/checkout@v6
    # Reference a specific version
    - uses: actions/checkout@v6.2.0
    # Reference a branch
    - uses: actions/checkout@main
    # References a subdirectory in a public GitHub repository at a specific branch, ref, or SHA
    - uses: actions/aws/ec2@main
    # References an action in the same repository at the running commit
    - uses: $/.github/actions/my-action
    # References a local action
    - uses: ./.github/actions/my-action
    # References a docker public registry action
    - uses: docker://gcr.io/cloud-builders/gradle
    # Reference a docker image published on docker hub
    - uses: docker://alpine:3.8
```

Para hacer referencia a una acción almacenada en el mismo repositorio que la acción compuesta, use la `$/` referencia del repositorio propio, como se muestra en el `$/.github/actions/my-action` ejemplo anterior. Se resuelve en ese repositorio en la confirmación en ejecución, por lo que no es necesario desproteger primero el repositorio y no debe incluir un `@{ref}` sufijo. La `$/` sintaxis no está disponible en GitHub Enterprise Server.

Para obtener una comparación de `$/`, `{owner}/{repo}@{ref}`y `./`, vea [Sintaxis del flujo de trabajo para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/workflow-syntax#example-using-an-action-in-the-same-repository-as-the-workflow-at-the-running-commit-recommended).

#### `runs.steps[*].with`

**Opcional** Un `map` de los parámetros de entrada definidos por la acción. Cada parámetro de entrada es un par clave/valor. Para obtener más información, consulta [Ejemplo: Especificación de entradas](#example-specifying-inputs).

```yaml
runs:
  using: "composite"
  steps:
    - name: My first step
      uses: actions/hello_world@main
      with:
        first_name: Mona
        middle_name: The
        last_name: Octocat
```

#### `runs.steps[*].continue-on-error`

**Opcional** Impide que se produzca un error en la acción cuando se produce un error en un paso. es-ES: Configúralo en `true` para permitir que la acción continúe cuando este paso falle.

## `runs` para acciones de contenedor de Docker

**Obligatorio** Configura la imagen usada para la acción de contenedor de Docker.

### Ejemplo: Utilizar un Dockerfile en tu repositorio

```yaml
runs:
  using: 'docker'
  image: 'Dockerfile'
```

### Ejemplo: Utilizar un contenedor de registro público de Docker

```yaml
runs:
  using: 'docker'
  image: 'docker://debian:stretch-slim'
```

### `runs.using` para acciones de contenedor de Docker

**Obligatorio** Debe establecer este valor en `'docker'`.

### `runs.pre-entrypoint`

**Opcional** Permite ejecutar un script antes de que comience la acción `entrypoint`. Por ejemplo, puede usar `pre-entrypoint:` para ejecutar un script de configuración de requisitos previos.
GitHub Actions usa `docker run` para iniciar esta acción y ejecuta el script dentro de un nuevo contenedor que usa la misma imagen base. Esto significa que el estado en tiempo de ejecución es diferente del contenedor `entrypoint` principal y que a los estados que necesita se debe acceder desde el área de trabajo, `HOME`o como una variable `STATE_`. La acción `pre-entrypoint:` siempre se ejecuta de forma predeterminada, pero puede invalidarla mediante [`runs.pre-if`](#runspre-if).

El tiempo de ejecución especificado con la sintaxis [`using`](#runsusing-for-docker-container-actions) ejecutará este archivo.

En este ejemplo, la acción `pre-entrypoint:` ejecuta un script denominado `setup.sh`:

```yaml
runs:
  using: 'docker'
  image: 'Dockerfile'
  args:
    - 'bzz'
  pre-entrypoint: 'setup.sh'
  entrypoint: 'main.sh'
```

### `runs.image`

**Obligatorio** Imagen de Docker que se usará como contenedor para ejecutar la acción. El valor puede ser el nombre de la imagen base de Docker, un `Dockerfile` local en el repositorio o una imagen pública en Docker Hub u otro registro. Para hacer referencia a un `Dockerfile` local de su repositorio, el archivo debe tener el nombre `Dockerfile` y debe usar una ruta relativa al archivo de metadatos de la acción. La aplicación `docker` ejecutará este archivo.

### `runs.env`

**Opcional** especifica una asignación de clave-valor de las variables de entorno que se van a establecer en el entorno de contenedor.

### `runs.entrypoint`

**Opcional** Reemplaza el `ENTRYPOINT` de Docker en `Dockerfile`, o lo establece si aún no se había especificado. Use `entrypoint` cuando `Dockerfile` no especifique `ENTRYPOINT` o si quiere invalidar la instrucción `ENTRYPOINT`. Si omite `entrypoint`, se ejecutarán los comandos que especifique en la instrucción `ENTRYPOINT` de Docker. La instrucción `ENTRYPOINT` de Docker tiene un formato *shell* y otro *exec*. En la documentación de `ENTRYPOINT` de Docker se recomienda usar el formato *exec* de la instrucción `ENTRYPOINT`.

Para obtener más información sobre cómo se ejecuta `entrypoint`, consulta [Soporte de Dockerfile para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/dockerfile-support#entrypoint).

### `runs.post-entrypoint`

**Opcional** Permite ejecutar un script de limpieza una vez que se complete la acción `runs.entrypoint`.
GitHub Actions usa `docker run` para iniciar esta acción. Dado que GitHub Actions ejecuta el script dentro de un nuevo contenedor con la misma imagen base, el estado en tiempo de ejecución es diferente del contenedor principal `entrypoint` . Puede acceder a cualquier estado que necesite en el área de trabajo, `HOME` o como una variable `STATE_`. La acción `post-entrypoint:` siempre se ejecuta de forma predeterminada, pero puede invalidarla mediante [`runs.post-if`](#runspost-if).

```yaml
runs:
  using: 'docker'
  image: 'Dockerfile'
  args:
    - 'bzz'
  entrypoint: 'main.sh'
  post-entrypoint: 'cleanup.sh'
```

### `runs.args`

**Opcional** Matriz de cadenas que definen las entradas de un contenedor de Docker. Las entradas pueden incluir cadenas codificadas de forma rígida.
GitHub pasa el `args` al `ENTRYPOINT` del contenedor cuando se inicia el contenedor.

`args` se usan en lugar de la instrucción `CMD` en `Dockerfile`. Si utilizas `CMD` en tu `Dockerfile`, sigue las directrices ordenadas por preferencia:

1. En el documento se necesitaban argumentos en el archivo Léame de la acción y omitirlos de la instrucción `CMD`.
2. Use los valores predeterminados que permiten usar la acción sin especificar `args`.
3. Si la acción expone una marca `--help`, o algo similar, úselo para que la acción se documente de forma automática.

Si necesitas pasar variables de ambiente a una acción, asegúrate que ésta ejecute un shell de comandos para realizar la sustitución de variables. Por ejemplo, si el atributo `entrypoint` está establecido en `"sh -c"`, `args` se ejecutará en un shell de comandos. Como alternativa, si en `Dockerfile` se usa `ENTRYPOINT` para ejecutar el mismo comando (`"sh -c"`), `args` se ejecutará en un shell de comandos.

Para obtener más información sobre el uso de la `CMD` instrucción con GitHub Actions, vea [Soporte de Dockerfile para Acciones de GitHub](/es/enterprise-server@3.22/actions/reference/workflows-and-actions/dockerfile-support#cmd).

#### Ejemplo: Definir argumentos para el contenedor de Docker

```yaml
runs:
  using: 'docker'
  image: 'Dockerfile'
  args:
    - ${{ inputs.greeting }}
    - 'foo'
    - 'bar'
```

## `branding`

**Opcional** Puedes usar un color y un icono de [Feather](https://feathericons.com/) para crear un distintivo para personalizar y distinguir tu acción. Las insignias se muestran junto al nombre de la acción en [GitHub Marketplace](https://github.com/marketplace?type=actions).

### Ejemplo: Configurar la marca de una acción

```yaml
branding:
  icon: 'award'
  color: 'green'
```

### `branding.color`

El color de fondo del distintivo. Puede ser de tipo `white`, `black`, `yellow`, `blue`, `green`, `orange`, `red`, `purple` o `gray-dark`.

### `branding.icon`

Nombre del icono v4.28.0 [Feather](https://feathericons.com/) que se va a usar.

#### Iconos omitidos

Se omiten los iconos de marca y todos los iconos siguientes.

<ul style="-webkit-column-count: 4; -moz-column-count: 4; column-count: 4;">
<li>café</li>
<li>columnas</li>
<li>divide-circle</li>
<li>divide-square</li>
<li>dividir</li>
<li>fruncir el ceño</li>
<li>hexágono</li>
<li>clave</li>
<li>meh</li>
<li>puntero del ratón</li>
<li>sonrisa</li>
<li>herramienta</li>
<li>x-octágono</li>
</ul>

#### Lista exhaustiva de todos los iconos admitidos actualmente

<!--
  This list should match the icon list in `app/models/repository_actions/icons.rb` in the internal github repo.
  To support a new icon, update `app/models/repository_actions/icons.rb` and add the svg to `/static/images/icons/feather` in the internal github repo.
-->

<ul style="-webkit-column-count: 4; -moz-column-count: 4; column-count: 4;">
<li>actividad</li>
<li>airplay</li>
<li>alert-circle</li>
<li>alert-octagon</li>
<li>triángulo de alerta</li>
<li>align-center</li>
<li>align-justify</li>
<li>align-left</li>
<li>align-right</li>
<li>ancla</li>
<li>apertura</li>
<li>archivar</li>
<li>arrow-down-circle</li>
<li>arrow-down-left</li>
<li>flecha-abajo-derecha</li>
<li>arrow-down</li>
<li>flecha-izquierda-círculo</li>
<li>flecha-izquierda</li>
<li>arrow-left</li>
<li>flecha a la derecha</li>
<li>arrow-up-circle</li>
<li>arrow-up-left</li>
<li>flecha arriba a la derecha</li>
<li>arrow-up</li>
<li>at-sign</li>
<li>premio</li>
<li>bar-chart-2</li>
<li>gráfico de barras</li>
<li>carga de la batería</li>
<li>batería</li>
<li>**  
campana desactivada</li>
<li>campana</li>
<li>Bluetooth</li>
<li>negrita</li>
<li>book-open</li>
<li>libro</li>
<li>marcador</li>
<li>caja</li>
<li>maletín</li>
<li>calendario</li>
<li>cámara apagada</li>
<li>cámara</li>
<li>conversión</li>
<li>círculo de verificación</li>
<li>check-square</li>
<li>verificar</li>
<li>chevron-down</li>
<li>chevron-left</li>
<li>chevron-right</li>
<li>chevron-up</li>
<li>chevrons-down</li>
<li>chevrons-left</li>
<li>chevrons-right</li>
<li>chevrons-up</li>
<li>círculo</li>
<li>Portapapeles</li>
<li>reloj</li>
<li>nube-llovizna</li>
<li>nube-relámpago</li>
<li>cloud-off</li>
<li>nube-lluvia</li>
<li>nube-nieve</li>
<li>nube</li>
<li>código</li>
<li>comando</li>
<li>compás</li>
<li>copiar</li>
<li>corner-down-left</li>
<li>corner-down-right</li>
<li>corner-left-down</li>
<li>corner-left-up</li>
<li>corner-right-down</li>
<li>corner-right-up</li>
<li>corner-up-left</li>
<li>corner-up-right</li>
<li>CPU</li>
<li>tarjeta de crédito</li>
<li>crop</li>
<li>crosshair</li>
<li>base de datos</li>
<li>eliminar</li>
<li>disc</li>
<li>dollar-sign</li>
<li>download-cloud</li>
<li>descarga</li>
<li>droplet</li>
<li>edición-2</li>
<li>edit-3</li>
<li>edición</li>
<li>enlace externo</li>
<li>eye-off</li>
<li>ojo</li>
<li>fast-forward</li>
<li>pluma</li>
<li>file-minus</li>
<li>file-plus</li>
<li>archivo de texto</li>
<li>archivo</li>
<li>película</li>
<li>filtro</li>
<li>Marca</li>
<li>folder-minus</li>
<li>folder-plus</li>
<li>folder</li>
<li>regalo</li>
<li>git-branch</li>
<li>git-commit</li>
<li>git-merge</li>
<li>git-pull-request</li>
<li>globo terráqueo</li>
<li>grid</li>
<li>disco duro</li>
<li>hash</li>
<li>auriculares</li>
<li>corazón</li>
<li>círculo de ayuda</li>
<li>home</li>
<li>imagen</li>
<li>inbox</li>
<li>información</li>
<li>cursiva</li>
<li>Capas</li>
<li>diseño</li>
<li>life-buoy</li>
<li>link-2</li>
<li>link</li>
<li>lista</li>
<li>Cargador</li>
<li>bloquear</li>
<li>inicio de sesión</li>
<li>cerrar sesión</li>
<li>correo</li>
<li>map-pin</li>
<li>mapa</li>
<li>maximizar-2</li>
<li>maximizar</li>
<li>menú</li>
<li>círculo de mensaje</li>
<li>message-square</li>
<li>Micrófono apagado</li>
<li>micrófono</li>
<li>minimize-2</li>
<li>minimizar</li>
<li>minus-circle</li>
<li>minus-square</li>
<li>minus</li>
<li>monitor</li>
<li>luna</li>
<li>más horizontal</li>
<li>more-vertical</li>
<li>trasladar</li>
<li>música</li>
<li>navigation-2</li>
<li>navegación</li>
<li>octágono</li>
<li>paquete</li>
<li>paperclip</li>
<li>pause-circle</li>
<li>pausar</li>
<li>por ciento</li>
<li>llamada telefónica</li>
<li>phone-forwarded</li>
<li>llamada entrante</li>
<li>llamada perdida</li>
<li>teléfono apagado</li>
<li>phone-outgoing</li>
<li>teléfono</li>
<li>pie-chart</li>
<li>play-circle</li>
<li>play</li>
<li>plus-circle</li>
<li>plus-square</li>
<li>signo más</li>
<li>bolsillo</li>
<li>potencia</li>
<li>impresora</li>
<li>radio</li>
<li>refresh-ccw</li>
<li>refresh-cw</li>
<li>repetir</li>
<li>rewind</li>
<li>rotate-ccw</li>
<li>rotate-cw</li>
<li>rss</li>
<li>Guardar</li>
<li>tijeras</li>
<li>buscar</li>
<li>Enviar</li>
<li>servidor</li>
<li>configuración</li>
<li>share-2</li>
<li>Compartir</li>
<li>shield-off</li>
<li>escudo</li>
<li>bolsa de compras</li>
<li>carrito de compras</li>
<li>shuffle</li>
<li>barra lateral</li>
<li>skip-back</li>
<li>skip-forward</li>
<li>slash</li>
<li>controles deslizantes</li>
<li>teléfono inteligente</li>
<li>altavoz</li>
<li>cuadrado</li>
<li>star (asterisco)</li>
<li>stop-circle</li>
<li>sol</li>
<li>amanecer</li>
<li>puesta de sol</li>
<li>tabla</li>
<li>tableta</li>
<li>etiqueta</li>
<li>objetivo</li>
<li>terminal</li>
<li>termómetro</li>
<li>thumbs-down</li>
<li>pulgar arriba</li>
<li>toggle-left</li>
<li>toggle-right</li>
<li>trash-2</li>
<li>trash</li>
<li>tendencia a la baja</li>
<li>tendencia alcista</li>
<li>triángulo</li>
<li>camión</li>
<li>televisión</li>
<li>tipo</li>
<li>paraguas</li>
<li>subrayado</li>
<li>desbloquear</li>
<li>subir a la nube</li>
<li>subir</li>
<li>verificación de usuario</li>
<li>user-minus</li>
<li>usuario-plus</li>
<li>user-x</li>
<li>usuario</li>
<li>usuarios</li>
<li>video-off</li>
<li>video</li>
<li>buzón de voz</li>
<li>volumen-1</li>
<li>volume-2</li>
<li>volumen-x</li>
<li>volumen</li>
<li>reloj</li>
<li>wifi apagado</li>
<li>wifi</li>
<li>viento</li>
<li>x-circle</li>
<li>x-square</li>
<li>x</li>
<li>zap-off</li>
<li>zap</li>
<li>zoom-in</li>
<li>zoom-out</li>
</ul>