@ -22,8 +22,13 @@ import (
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						"github.com/pkg/errors" 
 
					 
					 
					 
						"github.com/pkg/errors" 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					) 
 
					 
					 
					 
					) 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					var  httpPrefix  =  regexp . MustCompile ( ` ^https?:// ` ) 
 
					 
					 
					 
					var  ( 
 
				
			 
			
				
				
			
		
	
		
		
			
				
					
					 
					 
					 
					var  gitURLPathWithFragmentSuffix  =  regexp . MustCompile ( ` \.git(?:#.+)?$ ` ) 
 
					 
					 
					 
						httpPrefix                    =  regexp . MustCompile ( ` ^https?:// ` ) 
 
				
			 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						gitURLPathWithFragmentSuffix  =  regexp . MustCompile ( ` \.git(?:#.+)?$ ` ) 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						validTargetNameChars  =  ` [a-zA-Z0-9_-]+ ` 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						targetNamePattern     =  regexp . MustCompile ( ` ^ `  +  validTargetNameChars  +  ` $ ` ) 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					) 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					type  File  struct  { 
 
					 
					 
					 
					type  File  struct  { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						Name  string 
 
					 
					 
					 
						Name  string 
 
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -176,8 +181,9 @@ func ParseFiles(files []File, defaults map[string]string) (_ *Config, err error)
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						if  len ( fs )  >  0  { 
 
					 
					 
					 
						if  len ( fs )  >  0  { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
							if  err  :=  hclparser . Parse ( hcl . MergeFiles ( fs ) ,  hclparser . Opt { 
 
					 
					 
					 
							if  err  :=  hclparser . Parse ( hcl . MergeFiles ( fs ) ,  hclparser . Opt { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
								LookupVar :  os . LookupEnv , 
 
					 
					 
					 
								LookupVar :      os . LookupEnv , 
 
				
			 
			
				
				
			
		
	
		
		
			
				
					
					 
					 
					 
								Vars :       defaults , 
 
					 
					 
					 
								Vars :           defaults , 
 
				
			 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
								ValidateLabel :  validateTargetName , 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
							} ,  & c ) ;  err . HasErrors ( )  { 
 
					 
					 
					 
							} ,  & c ) ;  err . HasErrors ( )  { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
								return  nil ,  err 
 
					 
					 
					 
								return  nil ,  err 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
							} 
 
					 
					 
					 
							} 
 
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -798,3 +804,10 @@ func parseOutputType(str string) string {
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						} 
 
					 
					 
					 
						} 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						return  "" 
 
					 
					 
					 
						return  "" 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					} 
 
					 
					 
					 
					} 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					func  validateTargetName ( name  string )  error  { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						if  ! targetNamePattern . MatchString ( name )  { 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
							return  errors . Errorf ( "only %q are allowed" ,  validTargetNameChars ) 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						} 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						return  nil 
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					}