summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvladimir.p <vladimir@zadarastorage.com>2011-08-09 18:14:41 -0700
committervladimir.p <vladimir@zadarastorage.com>2011-08-09 18:14:41 -0700
commit820d28dcf09088b5878d4cd5dcb5f4765e0b4992 (patch)
treef3b1231ca657a525ea982c95db76abaa0f9ff870
parentbd39829cc1908cb5ead899c9659a5c516b073a4f (diff)
Dropped vsa_id from instances
-rw-r--r--nova/compute/api.py8
-rw-r--r--nova/db/api.py12
-rw-r--r--nova/db/sqlalchemy/api.py30
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/037_add_vsa_data.py7
-rw-r--r--nova/db/sqlalchemy/models.py3
-rw-r--r--nova/vsa/manager.py3
6 files changed, 6 insertions, 57 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py
index 42e627712..4ac0ffef2 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -151,7 +151,7 @@ class API(base.Base):
key_name=None, key_data=None, security_group='default',
availability_zone=None, user_data=None, metadata={},
injected_files=None, admin_password=None, zone_blob=None,
- reservation_id=None, vsa_id=None):
+ reservation_id=None):
"""Verify all the input parameters regardless of the provisioning
strategy being performed."""
@@ -247,7 +247,6 @@ class API(base.Base):
'os_type': os_type,
'architecture': architecture,
'vm_mode': vm_mode,
- 'vsa_id': vsa_id,
'root_device_name': root_device_name}
return (num_instances, base_options, image)
@@ -469,8 +468,7 @@ class API(base.Base):
key_name=None, key_data=None, security_group='default',
availability_zone=None, user_data=None, metadata={},
injected_files=None, admin_password=None, zone_blob=None,
- reservation_id=None, block_device_mapping=None,
- vsa_id=None):
+ reservation_id=None, block_device_mapping=None):
"""
Provision the instances by sending off a series of single
instance requests to the Schedulers. This is fine for trival
@@ -491,7 +489,7 @@ class API(base.Base):
key_name, key_data, security_group,
availability_zone, user_data, metadata,
injected_files, admin_password, zone_blob,
- reservation_id, vsa_id)
+ reservation_id)
block_device_mapping = block_device_mapping or []
instances = []
diff --git a/nova/db/api.py b/nova/db/api.py
index 59baf94dd..0b6995f90 100644
--- a/nova/db/api.py
+++ b/nova/db/api.py
@@ -512,23 +512,11 @@ def instance_get_all_by_project(context, project_id):
return IMPL.instance_get_all_by_project(context, project_id)
-def instance_get_all_by_project_and_vsa(context, project_id, vsa_id):
- """Get all instance spawned by a given VSA belonging to a project."""
- return IMPL.instance_get_all_by_project_and_vsa(context,
- project_id,
- vsa_id)
-
-
def instance_get_all_by_host(context, host):
"""Get all instance belonging to a host."""
return IMPL.instance_get_all_by_host(context, host)
-def instance_get_all_by_vsa(context, vsa_id):
- """Get all instance belonging to a VSA."""
- return IMPL.instance_get_all_by_vsa(context, vsa_id)
-
-
def instance_get_all_by_reservation(context, reservation_id):
"""Get all instances belonging to a reservation."""
return IMPL.instance_get_all_by_reservation(context, reservation_id)
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index ff6d756a1..bc1a3046c 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -1322,35 +1322,6 @@ def instance_get_all_by_project(context, project_id):
@require_context
-def instance_get_all_by_project_and_vsa(context, project_id, vsa_id):
- authorize_project_context(context, project_id)
-
- session = get_session()
- return session.query(models.Instance).\
- options(joinedload_all('fixed_ips.floating_ips')).\
- options(joinedload('security_groups')).\
- options(joinedload_all('fixed_ips.network')).\
- options(joinedload('instance_type')).\
- filter_by(project_id=project_id).\
- filter_by(vsa_id=vsa_id).\
- filter_by(deleted=can_read_deleted(context)).\
- all()
-
-
-@require_admin_context
-def instance_get_all_by_vsa(context, vsa_id):
- session = get_session()
- return session.query(models.Instance).\
- options(joinedload_all('fixed_ips.floating_ips')).\
- options(joinedload('security_groups')).\
- options(joinedload_all('fixed_ips.network')).\
- options(joinedload('instance_type')).\
- filter_by(vsa_id=vsa_id).\
- filter_by(deleted=can_read_deleted(context)).\
- all()
-
-
-@require_context
def instance_get_all_by_reservation(context, reservation_id):
session = get_session()
query = session.query(models.Instance).\
@@ -3748,6 +3719,7 @@ def vsa_get_vc_ips_list(context, vsa_id):
"""
result = []
session = get_session()
+ """ VP-TODO: CHANGE THIS!!! Need to perform a search based on meta-data """
vc_instances = session.query(models.Instance).\
options(joinedload_all('fixed_ips.floating_ips')).\
options(joinedload('security_groups')).\
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/037_add_vsa_data.py b/nova/db/sqlalchemy/migrate_repo/versions/037_add_vsa_data.py
index 3b39ff493..5a80f4e7a 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/037_add_vsa_data.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/037_add_vsa_data.py
@@ -27,15 +27,10 @@ meta = MetaData()
# actual definitions of tables .
#
-instances = Table('instances', meta,
- Column('id', Integer(), primary_key=True, nullable=False),
- )
-
volumes = Table('volumes', meta,
Column('id', Integer(), primary_key=True, nullable=False),
)
-vsa_id = Column('vsa_id', Integer(), nullable=True)
to_vsa_id = Column('to_vsa_id', Integer(), nullable=True)
from_vsa_id = Column('from_vsa_id', Integer(), nullable=True)
drive_type_id = Column('drive_type_id', Integer(), nullable=True)
@@ -123,7 +118,6 @@ def upgrade(migrate_engine):
logging.exception('Exception while creating table')
raise
- instances.create_column(vsa_id)
volumes.create_column(to_vsa_id)
volumes.create_column(from_vsa_id)
volumes.create_column(drive_type_id)
@@ -132,7 +126,6 @@ def upgrade(migrate_engine):
def downgrade(migrate_engine):
meta.bind = migrate_engine
- instances.drop_column(vsa_id)
volumes.drop_column(to_vsa_id)
volumes.drop_column(from_vsa_id)
volumes.drop_column(drive_type_id)
diff --git a/nova/db/sqlalchemy/models.py b/nova/db/sqlalchemy/models.py
index f80029e97..236f148e4 100644
--- a/nova/db/sqlalchemy/models.py
+++ b/nova/db/sqlalchemy/models.py
@@ -243,9 +243,6 @@ class Instance(BASE, NovaBase):
# assert(state in ['nostate', 'running', 'blocked', 'paused',
# 'shutdown', 'shutoff', 'crashed'])
- vsa_id = Column(Integer, ForeignKey('virtual_storage_arrays.id'),
- nullable=True)
-
class VirtualStorageArray(BASE, NovaBase):
"""
diff --git a/nova/vsa/manager.py b/nova/vsa/manager.py
index 0da6fe460..1d17340f2 100644
--- a/nova/vsa/manager.py
+++ b/nova/vsa/manager.py
@@ -173,6 +173,7 @@ class VsaManager(manager.SchedulerDependentManager):
display_description='VC for VSA ' + vsa['display_name'],
availability_zone=vsa['availability_zone'],
user_data=storage_data,
- vsa_id=vsa_id)
+ vsa_id=vsa_id,
+ metadata=dict(vsa_id=str(vsa_id)))
self.vsa_api.update_vsa_status(context, vsa_id, VsaState.CREATED)