def record_present(name, zone, type, data, profile):
 zones = libcloud_dns_module.list_zones(profile)
 try:
  matching_zone = [z for z in zones if (z.domain == zone)][0]
 except IndexError:
  return state_result(False, 'Could not locate zone')
 records = libcloud_dns_module.list_records(matching_zone.id, profile)
 matching_records = [record for record in records if ((record.name == name) and (record.type == type) and (record.data == data))]
 if (len(matching_records) == 0):
  result = libcloud_dns_module.create_record(name, matching_zone.id, type, data, profile)
  return state_result(result, 'Created new record')
 else:
  return state_result(True, 'Record already exists')

def record_present ( name , zone , type , data , profile ) : zones = libcloud_dns_module . list_zones ( profile ) try : matching_zone = [ z for z in zones if ( z . domain == zone ) ] [ 0 ] except IndexError : return state_result ( False , 'Could not locate zone' ) records = libcloud_dns_module . list_records ( matching_zone . id , profile ) matching_records = [ record for record in records if ( ( record . name == name ) and ( record . type == type ) and ( record . data == data ) ) ] if ( len ( matching_records ) == 0 ) : result = libcloud_dns_module . create_record ( name , matching_zone . id , type , data , profile ) return state_result ( result , 'Created new record' ) else : return state_result ( True , 'Record already exists' )
ensures a record is present .