forked from ungleich-public/cdist
		
	support changing the initial manifest
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								908d9d06f9
							
						
					
				
			
			
				commit
				
					
						ddff3e8b57
					
				
			
		
					 2 changed files with 13 additions and 2 deletions
				
			
		
							
								
								
									
										14
									
								
								bin/cdist
									
										
									
									
									
								
							
							
						
						
									
										14
									
								
								bin/cdist
									
										
									
									
									
								
							| 
						 | 
					@ -31,6 +31,8 @@ import logging
 | 
				
			||||||
BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
 | 
					BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
 | 
				
			||||||
CONF_DIR                   = os.path.join(BASE_DIR, "conf")
 | 
					CONF_DIR                   = os.path.join(BASE_DIR, "conf")
 | 
				
			||||||
GLOBAL_EXPLORER_DIR        = os.path.join(CONF_DIR, "explorer")
 | 
					GLOBAL_EXPLORER_DIR        = os.path.join(CONF_DIR, "explorer")
 | 
				
			||||||
 | 
					MANIFEST_DIR               = os.path.join(CONF_DIR, "manifest")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
REMOTE_BASE_DIR            = "/var/lib/cdist"
 | 
					REMOTE_BASE_DIR            = "/var/lib/cdist"
 | 
				
			||||||
REMOTE_CONF_DIR            = os.path.join(REMOTE_BASE_DIR, "conf")
 | 
					REMOTE_CONF_DIR            = os.path.join(REMOTE_BASE_DIR, "conf")
 | 
				
			||||||
REMOTE_GLOBAL_EXPLORER_DIR = os.path.join(REMOTE_CONF_DIR, "explorer")
 | 
					REMOTE_GLOBAL_EXPLORER_DIR = os.path.join(REMOTE_CONF_DIR, "explorer")
 | 
				
			||||||
| 
						 | 
					@ -63,7 +65,7 @@ class Cdist:
 | 
				
			||||||
   """Cdist main class to hold arbitrary data"""
 | 
					   """Cdist main class to hold arbitrary data"""
 | 
				
			||||||
   version="2.0.0"
 | 
					   version="2.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   def __init__(self, hostname):
 | 
					   def __init__(self, hostname, initial_manifest=False):
 | 
				
			||||||
      self.hostname = hostname
 | 
					      self.hostname = hostname
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      # log.info("foobar")
 | 
					      # log.info("foobar")
 | 
				
			||||||
| 
						 | 
					@ -75,6 +77,12 @@ class Cdist:
 | 
				
			||||||
      self.global_explorer_out_dir = os.path.join(self.out_dir, "explorer")
 | 
					      self.global_explorer_out_dir = os.path.join(self.out_dir, "explorer")
 | 
				
			||||||
      os.mkdir(self.global_explorer_out_dir)
 | 
					      os.mkdir(self.global_explorer_out_dir)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      # Mostly static, but can be overwritten on user demand
 | 
				
			||||||
 | 
					      if initial_manifest:
 | 
				
			||||||
 | 
					         self.initial_manifest = initial_manifest
 | 
				
			||||||
 | 
					      else:
 | 
				
			||||||
 | 
					         self.initial_manifest = os.path.join(MANIFEST_DIR, "init")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   def cleanup(self):
 | 
					   def cleanup(self):
 | 
				
			||||||
      # Do not use in __del__:
 | 
					      # Do not use in __del__:
 | 
				
			||||||
      # http://docs.python.org/reference/datamodel.html#customization
 | 
					      # http://docs.python.org/reference/datamodel.html#customization
 | 
				
			||||||
| 
						 | 
					@ -157,11 +165,15 @@ class Cdist:
 | 
				
			||||||
   #   # Link configuraion source directory - consistent with remote
 | 
					   #   # Link configuraion source directory - consistent with remote
 | 
				
			||||||
   #   run_or_fail(["ln -sf", "$__cdist_conf_dir", "$__cdist_local_base_dir/$__cdist_name_conf_dir"])
 | 
					   #   run_or_fail(["ln -sf", "$__cdist_conf_dir", "$__cdist_local_base_dir/$__cdist_name_conf_dir"])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   def initial_manifes(self):
 | 
				
			||||||
 | 
					      """Run the initial manifest"""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   def deploy_to(self):
 | 
					   def deploy_to(self):
 | 
				
			||||||
      """Mimic the old deploy to: Deploy to one host"""
 | 
					      """Mimic the old deploy to: Deploy to one host"""
 | 
				
			||||||
      log.info("Deploying to host " + self.hostname)
 | 
					      log.info("Deploying to host " + self.hostname)
 | 
				
			||||||
      self.init_deploy()
 | 
					      self.init_deploy()
 | 
				
			||||||
      self.global_explore()
 | 
					      self.global_explore()
 | 
				
			||||||
 | 
					      self.initial_manifest()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == "__main__":
 | 
					if __name__ == "__main__":
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,7 +43,6 @@ __cdist_echo info "cdist $__cdist_version: Configuring $__cdist_target_host "
 | 
				
			||||||
# See cdist-stages(7)
 | 
					# See cdist-stages(7)
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cdist-explorer-run-global     "$__cdist_target_host"
 | 
					 | 
				
			||||||
cdist-manifest-run-init       "$__cdist_target_host"
 | 
					cdist-manifest-run-init       "$__cdist_target_host"
 | 
				
			||||||
cdist-object-all              "$__cdist_target_host" cdist-object-prepare
 | 
					cdist-object-all              "$__cdist_target_host" cdist-object-prepare
 | 
				
			||||||
cdist-object-all              "$__cdist_target_host" cdist-object-run
 | 
					cdist-object-all              "$__cdist_target_host" cdist-object-run
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue