Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Sintaxis de metadatos para acciones de GitHub

Puedes crear acciones para realizar tareas en tu repositorio. Las acciones requieren un archivo de metadatos que describa la acción.

Acciones de GitHub is available with GitHub gratis, GitHub Pro, Equipo de GitHub, and Nube de GitHub Enterprise. Para obtener más información, consulta "Productos de GitHub."

En este artículo

Acerca de la nueva sintaxis YAML para Acciones de GitHub

Las acciones Docker y JavaScript requieren un archivo de metadatos. El nombre del archivo de metadatos debe ser action.yml. Los datos del archivo de metadatos definen las entradas, las salidas y el punto de entrada principal para tu acción.

Los archivos de metadatos de acción usan la sintaxis YAML. Si eres nuevo en YAML, puedes leer "Aprender YAML en cinco minutos."

name (nombre)

Requerido El nombre de tu acción. GitHub muestra el name (nombre) en la pestaña Actions (Acciones) para ayudarte a identificar visualmente las acciones en cada trabajo.

author

Opcional El nombre del autor de las acciones.

description

Requerido Una descripción breve de la acción.

inputs (entrada)

Opcional Los parámetros de entrada te permiten especificar datos que la acción espera para usar durante el tiempo de ejecución. GitHub almacena parámetros de entrada como variables de entorno. Las Id de entrada con letras mayúsculas se convierten a minúsculas durante el tiempo de ejecución. Recomendamos usar Id de entrada en minúsculas.

Ejemplo

Este ejemplo configura dos entradas: numOctocats y octocatEyeColor. La entrada numOctocats no se requiere y se predeterminará a un valor de '1'. Se requiere la entrada octocatEyeColor y no tiene un valor predeterminado. Los archivos de flujo de trabajo que usan esta acción deben usar la palabra clave with (con) para establecer un valor de entrada para octocatEyeColor. Para obtener información sobre la sintaxis with (con), consulta "Sintaxis de flujo de trabajo para Acciones de GitHub".

inputs:
  numOctocats:
    description: 'Number of Octocats'
    required: false
    default: '1'
  octocatEyeColor:
    description: 'Eye color of the Octocats'
    required: true

Cuando especificas una entrada para una acción en un archivo de flujo de trabajo o usas un valor de entrada predeterminado, 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úscula y reemplaza los espacios con los caracteres _.

Por ejemplo, si un flujo de trabajo definió las entradas numOctocats y octocatEyeColor, el código de acción podría leer los valores de las entradas usando las variables de entorno INPUT_NUMOCTOCATS y INPUT_OCTOCATEYECOLOR.

inputs.<input_id>

Requerido Un identificador string (cadena) para asociar con la entrada. El valor de <input_id> es un mapa con los metadatos de la entrada. <input_id> debe ser un identificador único dentro del objeto inputs (entradas). El <input_id>> debe comenzar con una letra o _ y debe contener solo caracteres alfanuméricos, -, o _.

inputs.<input_id>.description

Requerido Una descripción de string (cadena) del parámetro de entrada.

inputs.<input_id>.required

Requerido Un boolean (booleano) para indicar si la acción requiere el parámetro de entrada. Establecer en true cuando se requiera el parámetro.

inputs.<input_id>.default

Opcional Una string (cadena) 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.

outputs

Opcional Los parámetros de salida te permiten especificar los datos que las acciones posteriores pueden usar posteriormente en el flujo de trabajo después de la acción que define que se han ejecutado estas salidas. Por ejemplo, si se realizó una acción además de las 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 Id de salida con letras mayúsculas se convierten a minúsculas durante el tiempo de ejecución. Recomendamos usar Id de salida en minúsculas.

outputs.<output_id>

Requerido Un identificador string (cadena) para asociar con la salida. El valor de <output_id> es un mapa con los metadatos de la salida. <output_id> debe ser un identificador único dentro del objeto outputs (salidas). El <output_id>> debe comenzar con una letra o _ y debe contener solo caracteres alfanuméricos, -, o _.

outputs.<output_id>.description

Requerido Una descripción de string (cadena) del parámetro de salida.

runs (ejecuciones)

Requerido El comando que se debe ejecutar cuando se ejecuta la acción.

using

Requerido La aplicación que se debe usar para ejecutar el código especificado en main (principal).

Ejemplo usando Node.js
using: 'node12'
main: 'main.js'
Ejemplo usando Dockerfile en tu repositorio
using: 'docker'
image: 'Dockerfile'
using: 'docker'
image: 'docker://debian:stetch-slim'

env

Opcional Especifica una asignación de clave/valor de las variables del entorno para establecer el entorno virtual.

main

Requerido para acciones de JavaScript El archivo de código que contiene tu código de acción. La aplicación especificada con la sintaxis using (mediante) ejecutará este archivo.

image

Requerido para acciones del contenedor La imagen Docker para usar como el contenedor para ejecutar la acción. El valor puede ser el nombre de la imagen de base Docker, un Dockerfile en tu repositorio, un Hub o registro de docker público. Para hacer referencia a un Dockerfile local a tu repositorio, usa una ruta relativa a la raíz del repositorio. La aplicación especificada con la sintaxis using (mediante) ejecutará este archivo.

Ejemplo usando Dockerfile en tu repositorio
image: 'Dockerfile'
Ejemplo usando un contenedor de registro Docker público
image: 'docker://debian:stretch-slim'
Ejemplo usando un contenedor Docker público en GitHub
image: 'actions/container-template@master'

entrypoint

Opcional para acciones del contenedor Anula el Docker ENTRYPOINT en el Dockerfile, o lo establece si es que no tiene uno especificado. Si la acción no usa la palabra clave runs (ejecuta), se ejecutarán los comandos entrypoint. La instrucción Docker ENTRYPOINT tiene un formulario shell y un formulario de ejecución. La documentación Docker ENTRYPOINT recomienda usar el formulario de ejecución de la instrucción ENTRYPOINT.

args

Opcional para acciones del contenedor Una array of strings que define las entradas para un contenedor Docker. Las entradas pueden incluir cadenas codificadas de forma rígida. GitHub comunica los argsen el ENTRYPOINT del contenedor cuando se inicia el contenedor.

Los args se usan en el lugar de la instrucción CMD en un Dockerfile. Si usas CMD en tu Dockerfile, usa los lineamientos ordenados por preferencia:

  1. Los documentos requerían argumentos en el README de las acciones y las omiten desde la instrucción CMD.
  2. Usa los valores predeterminados que permiten usar la acción sin especificar ningún args.
  3. Si la acción expone un indicador --help o algo similar, usa ese como el valor predeterminado para que la acción se documente automáticamente.
Ejemplo
# formato de matriz
args: ['${{ inputs.greeting }}', 'foo', 'bar']

# y porque es solo YAML, esto funciona:
args:
  - ${{ inputs.greeting }}
  - 'foo'
  - 'bar'

branding (marca)

Puedes usar un color y un icono Pluma para crear una insignia para personalizar y distinguir tu acción en Mercado GitHub. Para obtener más información, consulta "Acciones de GitHub en Mercado GitHub" en la documentación del programador de GitHub.

Ejemplo

branding:
  icon: 'award'  
  color: 'green'

color

El color de fondo de la insignia. Puede ser: blanco, amarillow, azul, verde, anaranjado, rojo, púrpura o gris oscuro.

icon

El nombre del icono de Pluma que se debe usar.

actividad radiodifusión alerta-círculo alerta-octágono
alerta-triángulo alinear-centro alinear-justificar alinear-izquierda
alinear-derecha ancla apertura archivar
flecha-abajo-círculo flecha-abajo-izquierda flecha-abajo-derecha flecha-abajo
flecha-izquierda-círculo flecha-izquierda flecha-derecha-círculo flecha-derecha
flecha-arriba-círculo flecha-arriba-izquierda flecha-arriba-derecha flecha-arriba
en-cartel premio barra-cuadro-2 barra-cuadro
batería-carga batería campana-apagado campana
bluetooth negrita libro-abierto libro
marcador caja maletín calendario
cámara-apagado cámara molde verificar-círculo
verificar-cuadrado verificar comilla angular-abajo comilla angular-izquierda
comillas angulares-derehca comilla angular- arriba comillas angulares-abajo comillas angulares-izquierda
comillas angulares-derecha comillas angulares- arriba círculo portapapeles
reloj nube-llovizna nube-rayo nube-apagado
nube-lluvia nube-nieve nube código
comando brújula copiar ángulo-abajo-izquierdo
ángulo-abajo-derecho ángulo-izquierdo-abajo ángulo-arriba-izquierdo ángulo-derecho-abajo
ángulo-derecho-arriba ángulo-arriba-izquierdo ángulo-arriba-derecha cpu
tarjeta-de-crédito cortar punto de mira base de datos
eliminar disco dólar-signo descargar-nube
descargar gota editar-2 editar-3
editar externo-enlace desviar la mirada ojo
facebook avance rápido pluma archivo-menos
archivo-más archivo-texto archivo película
filtro bandera carpeta-menos carpeta-más
carpeta obsequio git-rama git-confirmar
git-fusionar git-solicitud-extracción globo cuadrícula
disco-duro hash auriculares corazón
ayuda-círculo hogar imagen bandeja de entrada
info cursiva capas diseño
vida-boya enlace-2 enlace lista
cargador bloquear iniciar-sesión cerrar-sesión
correo asignar-pin map maximizar-2
maximizar menú mensaje-círculo mensaje-cuadrado
mic-apagado mic minimizar-2 minimizar
menos-círculo menos-cuadrado menos monitor
luna más-horizontal más-vertical mover
música navegación-2 navegación octágono
paquete sujetapapeles pausa-círculo pausar
porcentaje llamada-telefónica teléfono-transferencia teléfono-entrante
teléfono-perdido teléfono-apagado teléfono-salida teléfono
gráfico-circular reproducir-círculo reproducir más-círculo
más-cuadrado más bolsillo potencia
impresora radio actualizar-ccw actualizar-cw
repetir retroceder rotar-ccw rotar-cw
rss guardar tijeras buscar
enviar servidor parámetros compartir-2
compartir escudo-apagar escudo bolsa-de-compras
carro-de-compras aleatorio barra lateral omitir-atrás
omitir-adelante barra deslizadores smartphone
parlante cuadrado estrella detener-círculo
sol amanecer atardecer tablet
etiqueta destino terminal termómetro
pulgares-abajo pulgares-arriba alternar-izquierda alternar-derecha
papelera-2 papelera tendencia-abajo tendencia-arriba
triángulo camión TV tipo
paraguas subrayar desbloquear cargar-nube
cargar usuario-comprobar usuario-menos usuario-más
usuario-x usuario users video-apagar
video correo de voz volumen-1 volumen-2
volumen-x volumen ver wifi-apagar
wifi viento x-círculo x-cuadrado
x destruir-apagado destruir acercarse
alejarse

Pregunta a una persona

¿No puedes encontrar lo que estás buscando?

Contáctanos