def addUser(request, projectName): """ Add user to current project """ if request.method == "POST": form = UserAddForm(request.POST) if form.is_valid(): # recreate keystone client; keystone session work around api.joinTenant(request.session['username'], request.session['password'], projectName) api.addUser(form.cleaned_data['userName'], form.cleaned_data['roleName'], projectName) return HttpResponseRedirect('/project_space/manage/settings')
def createProject(request): """ Create new project from Projects page """ if request.method == 'POST': form = TenantCreateForm(request.POST) if form.is_valid(): projectName = form.cleaned_data['tenantName'] projectDesc = form.cleaned_data['tenantDesc'] # work around for user to have project creation privileges # for some reason, unable to create a project unless # keystone client is passed a tenant_name arguement; can't create solely as user api.joinTenant('admin', 'admin', 'demo') # create project with current keystone session api.createTenant(projectName, projectDesc) # add user to new project with admin role api.addUser(request.session['username'], 'admin', projectName) print ('Unable to create new Project') return HttpResponseRedirect('/projects')