Skip to main content
ドキュメントには� �繁に更新が� えられ、その都度公開されています。本ページの翻訳はま� 未完成な部分があることをご了承く� さい。最新の情� �については、英語のドキュメンテーションをご参照く� さい。本ページの翻訳に問題がある� �合はこちらまでご連絡く� さい。

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2022-06-03. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてく� さい。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してく� さい。

Swift のビルドとテスト

継続的インテグレーション (CI) ワークフローを作成して、Swift プロジェクトをビルドおよびテストできます。

ノート: GitHubホストランナーは、現在GitHub Enterprise Serverでサポートされていません。 GitHubパブリックロードマップで、計画されている将来のサポートに関する詳しい情� �を見ることができます。

はじめに

このガイドでは、Swift パッケージをビルドしてテストする方法を説明します。

GitHub ホストランナーには、ソフトウェアがプリインストールされたツールキャッシュがあり、Ubuntu および macOS ランナーには、Swift パッケージをビルドするための依存関係が含まれています。 最新のソフトウェアとプレインストールされたバージョンの Swift および Xcode の完全なリストについては、「GitHub ホストランナーについて」を参照してく� さい。

必要な環境

YAMLの構文と、GitHub ActionsでのYAMLの使われ方に馴染んでいる必要があります。 詳細については、「GitHub Actionsのワークフロー構文」を参照してく� さい。

Swift パッケージの基本を理解しておくことをお勧めします。 詳細については、Apple 開発者ドキュメントの「Swift パッケージ」を参照してく� さい。

Using the Swift starter workflow

GitHub provides a Swift starter workflow that should work for most Swift projects, and this guide includes examples that show you how to customize this starter workflow. For more information, see the Swift starter workflow.

To get started quickly, add the starter workflow to the .github/workflows directory of your repository.

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

Swift バージョンの指定

GitHub ホストランナーでプリインストールされた特定のバージョンの Swift を使用するには、fwal/setup-swift アクションを使用します。 このアクションは、ランナーのツールキャッシュから特定のバージョンの Swift を見つけ、必要なバイナリを PATH に追� します。 これらの変更は、ジョブの残りの部分で保持されます。 詳しい情� �については、fwal/setup-swift アクションを参照してく� さい。

セルフホストランナーを使用している� �合は、目的の Swift バージョンをインストールして PATH に追� する必要があります。

以下は、fwal/setup-swift アクションの使用例です。

複数の Swift バージョンを使用する

You can configure your job to use multiple versions of Swift in a matrix.

YAML
# このワークフローはGitHubによって認定されていないアクションを使用します。
# それらはサードパーティによって提供され、
# 別個の利用規約、プライバシーポリシー、
# サポートドキュメンテーションが適用されます。

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@v2
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

単一の特定の Swift バージョンを使用する

5.3.3 などの特定のバージョンの Swift を使用するようにジョブを設定できます。

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

コードのビルドとテスト

ローカルで使うのと同じコマンドを使用して、Swift でコードをビルドおよびテストできます。 以下は、ジョブでの swift buildswift test の使用例です。

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