You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2018/10/03 19:00:05 UTC

[airavata-django-portal] 02/02: Order matters here

This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git

commit cddacba9e9c220a264eb1b8a7774dc7796e1e446
Author: Marcus Christie <ma...@iu.edu>
AuthorDate: Wed Oct 3 11:23:13 2018 -0400

    Order matters here
    
    But really we shouldn't create the default project until user replication finishes
---
 django_airavata/apps/workspace/signals.py | 52 +++++++++++++++----------------
 1 file changed, 26 insertions(+), 26 deletions(-)

diff --git a/django_airavata/apps/workspace/signals.py b/django_airavata/apps/workspace/signals.py
index 664b08f..d0c21cb 100644
--- a/django_airavata/apps/workspace/signals.py
+++ b/django_airavata/apps/workspace/signals.py
@@ -16,30 +16,6 @@ log = logging.getLogger(__name__)
 
 
 @receiver(user_logged_in)
-def create_default_project_if_not_exists(sender, request, user, **kwargs):
-    """Create 'Default Project' for new user."""
-    # auth middleware hasn't run yet so authz_token attribute is not available
-    # on request, so need to create the authz_token manually
-    authz_token = get_authz_token(request)
-    with get_airavata_client() as airavata_client:
-        # Just retrieve the first project
-        projects = airavata_client.getUserProjects(
-            authz_token, settings.GATEWAY_ID, request.user.username, 1, 0)
-        if len(projects) == 0:
-            log.info("Creating default project for user {}".format(
-                user.username))
-            default_project = Project()
-            default_project.owner = request.user.username
-            default_project.name = "Default Project"
-            default_project.gatewayId = settings.GATEWAY_ID
-            default_project.description = ("This is the default project for "
-                                           "user {owner}".format(
-                                               owner=default_project.owner))
-            airavata_client.createProject(authz_token, settings.GATEWAY_ID,
-                                          default_project)
-
-
-@receiver(user_logged_in)
 def create_user_profile_for_new_user(sender, request, user, **kwargs):
     """Create basic User Profile for new user."""
     # auth middleware hasn't run yet so authz_token attribute is not available
@@ -52,8 +28,8 @@ def create_user_profile_for_new_user(sender, request, user, **kwargs):
             log.debug("UserProfile doesn't exist for {username}, "
                       "creating...".format(username=user.username))
             new_user_profile = UserProfile()
-            new_user_profile.airavataInternalUserId = (user.username + "@"
-                                                       + settings.GATEWAY_ID)
+            new_user_profile.airavataInternalUserId = (user.username + "@" +
+                                                       settings.GATEWAY_ID)
             new_user_profile.userId = user.username
             new_user_profile.gatewayId = settings.GATEWAY_ID
             new_user_profile.emails = [user.email]
@@ -67,3 +43,27 @@ def create_user_profile_for_new_user(sender, request, user, **kwargs):
             user_profile_client.addUserProfile(authz_token, new_user_profile)
             log.info("Created a new UserProfile for {username}".format(
                 username=user.username))
+
+
+@receiver(user_logged_in)
+def create_default_project_if_not_exists(sender, request, user, **kwargs):
+    """Create 'Default Project' for new user."""
+    # auth middleware hasn't run yet so authz_token attribute is not available
+    # on request, so need to create the authz_token manually
+    authz_token = get_authz_token(request)
+    with get_airavata_client() as airavata_client:
+        # Just retrieve the first project
+        projects = airavata_client.getUserProjects(
+            authz_token, settings.GATEWAY_ID, request.user.username, 1, 0)
+        if len(projects) == 0:
+            log.info("Creating default project for user {}".format(
+                user.username))
+            default_project = Project()
+            default_project.owner = request.user.username
+            default_project.name = "Default Project"
+            default_project.gatewayId = settings.GATEWAY_ID
+            default_project.description = ("This is the default project for "
+                                           "user {owner}".format(
+                                               owner=default_project.owner))
+            airavata_client.createProject(authz_token, settings.GATEWAY_ID,
+                                          default_project)