Skip to main content
Publicamos actualizaciones para la documentación con frecuencia y es posible que aún se esté traduciendo esta página. Para obtener la información más reciente, consulta la documentación en inglés.
GitHub AE es una versión limitada en este momento.

Compilar y probar Swift

Puedes crear un flujo de trabajo de integración continua (CI) para crear y probar tu proyecto de Swift.

Introducción

Esta guía te muestra cómo crear y probar un paquete de Swift.

Para compilar y probar tu proyecto de Swift en GitHub AE, se requieren las dependencias necesarias de Swift. Los ejecutores hospedados en Debes instalar el software requerido en tus ejecutores auto-hospedados. Para más información sobre los ejecutores autohospedados, consulta "Alojar tus propios corredores".

Requisitos previos

Ya debes estar familiarizado con la sintaxis de YAML y con cómo se utiliza con GitHub Actions. Para obtener más información, vea «Sintaxis del flujo de trabajo para Acciones de GitHub».

Te recomendamos que tengas un entendimiento básico de los paquetes de Swift. Para más información, vea "Paquetes de Swift" en la documentación para desarrolladores de Apple.

Utilizar el flujo de trabajo inicial de Swift

GitHub proporciona un flujo de trabajo inicial de Swift que debería funcionar par ala mayoría de los proyectos de Swift y esta guía incluye ejemplos que te muestran cómo personalizarlo. Para más información, vea el flujo de trabajo de inicio de Swift.

Para comenzar rápidamente, agregue el flujo de trabajo de inicio al directorio .github/workflows del repositorio.

YAML
name: Swift

on: [push]

jobs:
  build:

    runs-on: macos-latest

    steps:
      - uses: actions/checkout@v3
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Especificar una versión de Swift

Para usar una versión preinstalada concreta de Swift en un ejecutor hospedado en GitHub, use la acción swift-actions/setup-swift. Esta acción busca una versión específica de Swift en la caché de herramientas en el ejecutor y agrega los binarios necesarios a PATH. Estos cambios persistirán durante el resto de un job. Para más información, vea la acción swift-actions/setup-swift.

Si usa un ejecutor autohospedado, debe instalar las versiones de Swift deseadas y agregarlas a PATH.

En los ejemplos siguientes se muestra cómo usar la acción swift-actions/setup-swift.

Utilizar versiones múltiples de Swift

Puedes configurar el trabajo para que use múltiples versiones de Swift en una matriz.

YAML

# Este flujo de trabajo usa acciones que no GitHub no certifica.
# Estas las proporcionan entidades terceras y las gobiernan
# condiciones de servicio, políticas de privacidad y documentación de soporte
# en línea.

# GitHub recomienda anclar acciones a un SHA de confirmación.
# Para obtener una versión más reciente, debes actualizar el SHA.
# También puedes hacer referencia a una etiqueta o rama, pero la acción puede cambiar sin ninguna advertencia.

name: Swift

on: [push]

jobs:
  build:
    name: Swift ${{ matrix.swift }} on ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest]
        swift: ["5.2", "5.3"]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: swift-actions/setup-swift@65540b95f51493d65f5e59e97dcef9629ddf11bf
        with:
          swift-version: ${{ matrix.swift }}
      - uses: actions/checkout@v3
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Utilizar solo una versión específica de Swift

Puede configurar el trabajo para que use una versión concreta de Swift, por ejemplo, 5.3.3.

YAML
steps:
  - uses: swift-actions/setup-swift@65540b95f51493d65f5e59e97dcef9629ddf11bf
    with:
      swift-version: "5.3.3"
  - name: Get swift version
    run: swift --version # Swift 5.3.3

Construir y probar tu código

Puedes utilizar los mismos comandos que usas localmente para compilar y probar tu código utilizando Swift. En este ejemplo se muestra cómo usar swift build y swift test en un trabajo:

YAML
steps:
  - uses: actions/checkout@v3
  - uses: swift-actions/setup-swift@65540b95f51493d65f5e59e97dcef9629ddf11bf
    with:
      swift-version: "5.3.3"
  - name: Build
    run: swift build
  - name: Run tests
    run: swift test