Support multiple machines files

This is primarily useful for the Hydra provisioner, which can write
its machines to another file than /etc/nix/machines.
This commit is contained in:
Eelco Dolstra
2015-08-25 14:11:50 +02:00
parent 442bed3b59
commit 7aa52517e9
3 changed files with 63 additions and 34 deletions

View File

@@ -286,9 +286,6 @@ private:
typedef std::map<std::string, Machine::ptr> Machines;
Sync<Machines> machines; // FIXME: use atomic_shared_ptr
nix::Path machinesFile;
struct stat machinesFileStat;
/* Various stats. */
time_t startedAt;
counter nrBuildsRead{0};
@@ -352,8 +349,7 @@ private:
void clearBusy(Connection & conn, time_t stopTime);
/* (Re)load /etc/nix/machines. */
void loadMachinesFile();
void parseMachines(const std::string & contents);
/* Thread to reload /etc/nix/machines periodically. */
void monitorMachinesFile();