traPtitech / NeoShowcase

PaaS (Platform as a Service) on Docker 🐳 or k8s ☸
MIT License
53 stars 4 forks source link

[Bug]: Deploy TypeがRuntime Dockerfileのビルド設定で、存在しないディレクトリをContextに指定するとbuilderがハングする #952

Closed pirosiki197 closed 2 months ago

pirosiki197 commented 2 months ago

バグの概要

タイトルの通り

再現手順

  1. Runtimeアプリを作成する
  2. Deploy TypeをDockerfileにする
  3. 存在しないディレクトリをContextに指定する

期待する動作

エラーが発生してビルドが終了する

実際の動作

ビルドが終わらない

再現環境

Dockerを使った開発環境

スクリーンショット

No response

関連情報

No response

pirosiki197 commented 2 months ago

ctxMountを作成してエラーが起きた場合、chがcloseされていないので、disp.UpdateFromが戻ってこない https://github.com/traPtitech/NeoShowcase/blob/59b03f42fd595a9bcb7c34952ee345f22f798f65/pkg/usecase/builder/build_buildkit.go#L110-L121 https://github.com/traPtitech/NeoShowcase/blob/59b03f42fd595a9bcb7c34952ee345f22f798f65/pkg/usecase/builder/build_buildkit.go#L43-L49