mbklein
Remote Execution SmartCell questions
I’ve been playing with the Remote Execution smart cell, and it’s been mostly fantastic. Just about everything I was looking for when I made this offhand comment back in May. ![]()
I’m left with two major questions:
-
I’m working on creating a LiveBook that will be mostly focused on interacting with one specific application. I’d like to be able to set the node name and cookie somewhere (maybe in the setup; maybe in a regular cell) and have those become the values (or at least the defaults) used for each Remote Execution smart cell I add. I’d be happy to use secrets for them[1], but it looks like you can’t use a secret or variable for the node name. I suppose the alternative would be to create my own smart cell that uses my target runtime’s settings instead of allowing for user input.
-
I’ve found that I get an error if the Elixir/OTP versions of the livebook environment and the remote are not exactly the same, down to the elixir point release (i.e., Livebook built on
1.15.2-otp-26while my remote runtime is1.15.4-otp-26). Is there a way around that, or is it just how it is? I don’t mind building a livebook container using the same base image as my app, but if there’s another way, I’d love to know it.
[1] Side question: Is it possible to programatically set a secret from a cell (or in the notebook setup) for use in another cell?
Most Liked
josevalim
Can you folks please try Kino’s main? GitHub - livebook-dev/kino: Client-driven interactive widgets for Livebook We have pushed a new approach that should work and be more robust across both Erlang and Elixir version changes.
josevalim
You need both nodes on 1.15.7+, which means it requires the same version for now but not for future versions.
josevalim
I see. So you need to create a secret, choose it, and then you can replace its value dynamically inside the runtime using System.put_env/2.
josevalim
Can you call :erpc.call(node, :elixir, :module_info, []) on both nodes and let me know what it returns? Is the vsn attribute the same? Are the OTP versions exactly the same too?
EDIT: Nevermind, I know what is wrong. The fix we provided for Elixir is not enough.







