コード例 #1
0
ファイル: test_sqlalchemy_api.py プロジェクト: eqmcc/heat
    def test_resource_data_set_get(self):
        create_resource_data(self.ctx, self.resource)
        val = db_api.resource_data_get(self.resource, 'test_resource_key')
        self.assertEqual('test_value', val)

        #Updating existing resource data
        create_resource_data(self.ctx, self.resource, value='foo')
        val = db_api.resource_data_get(self.resource, 'test_resource_key')
        self.assertEqual('foo', val)

        #Testing with encrypted value
        create_resource_data(self.ctx, self.resource,
                             key='encryped_resource_key', redact=True)
        val = db_api.resource_data_get(self.resource, 'encryped_resource_key')
        self.assertEqual('test_value', val)
コード例 #2
0
ファイル: cloud_server.py プロジェクト: greynolds123/heat
 def private_key(self):
     """Return the private SSH key for the resource."""
     if self._private_key is not None:
         return self._private_key
     if self.id is not None:
         self._private_key = db_api.resource_data_get(self, 'private_key')
         return self._private_key
コード例 #3
0
ファイル: loadbalancer.py プロジェクト: AsherBond/heat
 def handle_delete(self):
     client = self.neutron()
     for member in self.properties['members']:
         member_id = db_api.resource_data_get(self, member)
         try:
             client.delete_member(member_id)
         except NeutronClientException as ex:
             if ex.status_code != 404:
                 raise ex
         db_api.resource_data_delete(self, member)
コード例 #4
0
ファイル: cloud_server.py プロジェクト: jake-liu/heat
 def private_key(self):
     """Return the private SSH key for the resource."""
     if self._private_key:
         return self._private_key
     if self.id is not None:
         private_key = db_api.resource_data_get(self, 'private_key')
         if not private_key:
             return None
         self._private_key = private_key
         return private_key
コード例 #5
0
ファイル: loadbalancer.py プロジェクト: vandita31/heat
 def handle_delete(self):
     client = self.neutron()
     for member in self.properties['members']:
         member_id = db_api.resource_data_get(self, member)
         try:
             client.delete_member(member_id)
         except NeutronClientException as ex:
             if ex.status_code != 404:
                 raise ex
         db_api.resource_data_delete(self, member)
コード例 #6
0
ファイル: nova_keypair.py プロジェクト: alexguev/heat
 def private_key(self):
     """Return the private SSH key for the resource."""
     if (self._private_key is None and self.id and
             self.properties['save_private_key']):
             try:
                 self._private_key = db_api.resource_data_get(self,
                                                              'private_key')
             except exception.NotFound:
                 pass
     return self._private_key or ""
コード例 #7
0
ファイル: nova_keypair.py プロジェクト: savi-dev/heat
 def private_key(self):
     """Return the private SSH key for the resource."""
     if (self._private_key is None and self.id
             and self.properties['save_private_key']):
         try:
             self._private_key = db_api.resource_data_get(
                 self, 'private_key')
         except exception.NotFound:
             pass
     return self._private_key or ""
コード例 #8
0
ファイル: cloud_server.py プロジェクト: jazeltq/heat
 def private_key(self):
     """Return the private SSH key for the resource."""
     if self._private_key:
         return self._private_key
     if self.id is not None:
         private_key = db_api.resource_data_get(self, "private_key")
         if not private_key:
             return None
         self._private_key = private_key
         return private_key
コード例 #9
0
 def test_resource_data_delete(self):
     stack = self._setup_test_stack('stack', UUID1)[1]
     self._mock_create(self.m)
     self.m.ReplayAll()
     stack.create()
     rsrc = stack.resources['WebServer']
     db_api.resource_data_set(rsrc, 'test', 'test_data')
     self.assertEqual('test_data', db_api.resource_data_get(rsrc, 'test'))
     db_api.resource_data_delete(rsrc, 'test')
     self.assertRaises(exception.NotFound,
                       db_api.resource_data_get, rsrc, 'test')
コード例 #10
0
    def test_resource_data_set_get(self):
        create_resource_data(self.ctx, self.resource)
        val = db_api.resource_data_get(self.resource, 'test_resource_key')
        self.assertEqual('test_value', val)

        #Updating existing resource data
        create_resource_data(self.ctx, self.resource, value='foo')
        val = db_api.resource_data_get(self.resource, 'test_resource_key')
        self.assertEqual('foo', val)

        #Testing with encrypted value
        create_resource_data(self.ctx, self.resource,
                             key='encryped_resource_key', redact=True)
        val = db_api.resource_data_get(self.resource, 'encryped_resource_key')
        self.assertEqual('test_value', val)

        vals = db_api.resource_data_get_all(self.resource)
        self.assertEqual(len(vals), 2)
        self.assertEqual('foo', vals.get('test_resource_key'))
        self.assertEqual('test_value', vals.get('encryped_resource_key'))
