Merge remote-tracking branch 'telmich/master'
Conflicts: lib/cdist/emulator.py
This commit is contained in:
		
				commit
				
					
						405ebbccb7
					
				
			
		
					 12 changed files with 221 additions and 234 deletions
				
			
		|  | @ -30,19 +30,32 @@ log = logging.getLogger(__name__) | |||
| 
 | ||||
| def run(argv): | ||||
|     """Emulate type commands (i.e. __file and co)""" | ||||
|     global_path = os.environ['__global'] | ||||
|     object_source = os.environ['__cdist_manifest'] | ||||
|     target_host = os.environ['__target_host'] | ||||
|     type_name = os.path.basename(argv[0]) | ||||
| 
 | ||||
|     # Logsetup - FIXME: add object_fq as soon as setup! | ||||
|     #id = target_host + ": " + cdist_type + '/' + object_id  | ||||
|     id = target_host + ": " | ||||
|     # logformat = '%(levelname)s: ' + target_host + ": " + cdist_type + '/' + object_id + ': %(message)s' | ||||
|     logformat = '%(levelname)s: ' + id + ': %(message)s' | ||||
|     logging.basicConfig(format=logformat) | ||||
| 
 | ||||
|     if '__debug' in os.environ: | ||||
|         logging.root.setLevel(logging.DEBUG) | ||||
|     else: | ||||
|         logging.basicConfig(level=logging.INFO) | ||||
| 
 | ||||
|     global_path = os.environ['__global'] | ||||
|     object_source = os.environ['__cdist_manifest'] | ||||
|     type_name = os.path.basename(argv[0]) | ||||
|         logging.root.setLevel(logging.INFO) | ||||
| 
 | ||||
|     object_base_path = os.path.join(global_path, "object") | ||||
|     type_base_path = os.environ['__cdist_type_base_path'] | ||||
|     cdist_type = core.Type(type_base_path, type_name) | ||||
| 
 | ||||
|     if '__install' in os.environ: | ||||
|         if not cdist_type.is_install: | ||||
|             log.debug("Running in install mode, ignoring non install type") | ||||
|             return True | ||||
| 
 | ||||
|     parser = argparse.ArgumentParser(add_help=False) | ||||
| 
 | ||||
|     for parameter in cdist_type.optional_parameters: | ||||
|  | @ -72,15 +85,15 @@ def run(argv): | |||
|     # Instantiate the cdist object whe are defining | ||||
|     cdist_object = core.Object(cdist_type, object_base_path, object_id) | ||||
| 
 | ||||
|     # Prefix output by object_self | ||||
|     logformat = '%%(levelname)s: %s: %%(message)s' % cdist_object.path | ||||
|     logging.basicConfig(format=logformat) | ||||
| 
 | ||||
|     # FIXME: verify object id | ||||
|     log.debug(args) | ||||
|     log.debug('#### emulator args: %s' % args) | ||||
| 
 | ||||
|     # Create object with given parameters | ||||
|     parameters = vars(args) | ||||
|     parameters = {} | ||||
|     for key,value in vars(args).items(): | ||||
|         if value is not None: | ||||
|             parameters[key] = value | ||||
|      | ||||
|     if cdist_object.exists: | ||||
|         if cdist_object.parameters != parameters: | ||||
|             raise cdist.Error("Object %s already exists with conflicting parameters:\n%s: %s\n%s: %s" | ||||
|  | @ -97,7 +110,6 @@ def run(argv): | |||
|         cdist_object.requirements.extend(requirements.split(" ")) | ||||
| 
 | ||||
|     # Record / Append source | ||||
|     # FIXME: source should be list | ||||
|     cdist_object.source.append(object_source) | ||||
| 
 | ||||
|     log.debug("Finished %s %s" % (cdist_object.path, parameters)) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue