Refactor generate_hostname

``generate_hostname`` take ``template_vars``