forked from ungleich-public/cdist
		
	Make install command beta.
This commit is contained in:
		
					parent
					
						
							
								acf94abe26
							
						
					
				
			
			
				commit
				
					
						750f90db4c
					
				
			
		
					 2 changed files with 20 additions and 6 deletions
				
			
		|  | @ -59,16 +59,24 @@ class UnresolvableRequirementsError(cdist.Error): | |||
| class CdistBetaRequired(cdist.Error): | ||||
|     """Beta functionality is used but beta is not enabled""" | ||||
| 
 | ||||
|     def __init__(self, command, arg): | ||||
|     def __init__(self, command, arg=None): | ||||
|         self.command = command | ||||
|         self.arg = arg | ||||
| 
 | ||||
|     def __str__(self): | ||||
|         err_msg = ("\'{}\' argument of \'{}\' command is beta, but beta is " | ||||
|         if self.arg is None: | ||||
|             err_msg = ("\'{}\' command is beta, but beta is " | ||||
|                        "not enabled. If you want to use it please enable beta " | ||||
|                        "functionalities by using the -b/--enable-beta command " | ||||
|                        "line flag.") | ||||
|         return err_msg.format(self.arg, self.command) | ||||
|             fmt_args = [self.command, ] | ||||
|         else: | ||||
|             err_msg = ("\'{}\' argument of \'{}\' command is beta, but beta " | ||||
|                        "is not enabled. If you want to use it please enable " | ||||
|                        "beta functionalities by using the -b/--enable-beta " | ||||
|                        "command line flag.") | ||||
|             fmt_args = [self.arg, self.command, ] | ||||
|         return err_msg.format(*fmt_args) | ||||
| 
 | ||||
| 
 | ||||
| class CdistObjectError(Error): | ||||
|  |  | |||
|  | @ -22,6 +22,8 @@ | |||
| # | ||||
| 
 | ||||
| 
 | ||||
| # list of beta sub-commands | ||||
| BETA_COMMANDS = ['install', ] | ||||
| # list of beta arguments for sub-commands | ||||
| BETA_ARGS = { | ||||
|     'config': ['jobs', ], | ||||
|  | @ -49,6 +51,10 @@ def check_beta(args_dict): | |||
|     # raise error. | ||||
|     if not args_dict['beta']: | ||||
|         cmd = args_dict['command'] | ||||
|         # first check if command is beta | ||||
|         if cmd in BETA_COMMANDS: | ||||
|             raise cdist.CdistBetaRequired(cmd) | ||||
|         # then check if command's argument is beta | ||||
|         if cmd in BETA_ARGS: | ||||
|             for arg in BETA_ARGS[cmd]: | ||||
|                 if arg in args_dict and args_dict[arg]: | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue