NixOS / nixops

NixOps is a tool for deploying to NixOS machines in a network or cloud.
https://nixos.org/nixops
GNU Lesser General Public License v3.0
1.85k stars 365 forks source link

Race in Charon evaluation #29

Open edolstra opened 12 years ago

edolstra commented 12 years ago

It is possible for the Nix expressions defining the Charon network to change between the first and second evaluation, for instance if you edit the expressions while running "charon deploy" in the background. Example scenario (which happened to me):

Kinda tricky to prevent this. We could at least check after the second evaluation that the timestamps on the network expressions haven't changed.

shlevy commented 11 years ago

This would be kinda hacky, but we could just open the nix expressions once and pass "/proc/{charon-pid}/fds/{expr-fd}" to nix invocations... Or write python bindings to nix :)