Ejemplo n.º 1
0
 def create_release(self, api=False, **kwargs):
     version = str(randint(0, 100000000))
     release_data = {
         'name': u"release_name_" + version,
         'version': version,
         'description': u"release_desc" + version,
         'operating_system': 'CensOS',
         'roles': self.get_default_roles(),
         'networks_metadata': self.get_default_networks_metadata(),
         'attributes_metadata': self.get_default_attributes_metadata(),
         'volumes_metadata': self.get_default_volumes_metadata()
     }
     if kwargs:
         release_data.update(kwargs)
     if api:
         resp = self.app.post(reverse('ReleaseCollectionHandler'),
                              params=json.dumps(release_data),
                              headers=self.default_headers)
         self.tester.assertEquals(resp.status, 201)
         release = json.loads(resp.body)
         self.releases.append(self.db.query(Release).get(release['id']))
     else:
         release = Release()
         for field, value in release_data.iteritems():
             setattr(release, field, value)
         self.db.add(release)
         self.db.commit()
         self.releases.append(release)
     return release
Ejemplo n.º 2
0
    def test_release_environment_version(self):
        test_cases = (
            ('2014.1', '5.0'),
            ('2014.1-5.0', '5.0'),
            ('2014.1.1-5.0.1', '5.0.1'),
            ('2014.1.1-5.0.1-X', '5.0.1'),
            ('2014.1.1-5.1', '5.1'),
        )

        for version, enviroment_version in test_cases:
            self.assertEqual(
                Release(version=version).environment_version,
                enviroment_version)
Ejemplo n.º 3
0
 def test_if_cluster_creates_correct_networks(self):
     release = Release()
     release.version = "1111-6.0"
     release.name = u"release_name_" + str(release.version)
     release.description = u"release_desc" + str(release.version)
     release.operating_system = consts.RELEASE_OS.ubuntu
     release.state = consts.RELEASE_STATES.available
     release.networks_metadata = self.env.get_default_networks_metadata()
     release.attributes_metadata = {
         "editable": {
             "keystone": {
                 "admin_tenant": "admin"
             }
         },
         "generated": {
             "mysql": {
                 "root_password": ""
             }
         }
     }
     self.db.add(release)
     self.db.commit()
     resp = self.app.post(
         reverse('ClusterCollectionHandler'),
         jsonutils.dumps({
             'name': 'cluster-name',
             'release': release.id,
             'net_provider': consts.CLUSTER_NET_PROVIDERS.nova_network,
         }),
         headers=self.default_headers
     )
     self.assertEqual(201, resp.status_code)
     nets = self.db.query(NetworkGroup).filter(
         not_(NetworkGroup.name == "fuelweb_admin")
     ).all()
     obtained = []
     for net in nets:
         obtained.append({
             'release': net.release,
             'name': net.name,
             'vlan_id': net.vlan_start,
             'cidr': net.cidr,
             'gateway': net.gateway
         })
     expected = [
         {
             'release': release.id,
             'name': u'public',
             'vlan_id': None,
             'cidr': '172.16.0.0/24',
             'gateway': '172.16.0.1'
         },
         {
             'release': release.id,
             'name': u'fixed',
             'vlan_id': None,
             'cidr': None,
             'gateway': None
         },
         {
             'release': release.id,
             'name': u'storage',
             'vlan_id': 102,
             'cidr': '192.168.1.0/24',
             'gateway': None
         },
         {
             'release': release.id,
             'name': u'management',
             'vlan_id': 101,
             'cidr': '192.168.0.0/24',
             'gateway': None
         }
     ]
     self.assertItemsEqual(expected, obtained)