Skip to content

Commit

Permalink
feat(loader/cache): add data dir fallback if wasm layer not found
Browse files Browse the repository at this point in the history
Signed-off-by: Vaughn Dice <[email protected]>
  • Loading branch information
vdice committed Oct 25, 2023
1 parent b14654d commit 8e7f515
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion crates/loader/src/cache.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,14 @@ impl Cache {

/// Return the path to a wasm file given its digest.
pub fn wasm_file(&self, digest: impl AsRef<str>) -> Result<PathBuf> {
let path = self.wasm_path(&digest);
// Check the expected wasm directory first; else check the data directory as a fallback.
// (Layers with unknown media types are currently saved to the data directory in client.pull())
// This adds a bit of futureproofing for fetching wasm layers with different/updated media types
// (see WASM_LAYER_MEDIA_TYPE, which is subject to change in future versions).
let mut path = self.wasm_path(&digest);
if !path.exists() {
path = self.data_path(&digest);
}
ensure!(
path.exists(),
"cannot find wasm file for digest {}",
Expand Down

0 comments on commit 8e7f515

Please sign in to comment.