Note
Actualmente los ejecutores hospedados por GitHub no se admiten en GitHub Enterprise Server. Puede ver más información sobre la compatibilidad futura planeada en GitHub public roadmap.
Información general
Las plantillas de flujo de trabajo permiten que todos los usuarios de la organización que tengan permiso para crear flujos de trabajo lo hagan de forma más fácil y rápida. Al crear un flujo de trabajo, puede elegir una plantilla de flujo de trabajo y parte o todo el trabajo de escribir el flujo de trabajo se hará automáticamente. Puede utilizar plantillas de flujo de trabajo como un primer paso para crear el flujo de trabajo personalizado o utilizarlos tal cual. Esto no solo ahorra tiempo, sino que promueve la consistencia y las mejores prácticas a lo largo de tu organización.
GitHub proporciona plantillas de flujo de trabajo listas para usar para las siguientes categorías generales:
-
Implementación (CD) . Para obtener más información, vea «Acerca de la implementación continua con Acciones de GitHub».
-
Integración continua (CI) . Para obtener más información, vea «Acerca de la integración continua con Acciones de GitHub».
-
Automatización. Las plantillas de flujo de trabajo de automatización ofrecen soluciones para automatizar flujos de trabajo, como evaluar las solicitudes de incorporación de cambios y aplicar una etiqueta basada en las rutas modificadas en la solicitud de incorporación de cambios, o bien saludar a los usuarios que colaboran por primera vez en el repositorio.
Note
Como las plantillas de flujo de trabajo necesitan un repositorio .github
público, no están disponibles para Enterprise Managed Users.
Creación de una plantilla de flujo de trabajo
Los usuarios con acceso de escritura al repositorio .github
público de la organización pueden crear plantillas de flujo de trabajo. Estos pueden utilizarse entonces por los miembros de las organizaciones que tienen permiso para crear flujos de trabajo.
Note
Para evitar la duplicación entre plantillas de flujo de trabajo, puedes llamar a flujos de trabajo reutilizables desde dentro de un flujo de trabajo. Esto puede ayudar a que tus flujos de trabajo se mantengan más fácilmente. Para obtener más información, vea «Reutilización de flujos de trabajo».
En este procedimiento se demuestra cómo crear una planitlla de flujo de trabajo y un archivo de metadatos. El archivo de metadatos describe cómo se presentarán las plantillas de flujo de trabajo a los usuarios cuando creen un flujo de trabajo.
-
Si aún no existe, cree un nuevo repositorio público denominado
.github
en la organización. -
Cree un directorio llamado
workflow-templates
. -
Crea el nuevo archivo de flujo de trabajo dentro del directorio
workflow-templates
.Si necesitas hacer referencia a la rama predeterminada de un repositorio, puedes usar el marcador de posición
$default-branch
. Cuando un flujo de trabajo se crea, el marcador de posición se reemplazará automáticamente con el nombre de la rama predeterminada del repositorio.Note
Los siguientes valores de la clave
runs-on
también se tratan como marcadores de posición:- "ubuntu-latest" se reemplaza por "[ self-hosted ]"
- "windows-latest" se reemplaza por "[ self-hosted, windows ]"
- "macos-latest" se reemplaza por "[ self-hosted, macOS ]"
Por ejemplo, este archivo denominado
octo-organization-ci.yml
muestra un flujo de trabajo básico.YAML name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run a one-line script run: echo Hello from Octo Organization
name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run a one-line script run: echo Hello from Octo Organization
-
Crea un archivo de metadatos dentro del directorio
workflow-templates
. El archivo de metadatos debe tener el mismo nombre que el archivo de flujo de trabajo, pero en lugar de la extensión.yml
, se le tiene que anexar.properties.json
. Por ejemplo, un archivo denominadoocto-organization-ci.properties.json
contiene los metadatos del archivo de flujo de trabajo denominadoocto-organization-ci.yml
.JSON { "name": "Octo Organization Workflow", "description": "Octo Organization CI workflow template.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
{ "name": "Octo Organization Workflow", "description": "Octo Organization CI workflow template.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
-
name
- Obligatorio. El nombre del flujo de trabajo. Esta se muestra en la lista de flujos de trabajo disponibles. -
description
- Obligatorio. La descripción del flujo de trabajo. Esta se muestra en la lista de flujos de trabajo disponibles. -
iconName
- Opcional. Especifica un icono para el flujo de trabajo que se muestra en la lista de flujos de trabajo.iconName
puede ser uno de los siguientes tipos:- Un archivo SVG que se almacena en el directorio
workflow-templates
. Para hacer referencia a un archivo, el valor debe ser el nombre de archivo sin la extensión de archivo. Por ejemplo, se hace referencia a un archivo SVG denominadoexample-icon.svg
comoexample-icon
. - Un icono del conjunto de Octicons de GitHub. Para hacer referencia a un octicon, el valor debe ser
octicon <icon name>
. Por ejemplo:octicon smiley
.
- Un archivo SVG que se almacena en el directorio
-
categories
- Opcional. Define las categorías en las que se muestra el flujo de trabajo. Puede usar nombres de categoría de las listas siguientes:- Nombres de categoría generales del repositorio starter-workflows.
- Idiomas lingüistas de la lista del repositorio linguist.
- Pilas técnicas admitidas en la lista en el repositorio starter-workflows.
-
filePatterns
- Opcional. Permite usar el flujo de trabajo si el repositorio del usuario tiene un archivo en su directorio raíz que coincide con una expresión regular definida.
-
Para agregar otra plantilla de flujo de trabajo, agregue los archivos al mismo directorio workflow-templates
.
Pasos siguientes
Para continuar el aprendizaje sobre GitHub Actions, consulta "Uso de plantillas de flujo de trabajo".