def find_by_id(self, id_):
"""Return ServiceDef object of the given service.
:param str id_: uri of the service definition
"""
_, name, version = id_.rsplit('/', 2)
rel_fname, abs_fname = self.get_fnames(name, version)
if self.ss_dir.isfile(rel_fname):
return ServiceDef.create_from_file(abs_fname)
resp = self.connection.request(method='GET', path=id_)
# Write the yaml file
with open(abs_fname, 'w+') as f:
yaml.safe_dump(resp.json(), f)
return ServiceDef.create_from_file(abs_fname)
评论列表
文章目录