この記事の要点
- Swift.org の継続的インテグレーション(CI)システムが拡張され、コミュニティのメンバーがホストするノードによって、追加のプラットフォームでのテストが可能になりました。
- コミュニティのメンバーは、追加プラットフォーム向けのノードを自発的に提供でき、そのホストシステムの保守も担います。新しいノードは専用リポジトリへの pull request で立ち上げられます。
- この発表の時点で、Fedora と Debian “Stretch”(ARMv7)向けの CI テストが利用可能になりました。
何が発表されたのか
継続的インテグレーション(CI)システムの大幅な拡張が発表されました。Swift コミュニティのメンバーが、さまざまな新しいプラットフォーム上で Swift を動かすために取り組んでおり、その流れを受けて、追加プラットフォームのテストをコミュニティがホストするノードで行えるよう CI システムが拡張されました。
仕組みは次のとおりです。
- コミュニティによるノードの提供: コミュニティのメンバーが、追加プラットフォーム向けのテストノードを自発的にホストできます。提供者は、そのホストシステムの保守に責任を持ちます。
- pull request による立ち上げ: 新しいノードは、専用の Swift Community-Hosted CI リポジトリへの pull request を作成することで立ち上げられます。手順はリポジトリの README に記載されています。
何に使えるのか
この拡張により、Apple のチームが直接ホストする構成に限定されず、コミュニティが関心を持つ幅広いプラットフォームで Swift のビルドとテストを継続的に検証できるようになりました。
発表の時点では、コミュニティの複数のメンバーとの協力により、次のプラットフォーム向けの CI テストが利用可能になりました。
- Fedora
- Debian “Stretch”(ARMv7)
これらの結果は、コミュニティがホストするノード用の CI ダッシュボードで確認できます。
導入・今後の位置づけ
この取り組みは、Swift をさまざまなプラットフォームへ移植していくコミュニティの活動を、CI による継続的な検証で支えるための基盤づくりです。プラットフォームごとにノードをホストできるコミュニティのメンバーがいれば、その環境でのリグレッションを早期に捕捉できるようになり、移植の品質をコミュニティ全体で担保していけます。
CI の提供開始やソース互換性テストスイートと同様に、Swift の品質をコミュニティ全体で支えていくための開発基盤を一歩広げる取り組みでした。