def refresh(self): try: self.raw = self._api.get_blob_properties(self._container, self._name) except CloudError as e: if e.response.status_code == 404: raise ImageNotFoundError(self._name) return self.raw
def refresh(self): try: self.raw = self._api.get(project=self._project, image=self._name).execute() except errors.HttpError as error: if error.resp.status == 404: raise ImageNotFoundError(self._name) else: raise return self.raw
def get_template(self, name_or_id): matches = self.find_templates(name=name_or_id) if not matches: raise ImageNotFoundError( 'Unable to find image {}'.format(name_or_id)) elif len(matches) > 1: raise MultipleImagesError( 'Image name {} returned more than one image ' 'Use the ami-ID or remove duplicates from EC2'.format( name_or_id)) return matches[0]
def get_template(self, name=None, id=None): """ Get a template by name OR id """ if name: matches = self.find_templates(name) if not matches: raise ImageNotFoundError(name) elif len(matches) > 1: raise MultipleImagesError(name) result = matches[0] elif id: try: raw_image = self.api.images.get(id) except os_exceptions.NotFound: raise ImageNotFoundError(id) result = OpenstackImage(system=self, uuid=raw_image.id, raw=raw_image) else: raise AttributeError("Must specify either 'name' or 'id' with get_template") return result
def get_template(self, name, project=None): if not project: project = self._project try: image = self._compute.images().get(project=project, image=name).execute() return GoogleCloudImage(system=self, raw=image, project=project, name=name) except errors.HttpError as error: if error.resp.status == 404: raise ImageNotFoundError("'{}' not found in project '{}'".format(name, project)) else: raise
def get_template(self, name): """ Find template with name 'name'. Raises ImageNotFoundError if no matches found Raises MultipleItemsError if multiple matches found """ matches = self.find_templates(name=name) if not matches: raise ImageNotFoundError('template with name {}'.format(name)) if len(matches) > 1: raise MultipleItemsError('multiple templates with name {}'.format(name)) return matches[0]
def get_template(self, name, container=None): """ Return template with given name Raises MultipleItemsError if more than 1 exist with that name Args: container (str) -- specific container to search in """ templates = self.find_templates(name=name, container=container) if not templates: raise ImageNotFoundError(name) elif len(templates) > 1: raise MultipleImagesError( "Image with name '{}' exists in multiple containers".format( name)) return templates[0]
def refresh(self): """ Get Template from SCVMM Returns: dict of raw template json """ script = 'Get-SCVMTemplate -ID \"{}\" -VMMServer $scvmm_server' try: data = self._get_json(script.format(self._id)) except SCVMMSystem.PowerShellScriptError as error: if "Error ID: 801" in str(error): # Error ID 801 is a "not found" error data = None else: raise if not data: raise ImageNotFoundError(self._id) self.raw = data return self.raw
def refresh(self): try: self.raw = self._api.images.get(self._uuid) except os_exceptions.NotFound: raise ImageNotFoundError(self.name if self.name else self._uuid) return self.raw
def refresh(self): image = self.system.get_template(self.raw.id).raw if not image: raise ImageNotFoundError(self._uuid) self.raw = image return self.raw
def refresh(self): image = self._api.get_image(self._uuid) if not image: raise ImageNotFoundError(self._uuid) self.raw = image return self.raw