bitbakeでマシン間ソースファイルを再利用する

bitbakeでマシン間ソースファイルを再利用する

私の目標は、全体ではなく一部のシステム間でソースファイルを共有することです。この例では、ソースディレクトリmachine_amachine_b互いに正確なコピーなので、重複を減らすために何らかの方法で一緒に結合したいと思います。

recipe/
    machine_a/
        script_1.sh
        script_2.sh
    machine_b/
        script_1.sh
        script_2.sh
    machine_c/
        script_3.sh

個々のソースファイルリンク( - >など)machine_b/だけでなくシンボリックリンクも試しましたが、問題はビルドがドッカーコンテナで実行され、タスクが完全なコピーを実行しないため、ビルドに元のソースファイルにアクセスします。machine_a/machine_b/script_1.shmachine_a/script_1.shdo_fetch()

レシピの内部を変えるなど、他の方法も考えてみることができますが、MACHINE_NAMEそれは完全に効果的ではないようです。

これを達成するための最良の方法は何ですか?

ベストアンサー1

バインドマウントを実行できます。したがって、マージしたいフォルダをリンクするのではなく、目的の2番目の場所に同じである必要があるフォルダをマウントするだけです。

recipe/
├─ machine_a/
│  ├─ script_1.sh
│  ├─ script_2.sh
├─ machine_b      <-- mount the folder for machine_a here/
├─ machine_c/
│  ├─ script_3.sh

したがって、この例では、コマンドはおおよそ次のようになります。

$ sudo mount --bind recipe/machine_a recipe/machine_b

それからうまくいったら、インストールを追加します。/etc/fstab

おすすめ記事