Esta versão do GitHub Enterprise foi descontinuada em 2021-09-23. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Construção e teste Swift

É possível criar um fluxo de trabalho de integração contínua (CI) para criar e testar o seu projeto no Swift.

Observação: GitHub Actions estava disponível para GitHub Enterprise Server 2.22 como um beta limitado. O beta terminou. GitHub Actions está agora geralmente disponível em GitHub Enterprise Server 3.0 ou posterior. Para obter mais informações, consulte as observações sobre a versão GitHub Enterprise Server 3.0.


Observação: Executores hospedados em GitHub não são atualmente compatíveis com GitHub Enterprise Server. Você pode ver mais informações sobre suporte futuro planejado no Itinerário público do GitHub.

Introdução

Este guia mostra como criar e testar um pacote do Swift.

GitHub têm um cache de ferramentas com software pré-instalado e os executores Ubuntu e macOS incluem as dependências para construir pacotes Swift. Para obter uma lista completa do software atualizado e das versões pré-instaladas do Swift e do Xcode, consulte "Sobre executores hospedados pelo GitHub."

Pré-requisitos

Você já deve estar familiarizado com a sintaxe YAML e como é usado com GitHub Actions. Para obter mais informações, consulte "Workflow syntax for GitHub Actions."

Recomendamos que você tenha uma compreensão básica dos pacotes Swift. Para obter mais informações, consulte "Pacotes Swift" na documentação de desenvolvedor da Apple.

Começando com o modelo de fluxo de trabalho do Swift

GitHub fornece um modelo de fluxo de trabalho do Swift que deve funcionar na maioria dos projetos do Swift, e este guia inclui exemplos que mostram como personalizar este modelo. Para obter mais informações, consulte o Modelo do fluxo de trabalho do Swift.

Para iniciar rapidamente, adicione o modelo ao diretório .github/workflows do repositório.

YAML
name: Swift

on: [push]

jobs:
  build:

    runs-on: macos-latest

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

Especificando uma versão do Swift

Para usar uma versão específica do Swift em um executor hospedado em GitHub, use a ação fwal/setup-fast. Esta ação encontra uma versão específica do Swift do cache de ferramentas no executor e adiciona os binários necessários a PATH. Estas alterações persistirão para o restante de um trabalho. Para obter mais informações, consulte a ação fwal/setup-speed.

Se você estiver usando um executor auto-hospedado, você deverá instalar as versões do Swift desejadas e adicioná-las a PATH.

Os exemplos abaixo demonstram o uso da ação fwal/setup-fast.

Usando várias versões do Swift

Você pode configurar seu trabalho para usar várias versões do Swift em uma matriz de criação.

YAML
# This workflow uses actions that are not certified by GitHub.
# São fornecidas por terceiros e regidas por
# termos de serviço, política de privacidade e suporte separados
# documentação.

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: fwal/setup-swift@d43a564349d1341cd990cfbd70d94d63b8899475
        with:
          swift-version: ${{ matrix.swift }}
      - uses: actions/checkout@
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

Usando uma única versão específica do Swift

Você pode configurar sua tarefa para usar uma única versão específica do Swift como, por exemplo, 5.3.3.

YAML
steps:
  - uses: fwal/setup-swift@d43a564349d1341cd990cfbd70d94d63b8899475
    with:
      swift-version: "5.3.3"
  - name: Get swift version
    run: swift --version # Swift 5.3.3

Criar e testar seu código

Você pode usar os mesmos comandos usados localmente para criar e testar seu código usando o Swift. Este exemplo demonstra como usar swift build e swift test em um trabalho:

YAML
steps:
  - uses: actions/checkout@v2
  - uses: fwal/setup-swift@d43a564349d1341cd990cfbd70d94d63b8899475
    with:
      swift-version: "5.3.3"
  - name: Build
    run: swift build
  - name: Run tests
    run: swift test