| |
@@ -276,10 +276,19 @@
|
| |
"""
|
| |
user = None
|
| |
|
| |
- username = jsondata.get(key, {}).get('name')
|
| |
- fullname = jsondata.get(key, {}).get('fullname')
|
| |
- useremails = jsondata.get(key, {}).get('emails')
|
| |
- default_email = jsondata.get(key, {}).get('default_email')
|
| |
+ username = fullname = useremails = default_email = None
|
| |
+
|
| |
+ data = json.data.get(key, None)
|
| |
+
|
| |
+ if data:
|
| |
+ username = data.get('name')
|
| |
+ fullname = data.get('fullname')
|
| |
+ useremails = data.get('emails')
|
| |
+ default_email = data.get('default_email')
|
| |
+
|
| |
+ if not default_email and useremails:
|
| |
+ default_email = useremails[0]
|
| |
+
|
| |
if not username and not useremails:
|
| |
return
|
| |
|
| |
@@ -325,18 +334,29 @@
|
| |
session, jsondata.get('parent'),
|
| |
gitfolder, forkfolder, docfolder, ticketfolder, requestfolder)
|
| |
|
| |
- pagure.lib.new_project(
|
| |
- session,
|
| |
- user=user.username,
|
| |
- name=name,
|
| |
- description=jsondata.get('description'),
|
| |
- parent_id=parent.id if parent else None,
|
| |
- blacklist=pagure.APP.config.get('BLACKLISTED_PROJECTS', []),
|
| |
- gitfolder=forkfolder if parent else gitfolder,
|
| |
- docfolder=docfolder,
|
| |
- ticketfolder=ticketfolder,
|
| |
- requestfolder=requestfolder,
|
| |
- )
|
| |
+ pagure.lib.fork_project(
|
| |
+ session=session,
|
| |
+ repo=parent,
|
| |
+ gitfolder=pagure.APP.config['GIT_FOLDER'],
|
| |
+ forkfolder=pagure.APP.config['FORK_FOLDER'],
|
| |
+ docfolder=pagure.APP.config['DOCS_FOLDER'],
|
| |
+ ticketfolder=pagure.APP.config['TICKETS_FOLDER'],
|
| |
+ requestfolder=pagure.APP.config['REQUESTS_FOLDER'],
|
| |
+ user=user.username)
|
| |
+
|
| |
+ else:
|
| |
+ pagure.lib.new_project(
|
| |
+ session,
|
| |
+ user=user.username,
|
| |
+ name=name,
|
| |
+ description=jsondata.get('description'),
|
| |
+ parent_id=parent.id if parent else None,
|
| |
+ blacklist=pagure.APP.config.get('BLACKLISTED_PROJECTS', []),
|
| |
+ gitfolder=forkfolder if parent else gitfolder,
|
| |
+ docfolder=docfolder,
|
| |
+ ticketfolder=ticketfolder,
|
| |
+ requestfolder=requestfolder,
|
| |
+ )
|
| |
|
| |
session.commit()
|
| |
project = pagure.lib.get_project(session, name, user=user.username)
|
| |