Skip to main content

Ejecución de trabajos en ejecutores más grandes

Identifique los ejecutor más grande disponibles y, a continuación, dirija los trabajos a los ejecutores adecuados mediante grupos de ejecutores y etiquetas del flujo de trabajo.

¿Quién puede utilizar esta característica?

Los Ejecutor más grande solo están disponibles para organizaciones y empresas que usan los planes GitHub Team o GitHub Enterprise Cloud.

Platform navigation

Identificación de los ejecutores disponibles para un repositorio

Si tienes acceso repo: write a un repositorio, puedes ver una lista de los ejecutores disponibles para el repositorio.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Actions.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. En la barra lateral izquierda, en la sección "Management", haz clic en Runners.

  4. Revisa la lista de ejecutores disponibles para el repositorio.

  5. Opcionalmente, para copiar la etiqueta de un ejecutor para usarla en un flujo de trabajo, haz clic en a la derecha del ejecutor y, a continuación, haz clic en Copiar etiqueta.

Nota:

Los propietarios de empresa y de la organización y los usuarios con el permiso "Manage organization runners and runner groups" pueden crear ejecutores desde esta página. Para crear un nuevo ejecutor, haz clic en Nuevo ejecutor en la parte superior derecha de la lista de ejecutores para agregar ejecutores al repositorio.

Para obtener más información, consulta Administración de ejecutores más grandes y Agrega ejecutores auto-hospedados. Para obtener más información sobre los roles de organización personalizados, consulta Permisos de roles de organización personalizados.

Selección de ejecutores más grandes en un flujo de trabajo

Después de identificar los ejecutor más grandeelementos que desea usar, puede seleccionarlos en su flujo de trabajo mediante grupos de ejecutores, etiquetas del flujo de trabajo o ambos. Usa grupos de ejecutores para dirigir los trabajos a un conjunto de ejecutores, etiquetas de flujo de trabajo para seleccionar ejecutores con una etiqueta específica, o ambos si un trabajo debe cumplir ambas condiciones.

Si un administrador ha deshabilitado los ejecutores estándar alojados en GitHub, solo se pueden usar grupos de ejecutores.

Selección de destino por grupo de ejecutores

Haga referencia al nombre del grupo de ejecutores en su flujo de trabajo. Use esto cuando quiera dirigir un trabajo a cualquier runner disponible de un grupo específico.

En este ejemplo, se han añadido runners a un grupo denominado build-runners. La clave runs-on envía el trabajo a cualquier ejecutor disponible del grupo build-runners:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on: 
      group: build-runners
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

En este ejemplo, se han añadido runners a un grupo denominado build-runners. La clave runs-on envía el trabajo a cualquier ejecutor disponible del grupo build-runners:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on: 
      group: build-runners
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

En este ejemplo, la runs-on clave envía el trabajo a cualquier ejecutor disponible del macos-build-runners grupo:

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on:
      group: macos-build-runners
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Selección de destino por etiqueta de flujo de trabajo

Use una etiqueta del flujo de trabajo en su flujo de trabajo cuando quiera dirigir una tarea a los ejecutores que compartan una etiqueta específica.

A Ejecutor más grandes se les asigna automáticamente una etiqueta de flujo de trabajo que coincide con el nombre del ejecutor.

En este ejemplo, la clave runs-on envía el trabajo a cualquier ejecutor disponible asignado a la etiqueta ubuntu-24.04-16core:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      labels: ubuntu-24.04-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

En este ejemplo, la clave runs-on envía el trabajo a cualquier ejecutor disponible asignado a la etiqueta windows-2022-16core:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      labels: windows-2022-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

Para macOS ejecutores más grandes, puede usar las etiquetas de flujo de trabajo definidas en GitHub o la etiqueta de flujo de trabajo que se asigna automáticamente a partir del nombre de ejecutor más grande que establezca al crearla. Para obtener una lista de las etiquetas de flujo de trabajo de macOS disponibles, consulte Referencia de ejecutores de mayor capacidad.

En este ejemplo, la clave runs-on envía el trabajo a cualquier ejecutor disponible al que se le haya asignado la etiqueta macos-26-xlarge.

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on: macos-26-xlarge
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Uso de etiquetas y grupos para controlar dónde se ejecutan los trabajos

Utilice etiquetas y grupos cuando un trabajo deba ejecutarse solo en runners de un grupo específico que también tengan una etiqueta específica. El agente debe cumplir ambos requisitos para poder ejecutar la tarea.

Al combinar grupos y etiquetas, el ejecutor debe cumplir ambos requisitos para poder ejecutar el trabajo.

En este ejemplo, la clave runs-on combina group y labels para que la tarea se envíe a cualquier ejecutor disponible dentro del grupo que también tenga una etiqueta que coincida:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      group: ubuntu-runners
      labels: ubuntu-24.04-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

Al combinar grupos y etiquetas, el ejecutor debe cumplir ambos requisitos para poder ejecutar el trabajo.

En este ejemplo, la clave runs-on combina group y labels para que la tarea se envíe a cualquier ejecutor disponible dentro del grupo que también tenga una etiqueta que coincida:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      group: ubuntu-runners
      labels: ubuntu-24.04-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

En este ejemplo, la clave runs-on combina group y labels para que la tarea se envíe a cualquier ejecutor disponible dentro del grupo que también tenga una etiqueta que coincida:

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on:
      group: macos-runners
      labels: macos-26-xlarge
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Lectura adicional

Para obtener más información sobre la sintaxis de la runs-on clave, consulte Sintaxis del flujo de trabajo para Acciones de GitHub.

Para obtener información sobre especificaciones, etiquetas, limitaciones y solución de problemas, consulte Referencia de ejecutores de mayor capacidad.