summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Prince <dan.prince@rackspace.com>2011-08-18 20:44:30 +0000
committerTarmac <>2011-08-18 20:44:30 +0000
commite1600746110c9e2e4478d5be5f3f97a068e64c08 (patch)
treedf7aa77c087c55e875eb5129b5e6fe81605744be
parentabf7e2f767e1e535f40550945af466436d0cf541 (diff)
parent6b8c26d230d06c35921e2e0a2d30d9d3d745eff4 (diff)
Remove instances.admin_pass column.
-rw-r--r--nova/compute/manager.py6
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/037_instances_drop_admin_pass.py37
-rw-r--r--nova/db/sqlalchemy/models.py1
-rw-r--r--nova/virt/xenapi/vmops.py3
4 files changed, 40 insertions, 7 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 66458fb36..091b3b6b2 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -392,12 +392,12 @@ class ComputeManager(manager.SchedulerDependentManager):
updates = {}
updates['host'] = self.host
updates['launched_on'] = self.host
- # NOTE(vish): used by virt but not in database
- updates['injected_files'] = kwargs.get('injected_files', [])
- updates['admin_pass'] = kwargs.get('admin_password', None)
instance = self.db.instance_update(context,
instance_id,
updates)
+ instance['injected_files'] = kwargs.get('injected_files', [])
+ instance['admin_pass'] = kwargs.get('admin_password', None)
+
self.db.instance_set_state(context,
instance_id,
power_state.NOSTATE,
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/037_instances_drop_admin_pass.py b/nova/db/sqlalchemy/migrate_repo/versions/037_instances_drop_admin_pass.py
new file mode 100644
index 000000000..b957666c2
--- /dev/null
+++ b/nova/db/sqlalchemy/migrate_repo/versions/037_instances_drop_admin_pass.py
@@ -0,0 +1,37 @@
+# Copyright 2011 OpenStack LLC.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+from sqlalchemy import Column, MetaData, Table, String
+
+meta = MetaData()
+
+admin_pass = Column(
+ 'admin_pass',
+ String(length=255, convert_unicode=False, assert_unicode=None,
+ unicode_error=None, _warn_on_bytestring=False),
+ nullable=True)
+
+
+def upgrade(migrate_engine):
+ meta.bind = migrate_engine
+ instances = Table('instances', meta, autoload=True,
+ autoload_with=migrate_engine)
+ instances.drop_column('admin_pass')
+
+
+def downgrade(migrate_engine):
+ meta.bind = migrate_engine
+ instances = Table('instances', meta, autoload=True,
+ autoload_with=migrate_engine)
+ instances.create_column(admin_pass)
diff --git a/nova/db/sqlalchemy/models.py b/nova/db/sqlalchemy/models.py
index f2a4680b0..a8e9c36db 100644
--- a/nova/db/sqlalchemy/models.py
+++ b/nova/db/sqlalchemy/models.py
@@ -173,7 +173,6 @@ class Instance(BASE, NovaBase):
base_name += "-rescue"
return base_name
- admin_pass = Column(String(255))
user_id = Column(String(255))
project_id = Column(String(255))
diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py
index eb0a846b5..9a6215f88 100644
--- a/nova/virt/xenapi/vmops.py
+++ b/nova/virt/xenapi/vmops.py
@@ -709,9 +709,6 @@ class VMOps(object):
if resp['returncode'] != '0':
LOG.error(_('Failed to update password: %(resp)r') % locals())
return None
- db.instance_update(nova_context.get_admin_context(),
- instance['id'],
- dict(admin_pass=new_pass))
return resp['message']
def inject_file(self, instance, path, contents):