self.ubuntu_image_path = '{0}/{1}'.format(
             CONST.dir_functest_data,
             "ubuntu-16.04-server-cloudimg-amd64-disk1.img")
+        self.custom_flavor_name = 'm1.custom'
+        self.custom_flavor_ram = 1024
+        self.custom_flavor_disk = 10
+        self.custom_flavor_vcpus = 1
 
 
 class TestcaseConfig(object):
 
 ODL_PASS = 'admin'
 
 
+def create_custom_flavor():
+    return os_utils.get_or_create_flavor(common_config.custom_flavor_name,
+                                         common_config.custom_flavor_ram,
+                                         common_config.custom_flavor_disk,
+                                         common_config.custom_flavor_vcpus)
+
+
 def create_net(neutron_client, name):
     logger.debug("Creating network %s", name)
     net_id = os_utils.create_neutron_net(neutron_client, name)
 
       quagga_router_name: sdnvpn-3-2-quagga-router
       quagga_instance_name: sdnvpn-3-2-quagga
       quagga_instance_ip: 10.10.11.5
-      quagga_instance_flavor: m1.small
       instance_1_name: sdnvpn-3-1
       instance_1_ip: 10.10.10.5
       import_targets: '31:31'
 
         controller_ext_ip,
         fake_fip['fip_addr'],
         ext_net_mask)
+
+    test_utils.create_custom_flavor()
+
     quagga_vm = test_utils.create_instance(
         nova_client,
         TESTCASE_CONFIG.quagga_instance_name,
         quagga_net_id,
         sg_id,
         fixed_ip=TESTCASE_CONFIG.quagga_instance_ip,
-        flavor=TESTCASE_CONFIG.quagga_instance_flavor,
+        flavor=COMMON_CONFIG.custom_flavor_name,
         userdata=quagga_bootstrap_script,
         compute_node=quagga_compute_node)