15 lines
		
	
	
		
			464 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			464 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| class ChefNodeNameBuilder
 | |
|   def initialize(server_info, project, env)
 | |
|     @server_info, @project, @env = server_info, project, env
 | |
|     @mask = server_info['tags']['cid:node-name-mask'] || '$project-$nodename-$env'
 | |
|   end
 | |
| 
 | |
|   def build_node_name
 | |
|     @mask.gsub!('$project', @project.id)
 | |
|     @mask.gsub!('$env', @env.identifier)
 | |
|     @mask.gsub!('$nodename', @server_info['id'])
 | |
|     @mask.gsub!('$time', Time.now.to_i.to_s)
 | |
|     @mask.gsub!('_', '-')
 | |
|     @mask
 | |
|   end
 | |
| end | 
