def post(self, *args, **kwargs): name = self.get_argument('name', None) description = self.get_argument('description', None) path = self.get_argument('path', None) # verify scm = self.get_argument('scm', None) team = self.get_argument('team', None) # just for test tags = self.get_argument('tags', None) if 'user' not in kwargs: self.raise401() user = kwargs['user'] tags_list = parse_listed_strs(tags) try: name = name.strip() name = name if name else None repo = Repo(name=name, description=description, path=path, scm=scm, owner=user, team=team, tags=tags_list) repo.save() repo_data = document_to_json(repo, filter_set=_FILTER) self.set_status(201) self.write(repo_data) except Exception as e: reason = e.message self.raise400(reason=reason)