forked from ungleich-public/cdist
		
	throw a better exception when environment variables are missing
Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
This commit is contained in:
		
					parent
					
						
							
								2f5de23ae9
							
						
					
				
			
			
				commit
				
					
						866645679a
					
				
			
		
					 1 changed files with 10 additions and 2 deletions
				
			
		| 
						 | 
					@ -28,7 +28,14 @@ import sys
 | 
				
			||||||
import cdist
 | 
					import cdist
 | 
				
			||||||
from cdist import core
 | 
					from cdist import core
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class MissingEnvironmentVariable(cdist.Error):
 | 
					class MissingRequiredEnvironmentVariableError(cdist.Error):
 | 
				
			||||||
 | 
					    def __init__(self, name):
 | 
				
			||||||
 | 
					        self.name = name
 | 
				
			||||||
 | 
					        self.message = "Emulator requires the environment variable %s to be setup" % self.name
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __str__(self):
 | 
				
			||||||
 | 
					        return self.message
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Emulator(object):
 | 
					class Emulator(object):
 | 
				
			||||||
    def __init__(self, argv, stdin=sys.stdin.buffer, env=os.environ):
 | 
					    def __init__(self, argv, stdin=sys.stdin.buffer, env=os.environ):
 | 
				
			||||||
| 
						 | 
					@ -46,7 +53,8 @@ class Emulator(object):
 | 
				
			||||||
            self.object_source  = self.env['__cdist_manifest']
 | 
					            self.object_source  = self.env['__cdist_manifest']
 | 
				
			||||||
            self.type_base_path = self.env['__cdist_type_base_path']
 | 
					            self.type_base_path = self.env['__cdist_type_base_path']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        except KeyError:
 | 
					        except KeyError as e:
 | 
				
			||||||
 | 
					            raise MissingRequiredEnvironmentVariableError(e.args[0])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        self.object_base_path = os.path.join(self.global_path, "object")
 | 
					        self.object_base_path = os.path.join(self.global_path, "object")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue