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.

Herramientas de desarrollo para acciones de GitHub

Puedes crear acciones más rápido usando algunas herramientas y características desarrolladas por GitHub.

Acciones de GitHub is available with GitHub gratis, GitHub Pro, Equipo de GitHub, Nube de GitHub Enterprise, and GitHub One. Acciones de GitHub is not available for private repositories owned by accounts using legacy per-repository plans. For more information, see "GitHub's products."

En este artículo

Conjunto de herramientas Node.js para Acciones de GitHub

Si estás desarrollando un proyecto de Node.js, el conjunto de herramientas te ofrece paquetes que puedes usar en tu proyecto para acelerar el proceso. Para obtener más información, consulta el repositorio actions/toolkit.

Para comenzar rápidamente, puedes crear un repositorio usando los repositorios de las plantillas de acciones del contenedor JavaScript o Docker. Para obtener más información, consulta "Plantilla de acciones de JavaScript", "Plantilla de acción del contenedor Docker" y "Crear un repositorio de una plantilla".

Comandos de registro

Actions can communicate with the runner machine to set environment variables, output values used by other actions, add debug messages to the output logs, and other tasks.

Los comandos de registro usan el comando echo en un formato específico.

echo "::log-command parameter1={data},parameter2={data}::{command value}"

Nota: El comando de registro y los nombres de parámetros no distinguen mayúsculas de minúsculas.

Advertencia: Si estás usando Command Prompt (Solicitud de comando), omite los caracteres de comillas dobles (") al usar comandos de registro.

Acciones de GitHub incluye una variedad de comandos.

Establecer una variable de entorno: set-env

::set-env name={name}::{value}

Crea o actualiza una variable de entorno para todas las acciones que se ejecutan a continuación en un puesto. La acción que crea o actualiza la variable de entorno no tiene acceso al nuevo valor, pero todas las acciones subsiguientes en un puesto tendrán acceso. Las variables de entorno distinguen mayúsculas de minúsculas y puedes incluir puntuación.

Ejemplo
echo "::set-env name=action_state::yellow"

Establecer un parámetro de salida: set-output

::set-output name={name}::{value}

Establece un parámetro de salida de la acción.

Optionally, you can also declare output parameters in an action's metadata file. Para obtener más información, consulta "Sintaxis de metadatos para Acciones de GitHub".

Ejemplo
echo "::set-output name=action_fruit::strawberry"

Agregar una ruta de sistema: add-path

::add-path::{path}

Anexa un directorio a la variable de RUTA del sistema para todas las acciones subsiguientes en el puesto actual. La acción que se ejecuta actualmente no puede acceder a la nueva variable de ruta.

Ejemplo
echo "::add-path::/path/to/dir"

Establecer un mensaje de depuración: debug

::debug::{message}

Imprime un mensaje de depuración para el registro. Debes crear un archivo ACTIONS_STEP_DEBUG designado secretamente con el valor true para ver los mensajes de depuración establecidos por este comando en el registro. To learn more about creating secrets and using them in a step, see "Creating and using encrypted secrets."

Ejemplo
echo "::debug file=app.js,line=1::Entered octocatAddition method"

Establecer un mensaje de advertencia: warning

::warning file={name},line={line},col={col}::{message}

Crea un mensaje de advertencia e imprime el mensaje en el registro. Opcionalmente, puedes brindar un nombre de archivo (file), número de línea (line), y columna (col) donde se produjo la advertencia.

Ejemplo
echo "::warning file=app.js,line=1,col=5::Missing semicolon"

Establecer un mensaje de error: error

::error file={name},line={line},col={col}::{message}

Crea un mensaje de error e imprime el mensaje en el registro Opcionalmente, puedes brindar un nombre de archivo (file), número de línea (line), y columna (col) donde se produjo la advertencia.

Ejemplo
echo "::error file=app.js,line=10,col=15::Something went wrong"

Enmascarar un valor en el registro: add-mask

::add-mask::{value}

El enmascaramiento de un valor impide que una cadena o variable se imprima en el registro. Cada palabra enmascarada separada por un espacio en blanco se reemplaza con el carácter *. Puedes usar una variable de entorno o cadena para el valor de la máscara.

Ejemplo de enmascaramiento de una cadena

Cuando imprimas "Mona The Octocat" en el registro, verás "***".

echo "::add-mask::Mona The Octocat"
Ejemplo de enmascaramiento de una variable de entorno

Cuando imprimes la variable MY_NAME o el valor "Mona The Octocat" en el registro, verás "***" en lugar de "Mona The Octocat".

MY_NAME="Mona The Octocat"
echo "::add-mask::$MY_NAME"

Comandos de registro de parada y de inicio: stop-commands

::stop-commands::{endtoken}

Deja de procesar todos los comandos de registro. Este comando especial te permite registrar todo sin ejecutar accidentalmente un comando de registro. Por ejemplo, podrías dejar de registrar para producir un script completo que tenga comentarios.

Ejemplo de detención de los comandos de registro
echo "::stop-commands::pause-logging"

Para iniciar los comandos de registro, pasa el token que utilizaste para detener el registro.

::{endtoken}::

Ejemplo de inicio de los comandos de registro
echo "::pause-logging::"

Establecer el estado de una acción mediante códigos de salida

GitHub utiliza el código de salida para configurar el estado de ejecución de revisión de Acción de GitHub, que puede ser success (éxito) o failure (falla).

Estado de salida Estado de ejecución de verificación Descripción
0 success La acción se completó con éxito y pueden comenzar otras tareas que dependen de ella.
Valor distinto de cero failure Cualquier otro código de salida indica que la acción fracasó. Cuando una acción falla, todas las acciones simultáneas se cancelan y las acciones futuras se omiten. La ejecución de verificación y el conjunto de verificaciones obtienen un estado failure.

Establecer un código de salida fallida en una acción JavaScript

Si vas a crear una acción JavaScript, puedes usar el paquete del kit de herramientas @actions/core para registrar un mensaje y establecer un código de salida fallida. Por ejemplo:

try {
  // something
} catch (error) {
  core.setFailed(error.message);
}

Para obtener más información, consulta "Crear una acción JavaScript".

Establecer un código de salida fallida en una acción de contenedor Docker

Si vas a crear una acción de contenedor Docker, puedes establecer un código de salida fallida en tu script entrypoint.sh. Por ejemplo:

if <condition> ; then
  echo "Game over!"
  exit 1
fi

Para obtener más información, consulta "Crear una acción de contenedor Docker".

Pregunta a una persona

¿No puedes encontrar lo que estás buscando?

Contáctanos