Meson CI 设置
本文档面向 Meson 贡献者,介绍用于测试 Meson 本身的 CI 设置。Meson 项目使用多个 CI 平台来覆盖各种目标系统。
GitHub Actions
GitHub Actions 的配置文件位于 .github/workflows
中。在这里,所有 镜像 都使用完整的 run_tests.py
运行进行测试。此外,还运行了一些其他较小的测试。
Docker 镜像
Linux Docker 镜像由 GitHub Actions 自动构建并上传。当主分支中的任何镜像定义文件(位于 ci/ciimage
中)发生更改时,就会触发镜像重建。此外,镜像每周也会更新。
每个 Docker 镜像在 ci/ciimage
中都有一个相应的目录,其中包含一个 image.json
和一个 install.sh
文件。
镜像生成
没有手动 Dockerfile。相反,Dockerfile 由 build.py
脚本自动生成。这样做是为了确保所有镜像都具有相同的布局,并且可以自动构建和测试。
Dockerfile 是根据 image.json
文件生成的,基本上只添加了一些通用文件并运行 install.sh
脚本,该脚本应该包含所有发行版特定的设置步骤。可以通过 source /ci/common.sh
来获取 common.sh
,以访问一些共享功能。
要生成镜像,请运行 build.py -t build <image>
。可以使用 build.py -t test <image>
测试生成的镜像。
通用镜像设置
每个 Docker 镜像都有一个 /ci
目录,其中包含一个 env_vars.sh
脚本。在运行 Meson 测试套件之前,必须获取此脚本。
搜索结果为