0

Jailhouse ハイパーバイザーの Travis-CI ビルドでは、最近の make バージョン (>=3.82、デフォルトのバージョンはまだ 3.81 です - Ubuntu...) をプルするための部分的な配布更新で構成される、かなりコストのかかる環境セットアップがあります。 、ARM 用のクロス ツールチェーン、およびツリー外モジュールをコンパイルするために必要なビルド済み Linux カーネル ソースの 100 MB パッケージ。

ビルド時間とカーネルのダウンロード数を減らすために、現在、すべての構成バリアントを 1 回の実行 (make; make clean; make...) で順番にビルドしています。ビルドの破損をチェックするにはこれで問題ありませんでしたが、ビルド出力に依存する Coverity スキャンを追加すると、機能しなくなります。Travis-CI はそのようなビルド中にそれらを再利用できないように見えるため、複数のインストールの代償を払って、ビルド マトリックスに切り替えることは明白な解決策のようです。現在、構成のバリエーションは 3 つしかありませんが、これは将来的に増加する予定です (たとえば、ARM ボードを追加するたびに 1 つ増加します)。したがって、このアプローチは実際には拡張できません。

代替手段はありますか?docker ベースのビルドで利用できるキャッシングについては既に調べましたが、sudo のサポートがないため、このアプローチが妨げられています。他のアイデア?

4

1 に答える 1