summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@yahoo.com>2010-09-28 13:21:24 -0700
committerVishvananda Ishaya <vishvananda@yahoo.com>2010-09-28 13:21:24 -0700
commit5ebefd0d5de7a7c753297bcde8ae842c4f92e33e (patch)
treed4f860ff65d3abc5965028de94b94133b53090f8 /nova
parent7d6687e1e2811542c288e997359a278023a4c37f (diff)
downloadnova-5ebefd0d5de7a7c753297bcde8ae842c4f92e33e.tar.gz
nova-5ebefd0d5de7a7c753297bcde8ae842c4f92e33e.tar.xz
nova-5ebefd0d5de7a7c753297bcde8ae842c4f92e33e.zip
add disabled column to services and check for it in scheduler
Diffstat (limited to 'nova')
-rw-r--r--nova/db/sqlalchemy/api.py4
-rw-r--r--nova/db/sqlalchemy/models.py1
2 files changed, 4 insertions, 1 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 2b0dd6ea6..2ecf21685 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -61,6 +61,7 @@ def service_get_all_by_topic(context, topic):
session = get_session()
return session.query(models.Service
).filter_by(deleted=False
+ ).filter_by(disabled=False
).filter_by(topic=topic
).all()
@@ -70,6 +71,7 @@ def _service_get_all_topic_subquery(_context, session, topic, subq, label):
return session.query(models.Service, func.coalesce(sort_value, 0)
).filter_by(topic=topic
).filter_by(deleted=False
+ ).filter_by(disabled=False
).outerjoin((subq, models.Service.host == subq.c.host)
).order_by(sort_value
).all()
@@ -699,7 +701,7 @@ def auth_create_token(_context, token):
tk[k] = v
tk.save()
return tk
-
+
###################
diff --git a/nova/db/sqlalchemy/models.py b/nova/db/sqlalchemy/models.py
index f6ba7953f..021091b60 100644
--- a/nova/db/sqlalchemy/models.py
+++ b/nova/db/sqlalchemy/models.py
@@ -173,6 +173,7 @@ class Service(BASE, NovaBase):
binary = Column(String(255))
topic = Column(String(255))
report_count = Column(Integer, nullable=False, default=0)
+ disabled = Column(Boolean, default=False)
@classmethod
def find_by_args(cls, host, binary, session=None, deleted=False):