Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

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.

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.

Usando o fluxo de trabalho inicial do Swift

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

Para iniciar rapidamente, adicione o fluxo de trabalho inicial para o diretório .github/workflows do seu repositório.

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

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.

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