Meson CI の設定

このドキュメントは Meson コントリビューター向けであり、Meson 自体のテストに使用される CI 設定について記載しています。Meson プロジェクトでは、幅広いターゲットシステムをカバーするために複数の CI プラットフォームを使用しています。

GitHub アクション

GitHub アクション用の構成ファイルは .github/workflows にあります。ここで、すべての イメージ が完全な run_tests.py 実行でテストされます。さらに、いくつかの他の小規模なテストが実行されます。

Docker イメージ

Linux docker イメージは GitHub アクションによって自動的にビルドされ、アップロードされます。イメージ定義ファイル (ci/ciimage 内のマスタブランチ) のいずれかが変更された場合、イメージの再構築がトリガーされます。さらに、イメージは毎週更新されます。

各 docker イメージには、image.json ファイルと、install.sh ファイルがある、ci/ciimage に対応するディレクトリが 1 つあります。

イメージの生成

手動の Dockerfile はありません。代わりに Dockerfile は build.py スクリプトによって自動的に生成されます。これは、すべてイメージに同じレイアウトがあり、すべてが自動的にビルドおよびテストできるようにするためです。

Dockerfile は image.json ファイルから生成され、基本的にはいくつかの一般的なファイルを追加し、配布に固有の設定手順を含む install.sh スクリプトを実行するだけです。common.shsource /ci/common.sh 経由でソース化して共有機能にアクセスできます。

イメージを生成するには、build.py -t build <image> を実行します。生成されたイメージは build.py -t test <image> でテストできます。

一般的なイメージの設定

各 docker イメージには、env_vars.sh スクリプトを含む /ci ディレクトリがあります。このスクリプトは、Meson テストスイートを実行する前にソース化される必要があります。

検索の結果