Nota: Los ejecutores hospedados en GitHub no son compatibles con GitHub Enterprise Server actualmente. Puedes encontrar más información sobre el soporte que se tiene planeado en el futuro en el Itinerario público de GitHub.
Resumen
Los flujos de trabajo iniciales permiten que toda persona en tu organización que tenga permiso para crear flujos de trabajo lo haga de forma más fácil y rápida. Cuando creas un flujo de trabajo nuevo, puedes elegir un flujo de trabajo inicial y algo o todo el trabajo de escribir dicho flujo de trabajo se hará automáticamente. Puedes utilizar flujos de trabajo iniciales como un primer paso para crear un 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 flujos de trabajo iniciales listos para utilizarse para las siguientes categorías de alto nivel:
-
Despliegue (DC). Para obtener más información, consulta la sección "Acerca del despliegue continuo".
-
Integración continua (IC). Para obtener más información, consulta "Acerca de la integración continua".
-
Automatización. Los flujos de trabajo iniciales de automatización ofrecen soluciones para automatizar flujos de trabajo tales como clasificar solicitudes de cambios y aplicar una etiqueta con base en las rutas que se modifican en dicha solicitud o saludar a los usuarios que son contribuyentes de primera vez en el repositorio.
Crear un flujo de trabajo inicial
Los usuarios con acceso de escritura al repositorio .github
de una organización pueden crear flujos de trabajo iniciales. Estos pueden utilizarse entonces por los miembros de las organizaciones que tienen permiso para crear flujos de trabajo.
Este procedimiento demuestra cómo crear un flujo de trabajo inicial y archivo de metadatos. El archivo de metadatos describe cómo se presentarán los flujos de trabajo inicial a los usuarios cuando estén creando uno nuevo.
-
En caso de que no exista previamente, crea en tu organización un repositorio público nuevo que se llame
.github
. -
Crea un directorio que se llame
workflow-templates
. -
Crea tu nuevo archivo de flujo de trabajo dentro del directorio
workflow-templates
.Si necesitas referirte a la rama predeterminada de un repositorio, puedes utilizar 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.Por ejemplo, este archivo de nombre
octo-organization-ci.yml
ilustra un flujo de trabajo básico.name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - 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 vez de tener la extensión.yml
, este deberá encontrarse adjunto en.properties.json
. Por ejemplo, este archivo que se llamaocto-organization-ci.properties.json
contiene los metadatos para un archivo de flujo de trabajo de nombreocto-organization-ci.yml
:{ "name": "Octo Organization Workflow", "description": "Octo Organization CI starter workflow.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
name
- Requerido. El nombre del flujo de trabajo. Esta se muestra en la lista de flujos de trabajo disponibles.description
- Requerido. 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. EliconName
debe ser el mismo que el de un archivo SVG, sin la extensión del nombre del archivo, almacenado en el directorioworkflow-templates
. Por ejemplo, un archivo SVG llamadoexample-icon.svg
se referencia comoexample-icon
.categories
- Opcional. Define la categoría de lenguaje del flujo de trabajo. Cuando un usuario ve los flujos iniciales disponibles de un repositorio, aquellos que coincidan con el lenguaje identificado del proyecto se mostrarán más destacadamente. Para obtener información sobre las categorías de lenguaje disponibles, consulta https://github.com/github/linguist/blob/master/lib/linguist/languages.yml.filePatterns
- Opcional. Permite que se utilice el flujo de trabajo si el repositorio del usuario tiene un archivo en su directorio raíz, el cual empate con una expresión regular definida.
Para agregar otro flujo de trabajo inicial, agrega tus archivos al mismo directorio de workflow-templates
. Por ejemplo:
Pasos siguientes
Para seguir aprendiendo sobre las GitHub Actions, consulta la sección "Utilizar flujos de trabajo iniciales".