docs: def setup_ufw_rules():
      """
      Setup ufw app rules from application templates and settings UFW_RULES
  
      """
      
      #current rules
      current_rules = server_state('ufw_rules')
      if current_rules: current_rules = set(current_rules)
      else: current_rules = set([])
      role = env.role_lookup[env.host_string]
      firewall_rules = set(env.firewall_rules[role])
      if not env.overwrite and firewall_rules == current_rules: return
      if env.verbosity:
          print 'CONFIGURING FIREWALL'
      
      delete_rules = current_rules - firewall_rules
      for rule in delete_rules:
          with settings(warn_only=True):
              if env.verbosity:
                  print 'ufw delete', rule
              sudo('ufw delete %s'% rule)
      new_rules = firewall_rules - current_rules        
      for rule in new_rules:
          with settings(warn_only=True):
              if env.verbosity:
                  print 'ufw', rule
              sudo('ufw %s'% rule)
      set_server_state('ufw_rules',list(firewall_rules))
  
          
      output = sudo('ufw reload')
      if env.verbosity:
          print output