def _update_instance_as_admin(self, **kwargs): if self.context.get("admin_configuration"): kwargs["configuration"] = self.context["admin_configuration"] manager = self.admin_clients("trove").instances instance = manager.get(self.context["admin_instance"]) check_ready(instance) self.admin_clients("trove").instances.edit(instance, **kwargs)
def _resize(instance, client, status, size): instance = client.instances.get(instance) change_status(instance, client, status) client.instances.resize_volume(instance['id'], size) utils.wait_for(instance, update_resource=client.instances.get, ready_statuse=["RESIZE"]) check_ready(instance)
def _resize(instance, client, status, flavor_id): instance = client.instances.get(instance) change_status(instance, client, status) client.instances.resize_instance(instance, flavor_id) utils.wait_for(instance, update_resource=client.instances.get, ready_statuse=["RESIZE"]) check_ready(instance)
def _restart(instance, client, status): instance = client.instances.get(instance) change_status( instance, status, client.configurations if status == "RESTART_REQUIRED" else None) instance.restart utils.wait_for(instance, ready_statuse=["REBOOT"], update_resource=client.instances.get) check_ready(instance)
def _update(instance, conf, client, status, **kwargs): c_manager = client.configurations i_manager = client.instances instance = i_manager.get(instance) c_manager.update(conf, **kwargs) if status == "ACTIVE": check_ready(instance) elif status == "RESTART_REQUIRED": utils.wait_for_status(instance, update_resource=i_manager.get, ready_statuse=[status]) i_manager.restart(instance) check_ready(instance) print_dict(c_manager.get(conf).to_dict())
def _create(kw, manager): instance = manager.create(**kw) try: check_ready(instance) finally: try: instance.delete() except Exception: instance.force_delete() utils.wait_for_status(instance, ready_statuses=['deleted'], update_resource=utils.get_from_manager(), timeout=600, check_deletion=True, check_interval=10) sleep(20)
def _create(instance, client, status, **kwargs): b_manager, i_manager = client.backups, client.instances change_status(instance, client, status) backup = b_manager.create(instance=instance['id'], **kwargs) check_ready(instance['id'], i_manager) b_manager.delete(backup)
def _create_database_as_admin(self, body): client = self.clients("trove") instance = client.instances.get(self.context['admin_instance']) check_ready(instance, client.instances) client.databases.create(instance, body)
def _update_instance_as_admin(self): manager = self.admin_clients("trove").instances instance = manager.get(self.context["admin_instance"]) check_ready(instance) self.admin_clients("trove").instances.edit(instance, remove_configuration=True)
def _show_instance_as_admin(self): manager = self.admin_clients("trove").instances instance = manager.get(self.context["admin_instance"]) check_ready(instance)
def _show_instance(self): manager = self.clients("trove").instances instance = manager.get(self.context["user_instance"]) check_ready(instance)