def create_site(site_name, site_path, site_url, hidden, site_real_path): print('Create site {} from db'.format(site_name)) site = dbhandler.create_site(site_name, site_path, site_url, hidden) p2.Site(site_real_path) #create .meta folder in site resources = parse_resources_in_site_folder(site_real_path) nodes = [] for re_path, re in resources.iteritems(): reRelPath = re['relativePath'] if re["type"] == 'R': node = create_repository(re['text'], reRelPath, site) if re['type'] == 'C': node = create_composite(re['text'], reRelPath, site) nodes.append(node) #set parent nodes for nodes build_parent_child_relationship(nodes, site)
def post(self, request): if not request.user.is_superuser: raise PermissionDenied name = self.CONTENT['name'] site_path = os.path.join(get_root_location(), name) if not exists(site_path): os.mkdir(site_path) hidden = self.CONTENT.get('hidden', False) site = dbhandler.create_site(name, "", "", hidden) # #init file system p2.Site(site_path) #save site information in configure file conf.CONF.get('REPOSITORY_SITES')[name] = dict(hidden=hidden) conf.CONF.save() return site