def prepare(self, memory_mb, databases, users, device_path=None, mount_point=None): from reddwarf.instance.models import DBInstance from reddwarf.instance.models import InstanceServiceStatus from reddwarf.instance.models import ServiceStatuses from reddwarf.guestagent.models import AgentHeartBeat LOG.debug("users... %s" % users) LOG.debug("databases... %s" % databases) instance_name = DBInstance.find_by(id=self.id).name self.create_user(users) self.create_database(databases) def update_db(): status = InstanceServiceStatus.find_by(instance_id=self.id) if instance_name.endswith('GUEST_ERROR'): status.status = ServiceStatuses.FAILED else: status.status = ServiceStatuses.RUNNING status.save() AgentHeartBeat.create(instance_id=self.id) self.event_spawn(1.0, update_db)
def set_server_running(): from reddwarf.instance.models import DBInstance from reddwarf.instance.models import InstanceServiceStatus from reddwarf.instance.models import ServiceStatuses instance = DBInstance.find_by(compute_instance_id=id) LOG.debug("Setting server %s to running" % instance.id) status = InstanceServiceStatus.find_by(instance_id=instance.id) status.status = ServiceStatuses.RUNNING status.save()
def __init__(self, host_info): self.name = host_info.name self.percent_used = host_info.percentUsed self.total_ram = host_info.totalRAM self.used_ram = host_info.usedRAM self.instances = host_info.instances for instance in self.instances: instance['server_id'] = instance['uuid'] del instance['uuid'] try: db_info = DBInstance.find_by( compute_instance_id=instance['server_id']) instance['id'] = db_info.id instance['tenant_id'] = db_info.tenant_id except exception.ReddwarfError as re: LOG.error(re) LOG.error("Compute Instance ID found with no associated RD " "instance: %s" % instance['server_id']) instance['id'] = None
def set_server_running(): instance = DBInstance.find_by(compute_instance_id=id) LOG.debug("Setting server %s to running" % instance.id) status = InstanceServiceStatus.find_by(instance_id=instance.id) status.status = ServiceStatuses.RUNNING status.save()
def _reload_db_info(self): self.db_info = DBInstance.find_by(id=self.db_info.id, deleted=False)