Skip to main content

Creación de plantillas de flujo de trabajo para la organización

Obtenga información sobre cómo puede crear plantillas de flujo de trabajo para ayudar a los miembros del equipo a agregar nuevos flujos de trabajo con mayor facilidad.

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.

  1. Si aún no existe, cree un nuevo repositorio público denominado .github en la organización.

  2. Cree un directorio llamado workflow-templates.

  3. 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
    
  4. 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 denominado octo-organization-ci.properties.json contiene los metadatos del archivo de flujo de trabajo denominado octo-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 - 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 denominado example-icon.svg como example-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.
    • 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:

    • 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".