* Skeleton of remote store implementation.
This commit is contained in:
		
							parent
							
								
									6ecb840fd1
								
							
						
					
					
						commit
						9cf1948993
					
				
					 4 changed files with 14 additions and 6 deletions
				
			
		|  | @ -1,12 +1,12 @@ | |||
| pkglib_LTLIBRARIES = libstore.la | ||||
| 
 | ||||
| libstore_la_SOURCES = \ | ||||
|  store-api.cc local-store.cc derivations.cc build.cc misc.cc globals.cc \ | ||||
|  db.cc references.cc pathlocks.cc gc.cc  | ||||
|  store-api.cc local-store.cc remote-store.cc derivations.cc build.cc misc.cc \ | ||||
|  globals.cc db.cc references.cc pathlocks.cc gc.cc  | ||||
| 
 | ||||
| pkginclude_HEADERS = \ | ||||
|  store-api.hh local-store.cc derivations.hh misc.hh globals.hh \ | ||||
|  db.hh references.hh pathlocks.hh gc.hh  | ||||
|  store-api.hh local-store.cc remote-store.cc derivations.hh misc.hh \ | ||||
|  globals.hh db.hh references.hh pathlocks.hh gc.hh  | ||||
| 
 | ||||
| libstore_la_LIBADD = ../libutil/libutil.la ../boost/format/libformat.la | ||||
| 
 | ||||
|  |  | |||
|  | @ -16,6 +16,7 @@ | |||
| #include <unistd.h> | ||||
| #include <utime.h> | ||||
| 
 | ||||
| 
 | ||||
| namespace nix { | ||||
| 
 | ||||
|      | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| #include "store-api.hh" | ||||
| #include "globals.hh" | ||||
| #include "util.hh" | ||||
| 
 | ||||
| 
 | ||||
| namespace nix { | ||||
|  | @ -90,6 +91,7 @@ Path makeFixedOutputPath(bool recursive, | |||
| 
 | ||||
| 
 | ||||
| #include "local-store.hh" | ||||
| #include "remote-store.hh" | ||||
| 
 | ||||
| 
 | ||||
| namespace nix { | ||||
|  | @ -100,7 +102,12 @@ boost::shared_ptr<StoreAPI> store; | |||
| 
 | ||||
| boost::shared_ptr<StoreAPI> openStore(bool reserveSpace) | ||||
| { | ||||
|     string mode = getEnv("NIX_REMOTE"); | ||||
|     if (mode == "") | ||||
|         return boost::shared_ptr<StoreAPI>(new LocalStore(reserveSpace)); | ||||
|     else if (mode == "slave") | ||||
|         return boost::shared_ptr<StoreAPI>(new RemoteStore()); | ||||
|     else throw Error(format("invalid setting for NIX_REMOTE, `%1%'") % mode); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -85,7 +85,7 @@ Path createGeneration(Path profile, Path outPath) | |||
| 
 | ||||
|     /* Create the new generation.  Note that addPermRoot() blocks if
 | ||||
|        the garbage collector is running to prevent the stuff we've | ||||
|        build from moving from the temporary roots (which the GC knows) | ||||
|        built from moving from the temporary roots (which the GC knows) | ||||
|        to the permanent roots (of which the GC would have a stale | ||||
|        view).  If we didn't do it this way, the GC might remove the | ||||
|        user environment etc. we've just built. */ | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue