def _add(self, argv): options = self._config.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f, object_pairs_hook=OrderedDict) elif options.json: item = json.loads(options.json, object_pairs_hook=OrderedDict) else : template_json = json.load(open(os.path.join(Config()._get_templates_path(), self._template))) self._complete_template(argv, template_json) updated = edit_text(json.dumps(template_json, indent=4)) item = json.loads(updated, object_pairs_hook=OrderedDict) res = self.get_collection(argv)._new(item) parameters = {} if options.populate: parameters["populate"] = "true" if options.default: parameters["default"] = "true" if options.test: parameters["test"] = "true" if options.flavor != None: parameters["flavor"] = options.flavor res.create(parameters=parameters) res.show(as_json=options.raw)
def _add(self, argv): options = globals.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f) elif options.json: item = json.loads(options.json) else : template_json = json.load(open(os.path.join(Config()._get_templates_path(), self._template))) # template = "# To abort the request; just exit your editor without saving this file.\n\n" + template self._complete_template(argv, template_json) updated = edit_text(json.dumps(template_json, indent = 4)) # updated = re.sub(r'#.*$', "", updated) item = json.loads(updated) res = self.get_collection(argv)._new(item) parameters = {} if options.populate: parameters["populate"] = "true" if options.default: parameters["default"] = "true" if options.test: parameters["test"] = "true" if options.flavor != None: parameters["flavor"] = options.flavor res.create(parameters = parameters) res.show(as_json = options.raw)
def _update(self, argv): # First, get entity res = self._get_entity(argv) cur_name = res.name # Prune entity fields (all may not be updatable) self._prune_json_update(res) options = globals.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f) elif options.json: item = json.loads(options.json) elif len(argv) > 0: # Edit the entity original = json.dumps(res.get_json(), sort_keys = True, indent = 4) # original = "# To abort the request; just exit your editor without saving this file.\n\n" + original updated = edit_text(original) # updated = re.sub(r'#.*$', "", updated) item = json.loads(updated) # Check if name has changed if item.has_key("name"): new_name = item["name"] if cur_name != new_name: res.rename(new_name) # Update entity res.set_json(item) res.update(options.force) res.show(as_json = options.raw)
def _add(self, argv): options = self._config.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f, object_pairs_hook=OrderedDict) elif options.json: item = json.loads(options.json, object_pairs_hook=OrderedDict) else: template_json = json.load( open( os.path.join(Config()._get_templates_path(), self._template))) self._complete_template(argv, template_json) updated = edit_text(json.dumps(template_json, indent=4)) item = json.loads(updated, object_pairs_hook=OrderedDict) res = self.get_collection(argv)._new(item) parameters = {} if options.populate: parameters["populate"] = "true" if options.default: parameters["default"] = "true" if options.test: parameters["test"] = "true" if options.flavor != None: parameters["flavor"] = options.flavor res.create(parameters=parameters) res.show(as_json=options.raw)
def _add(self, argv): options = globals.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f) elif options.json: item = json.loads(options.json) else: template_json = json.load( open( os.path.join(Config()._get_templates_path(), self._template))) # template = "# To abort the request; just exit your editor without saving this file.\n\n" + template self._complete_template(argv, template_json) updated = edit_text(json.dumps(template_json, indent=4)) # updated = re.sub(r'#.*$', "", updated) item = json.loads(updated) res = self.get_collection(argv)._new(item) parameters = {} if options.populate: parameters["populate"] = "true" if options.default: parameters["default"] = "true" if options.test: parameters["test"] = "true" if options.flavor != None: parameters["flavor"] = options.flavor res.create(parameters=parameters) res.show(as_json=options.raw)
def add(self, raw=False, populate=False, default=False, test=False, flavor=None): if self._collection == None or self._template == None: raise Exception("Add operation is not available in this container") template_json = json.load( open(os.path.join(Config()._get_templates_path(), self._template))) updated = edit_text(json.dumps(template_json, indent=4)) entity_data = json.loads(updated, object_pairs_hook=OrderedDict) res = self._collection._new(entity_data) parameters = {} if populate: parameters["populate"] = "true" if default: parameters["default"] = "true" if test: parameters["test"] = "true" if flavor != None: parameters["flavor"] = flavor res.create(parameters=parameters) res.show(as_json=raw)
def _update(self, argv): # First, get entity res = self._get_entity(argv) cur_name = res.name # Prune entity fields (all may not be updatable) self._prune_json_update(res) options = globals.options if options.filename: with open(options.filename, 'r') as f: item = json.load(f) elif options.json: item = json.loads(options.json) elif len(argv) > 0: # Edit the entity original = json.dumps(res.get_json(), sort_keys=True, indent=4) # original = "# To abort the request; just exit your editor without saving this file.\n\n" + original updated = edit_text(original) # updated = re.sub(r'#.*$', "", updated) item = json.loads(updated) # Check if name has changed if item.has_key("name"): new_name = item["name"] if cur_name != new_name: res.rename(new_name) # Update entity res.set_json(item) res.update(options.force) res.show(as_json=options.raw)
def update(self, json_data): if self._options.filename: with open(self._options.filename, 'r') as f: return json.load(f, object_pairs_hook=OrderedDict) elif self._options.json: return json.loads(self._options.json, object_pairs_hook=OrderedDict) else: original = json_data.get_real_json(indent = 4) updated = edit_text(original, ignore_not_modified=self._ignore_not_modified) return json.loads(updated, object_pairs_hook=OrderedDict)
def update(self, json_data): if self._options.filename: with open(self._options.filename, 'r') as f: return json.load(f, object_pairs_hook=OrderedDict) elif self._options.json: return json.loads(self._options.json, object_pairs_hook=OrderedDict) else: original = json_data.get_real_json(indent=4) updated = edit_text(original, ignore_not_modified=self._ignore_not_modified) return json.loads(updated, object_pairs_hook=OrderedDict)
def _purchase(self, argv): if len(argv) < 2: raise ArgumentException("A published entity UUID and an organization name must be provided") org = self._client.organizations().get(argv[1]) pub = self.get_collection(argv).get(argv[0], parameters = {"org_name" : argv[1]}) template_json = json.load(open(os.path.join(Config()._get_templates_path(), self._template))) template_json["published"] = pub.uuid template_json["name"] = pub.name updated = edit_text(json.dumps(template_json, indent = 4)) pur_app = self.get_purchased_collection(org)._new(json.loads(updated)) pur_app.create()
def _update_authorized(self, argv): app = self._ctrl._get_entity(argv) if app.published_as is None: raise PythonApiException(self._type_name + " is not published") try: pub = self.store().get(app.published_as, {"org_name": argv[0]}) except PythonApiException: raise ControllerException( "Unable to retrieve entity from store, maybe you forgot to use --org option?" ) updated = edit_text(json.dumps(pub.authorized, indent=4)) pub.update_authorized( json.loads(updated, object_pairs_hook=OrderedDict))
def update(self): cur_name = self._entity.name # Edit the entity original = self._entity.get_real_json(indent = 4) new_data = json.loads(edit_text(original), object_pairs_hook=OrderedDict) # Check if name has changed if "name" in new_data: new_name = new_data["name"] if cur_name != new_name: self._current.rename(new_name) # Update entity self._entity.set_json(new_data) self._entity.update() self._entity.show()
def update(self): cur_name = self._entity.name # Edit the entity original = json.dumps(self._entity.get_json(), sort_keys = True, indent = 4) new_data = json.loads(edit_text(original)) # Check if name has changed if new_data.has_key("name"): new_name = new_data["name"] if cur_name != new_name: self._current.rename(new_name) # Update entity self._entity.set_json(new_data) self._entity.update() self._entity.show()
def update(self): cur_name = self._entity.name # Edit the entity original = self._entity.get_real_json(indent=4) new_data = json.loads(edit_text(original), object_pairs_hook=OrderedDict) # Check if name has changed if "name" in new_data: new_name = new_data["name"] if cur_name != new_name: self._current.rename(new_name) # Update entity self._entity.set_json(new_data) self._entity.update() self._entity.show()
def _purchase(self, argv): if len(argv) < 2: raise ArgumentException( "A published entity UUID and an organization name must be provided" ) org = self._client.organizations().get(argv[1]) pub = self.get_collection(argv).get(argv[0], parameters={"org_name": argv[1]}) template_json = json.load( open(os.path.join(Config()._get_templates_path(), self._template))) template_json["published"] = pub.uuid template_json["name"] = pub.name updated = edit_text(json.dumps(template_json, indent=4)) pur_app = self.get_purchased_collection(org)._new(json.loads(updated)) pur_app.create()
def update(self): cur_name = self._entity.name # Edit the entity original = json.dumps(self._entity.get_json(), sort_keys=True, indent=4) new_data = json.loads(edit_text(original)) # Check if name has changed if new_data.has_key("name"): new_name = new_data["name"] if cur_name != new_name: self._current.rename(new_name) # Update entity self._entity.set_json(new_data) self._entity.update() self._entity.show()
def add(self, raw = False, populate = False, default = False, test = False, flavor = None): if self._collection == None or self._template == None: raise Exception("Add operation is not available in this container") template_json = json.load(open(os.path.join(Config()._get_templates_path(), self._template))) updated = edit_text(json.dumps(template_json, indent = 4)) entity_data = json.loads(updated, object_pairs_hook=OrderedDict) res = self._collection._new(entity_data) parameters = {} if populate: parameters["populate"] = "true" if default: parameters["default"] = "true" if test: parameters["test"] = "true" if flavor != None: parameters["flavor"] = flavor res.create(parameters = parameters) res.show(as_json = raw)