コード例 #11
0
ファイル: test_sqlalchemy_api.py プロジェクト: eqmcc/heat
 def test_resource_data_delete(self):
     stack = self._setup_test_stack('stack', UUID1)[1]
     self._mock_create(self.m)
     self.m.ReplayAll()
     stack.create()
     rsrc = stack['WebServer']
     db_api.resource_data_set(rsrc, 'test', 'test_data')
     self.assertEqual('test_data', db_api.resource_data_get(rsrc, 'test'))
     db_api.resource_data_delete(rsrc, 'test')
     self.assertRaises(exception.NotFound,
                       db_api.resource_data_get, rsrc, 'test')
コード例 #12
0
ファイル: cloud_server.py プロジェクト: huanxiong2010/heat
 def _resolve_attribute(self, name):
     if name == 'distro':
         return self.distro
     if name == 'privateIPv4':
         return nova_utils.get_ip(self.server, 'private', 4)
     if name == 'admin_pass':
         try:
             return db_api.resource_data_get(self, self.ADMIN_PASS)
         except exception.NotFound:
             logger.info(_('Administrator password not'
                           'found for server: %s') % self.name)
             return ''
     return super(CloudServer, self)._resolve_attribute(name)
コード例 #13
0
 def _resolve_attribute(self, name):
     if name == 'distro':
         return self.distro
     if name == 'privateIPv4':
         return nova_utils.get_ip(self.server, 'private', 4)
     if name == 'admin_pass':
         try:
             return db_api.resource_data_get(self, self.ADMIN_PASS)
         except exception.NotFound:
             logger.info(
                 _('Administrator password not'
                   'found for server: %s') % self.name)
             return ''
     return super(CloudServer, self)._resolve_attribute(name)
コード例 #14
0
ファイル: loadbalancer.py プロジェクト: AsherBond/heat
 def handle_update(self, json_snippet, tmpl_diff, prop_diff):
     if 'members' in prop_diff:
         members = set(prop_diff['members'])
         old_members = set(self.t['Properties'].get('members', []))
         client = self.neutron()
         for member in old_members - members:
             member_id = db_api.resource_data_get(self, member)
             try:
                 client.delete_member(member_id)
             except NeutronClientException as ex:
                 if ex.status_code != 404:
                     raise ex
             db_api.resource_data_delete(self, member)
         pool = self.properties['pool_id']
         nova_client = self.nova()
         protocol_port = self.properties['protocol_port']
         for member in members - old_members:
             address = nova_utils.server_to_ipaddress(nova_client, member)
             lb_member = client.create_member({
                 'member': {
                     'pool_id': pool,
                     'address': address,
                     'protocol_port': protocol_port}})['member']
             db_api.resource_data_set(self, member, lb_member['id'])
コード例 #15
0
 def handle_update(self, json_snippet, tmpl_diff, prop_diff):
     if 'members' in prop_diff:
         members = set(prop_diff['members'])
         old_members = set(self.t['Properties'].get('members', []))
         client = self.neutron()
         for member in old_members - members:
             member_id = db_api.resource_data_get(self, member)
             try:
                 client.delete_member(member_id)
             except NeutronClientException as ex:
                 if ex.status_code != 404:
                     raise ex
             db_api.resource_data_delete(self, member)
         pool = self.properties['pool_id']
         nova_client = self.nova()
         protocol_port = self.properties['protocol_port']
         for member in members - old_members:
             address = nova_utils.server_to_ipaddress(nova_client, member)
             lb_member = client.create_member({
                 'member': {
                     'pool_id': pool,
                     'address': address,
                     'protocol_port': protocol_port}})['member']
             db_api.resource_data_set(self, member, lb_member['id'])
コード例 #16
0
ファイル: test_sqlalchemy_api.py プロジェクト: eqmcc/heat
 def my_secret(self):
     return db_api.resource_data_get(self, 'my_secret')
コード例 #17
0
ファイル: resource_data.py プロジェクト: aaratn/heat
 def get_val(cls, resource, key):
     return db_api.resource_data_get(resource.context, resource.id, key)
コード例 #18
0
 def _resolve_attribute(self, key):
     try:
         return db_api.resource_data_get(self, key).decode('utf-8')
     except exception.NotFound:
         return None
コード例 #19
0
 def _resolve_attribute(self, key):
     try:
         return db_api.resource_data_get(self, key).decode('utf-8')
     except exception.NotFound:
         return None
コード例 #20
0
 def my_secret(self):
     return db_api.resource_data_get(self, 'my_secret')
コード例 #21
0
ファイル: resource_data.py プロジェクト: zzjeric/heat
 def get_val(cls, resource, key):
     return db_api.resource_data_get(resource.context, resource.id, key)