diff --git a/lib/manage_gitlab_project.py b/lib/manage_gitlab_project.py index b78b0239b8c47c69f924a0e0f727f7964c332428..94d061eda2cffe74fc56f376b523aa061075d26c 100755 --- a/lib/manage_gitlab_project.py +++ b/lib/manage_gitlab_project.py @@ -56,11 +56,13 @@ def findgroup(gname): print >> stderr, "gitlab-mirrors will not automatically create the project namespace." exit(1) -def findproject(gname,pname): +def findproject(gname,pname,user=False): page=1 while len(git.getProjects(page=page)) > 0: for project in git.getProjects(page=page): - if project['namespace']['name'] == gname and project['name'] == pname: + if not user and project['namespace']['name'] == gname and project['name'] == pname: + return project + elif user and project['namespace']['path'] == gname and project['name'] == pname: return project page += 1 else: @@ -76,7 +78,7 @@ def createproject(pname): description=options.desc new_project=git.createProject(pname,description=description,issues_enabled=int(options.issues),wall_enabled=int(options.wall),merge_requests_enabled=int(options.merge),wiki_enabled=int(options.wiki),snippets_enabled=int(options.snippets),public=int(options.public)) if gitlab_user != gitlab_namespace: - new_project=findproject(gitlab_user,pname) + new_project=findproject(gitlab_user,pname,user=True) new_project=git.moveProject(found_group['id'],new_project['id']) if findproject(gitlab_namespace,pname): return findproject(gitlab_namespace,pname)