メリークリスマス!一昨日書いた、こちらの記事の続きです。
↑こちらの記事では、Devcontainer で Tilt の環境をつくり、Docker Compose で記述されたサービスを Tilt 経由で起動することができました。
今回は、docker-compose.yml や Dockerfile が、Tiltfile とは別のレポジトリにある状況での起動を試します。
Tiltfile
公式ドキュメントの "Managing other git Repositories" の項目に、ドンピシャの記述があります。
git_resource という extension を使えば、Tiltfile に remote のレポジトリを checkout させたり、他ディレクトリのプロジェクトを読み込ませるするような記述ができるようになるとのこと。
これを使ってみます。
実際に書いた Tiltfile はこちら。
# -*- mode: Python -*- version_settings(constraint='>=0.33.21') # Extentions load('ext://git_resource', 'git_checkout') # App1 app1_dir = './repos/app1' git_checkout('git@github.com:w-haibara/tilt-sample-app-1.git', app1_dir) docker_compose(app1_dir + '/docker-compose.yml') docker_build( 'sample/app1', app1_dir, live_update = [ sync(app1_dir, '/app'), restart_container() ]) dc_resource('app1', labels=["api"])
これで https://github.com/w-haibara/tilt-sample-app-1 にある docker-compose.yml を読むことができます。
おわりに
git_resource extension をみると、一部 k8s を使っていない場合にエラーになりそうな部分があったので、そちらの検証も別途やってみたいと思います。