Creating starter workflows for your organization

Learn how you can create starter workflows to help people in your team add new workflows more easily.

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.

Creating a starter workflow

Starter workflows can be created by users with write access to the organization's .github repository. These can then be used by organization members who have permission to create workflows.

This procedure demonstrates how to create a starter workflow and metadata file. The metadata file describes how the starter workflows will be presented to users when they are creating a new workflow.

  1. En caso de que no exista previamente, crea en tu organización un repositorio público nuevo que se llame .github.

  2. Crea un directorio que se llame workflow-templates.

  3. 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. When a workflow is created the placeholder will be automatically replaced with the name of the repository's default branch.

    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
    
  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 vez de tener la extensión .yml, este deberá encontrarse adjunto en .properties.json. Por ejemplo, este archivo que se llama octo-organization-ci.properties.json contiene los metadatos para un archivo de flujo de trabajo de nombre octo-organization-ci.yml:

    {
        "name": "Octo Organization Workflow",
        "description": "Octo Organization CI starter workflow.",
        "iconName": "example-icon",
        "categories": [
            "Go"
        ],
        "filePatterns": [
            "package.json$",
            "^Dockerfile",
            ".*\\.md$"
        ]
    }
    
    • name - Required. The name of the workflow. This is displayed in the list of available workflows.
    • description - Required. The description of the workflow. This is displayed in the list of available workflows.
    • iconName - Optional. Specifies an icon for the workflow that's displayed in the list of workflows. The iconName must be the name of an SVG file, without the file name extension, stored in the workflow-templates directory. For example, an SVG file named example-icon.svg is referenced as example-icon.
    • categories - Opcional. Define la categoría de lenguaje del flujo de trabajo. When a user views the available starter workflows for a repository, the workflows that match the identified language for the project are featured more prominently. Para obtener información sobre las categorías de lenguaje disponibles, consulta https://github.com/github/linguist/blob/master/lib/linguist/languages.yml.
    • filePatterns - Optional. Allows the workflow to be used if the user's repository has a file in its root directory that matches a defined regular expression.

To add another starter workflow, add your files to the same workflow-templates directory. Por ejemplo:

Workflow files

Pasos siguientes

To continue learning about GitHub Actions, see "Using starter workflows."

¿Te ayudó este documento?

Política de privacidad

¡Ayúdanos a hacer geniales estos documentos!

Todos los documentos de GitHub son de código abierto. ¿Notas algo que esté mal o que no sea claro? Emite una solicitud de cambios.

Haz una contribución

O, aprende cómo contribuir.