emk / heroku-buildpack-rust

A buildpack for Rust applications on Heroku, with full support for Rustup, cargo and build caching.
522 stars 186 forks source link

Cargo missing? #37

Closed pwightman closed 5 years ago

pwightman commented 5 years ago

Hi,

I've seen some related issues to this (#6 and others) but they're fairly old and potentially out of date and the fixes there don't seem to help/aren't relevant anymore.

I'm using Rust + Elixir in an app for the purpose of using Meeseeks/html5ever. The Elixir buildpack, when compiling a nif, cannot find cargo (build output here: https://pastebin.com/raw/aMnPU6hM)

After some experimenting, I'm seeing that during the Elixir buildpack's "run this before fetching dependencies" callback, the /app/tmp/cache directory doesn't contain a cargo directory, as indicated by the output of this buildpack. See heroku output here, ls command is at the bottom: https://pastebin.com/raw/kC0MyxSp

Am I misunderstanding how this works?

Here's my buildpack setup in Heroku, if it's helpful:

image

Thanks in advance for any input.

pwightman commented 5 years ago

@mischov was able to track the issue down to the Elixir buildpack nuking the entire cache directory when a new stack is detected. I'll file an issue there.

emk commented 5 years ago

@pwightman Ah, thank you for figuring this out! Let me know if my buildpack isn't obeying the buildpack standards or anything like that. :-)