فهرست منبع

HUE-8530 [organization] Update references to User and Group classes

Romain 6 سال پیش
والد
کامیت
198b78da72

+ 7 - 2
apps/beeswax/src/beeswax/models.py

@@ -23,7 +23,6 @@ import json
 import logging
 
 from django.db import models
-from django.contrib.auth.models import User
 from django.contrib.contenttypes.fields import GenericRelation
 from django.urls import reverse
 from django.utils.translation import ugettext as _, ugettext_lazy as _t
@@ -31,13 +30,19 @@ from django.utils.translation import ugettext as _, ugettext_lazy as _t
 from enum import Enum
 from TCLIService.ttypes import TSessionHandle, THandleIdentifier, TOperationState, TOperationHandle, TOperationType
 
-from desktop.redaction import global_redaction_engine
+from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.models import Document
+from desktop.redaction import global_redaction_engine
 from librdbms.server import dbms as librdbms_dbms
 
 from beeswax.design import HQLdesign
 
+if ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as User
+else:
+  from django.contrib.auth.models import User
+
 
 LOG = logging.getLogger(__name__)
 

+ 8 - 2
apps/jobsub/src/jobsub/models.py

@@ -21,13 +21,19 @@ import logging
 from django.db import models
 from django.core import urlresolvers
 from django.contrib.auth.models import User
-from desktop.lib.parameterization import find_parameters, bind_parameters
-
 from django.utils.translation import ugettext_lazy as _
 
+from desktop.conf import ENABLE_ORGANIZATIONS
+from desktop.lib.parameterization import find_parameters, bind_parameters
+
 
 LOG = logging.getLogger(__name__)
 
+if ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as User
+else:
+  from django.contrib.auth.models import User
+
 
 class JobDesign(models.Model):
   """

+ 7 - 5
apps/oozie/src/oozie/models.py

@@ -36,7 +36,6 @@ from django.db import models, transaction
 from django.db.models import Q
 from django.urls import reverse
 from django.core.validators import RegexValidator
-from django.contrib.auth.models import User
 from django.contrib.contenttypes.fields import GenericRelation
 from django.contrib.contenttypes.models import ContentType
 from django.forms.models import inlineformset_factory
@@ -44,13 +43,14 @@ from django.utils.encoding import force_unicode, smart_str
 from django.utils.translation import ugettext as _, ugettext_lazy as _t
 import django.utils.timezone as dtz
 
+from desktop.auth.backend import is_admin
+from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.log.access import access_warn
 from desktop.lib import django_mako
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.lib.json_utils import JSONEncoderForHTML
 from desktop.models import Document
 from hadoop.fs.exceptions import WebHdfsException
-
 from hadoop.fs.hadoopfs import Hdfs
 from liboozie.submittion import Submission
 from liboozie.submittion import create_directories
@@ -59,16 +59,18 @@ from oozie.conf import REMOTE_SAMPLE_DIR
 from oozie.utils import utc_datetime_format
 from oozie.timezones import TIMEZONES
 
-from desktop.auth.backend import is_admin
-
 if sys.version_info[0] > 2:
   from io import StringIO as string_io
 else:
   from cStringIO import StringIO as string_io
 
+if ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as User
+else:
+  from django.contrib.auth.models import User
 
-LOG = logging.getLogger(__name__)
 
+LOG = logging.getLogger(__name__)
 
 PATH_MAX = 512
 name_validator = RegexValidator(regex='^[a-zA-Z_][\-_a-zA-Z0-9]{1,39}$',

+ 8 - 2
apps/pig/src/pig/models.py

@@ -21,15 +21,21 @@ import json
 import posixpath
 
 from django.db import models
-from django.contrib.auth.models import User
 from django.contrib.contenttypes.fields import GenericRelation
 from django.urls import reverse
 from django.utils.translation import ugettext as _, ugettext_lazy as _t
 
+from desktop.auth.backend import is_admin
+from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.models import Document as Doc, SAMPLE_USER_ID
 from hadoop.fs.hadoopfs import Hdfs
-from desktop.auth.backend import is_admin
+
+
+if ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as User
+else:
+  from django.contrib.auth.models import User
 
 
 class Document(models.Model):

+ 7 - 1
apps/search/src/search/models.py

@@ -20,17 +20,23 @@ import json
 import logging
 import re
 
-from django.contrib.auth.models import User
 from django.urls import reverse
 from django.db import models
 from django.utils.html import escape
 from django.utils.translation import ugettext_lazy as _t
 
+from desktop.conf import ENABLE_ORGANIZATIONS
 from libsolr.api import SolrApi
 
 from search.conf import SOLR_URL
 
 
+if ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as User
+else:
+  from django.contrib.auth.models import User
+
+
 LOG = logging.getLogger(__name__)
 
 

+ 4 - 3
apps/useradmin/src/useradmin/forms.py

@@ -28,13 +28,16 @@ from django.utils.translation import get_language, ugettext as _, ugettext_lazy
 
 from desktop import conf as desktop_conf
 from desktop.lib.django_util import get_username_re_rule, get_groupname_re_rule
-from desktop.models import HueUser
 from desktop.settings import LANGUAGES
 
 from useradmin.models import GroupPermission, HuePermission
 from useradmin.models import get_default_user_group
 from useradmin.hue_password_policy import hue_get_password_validators
 
+if desktop_conf.ENABLE_ORGANIZATIONS.get():
+  from useradmin.models import OrganizationUser as HueUser
+else:
+  from desktop.models import HueUser
 
 
 LOG = logging.getLogger(__name__)
@@ -121,8 +124,6 @@ class UserChangeForm(django.contrib.auth.forms.UserChangeForm):
     fields = ["username", "first_name", "last_name", "email", "ensure_home_directory"]
 
   def __init__(self, *args, **kwargs):
-
-
     super(UserChangeForm, self).__init__(*args, **kwargs)
 
     if self.instance.id:

+ 1 - 2
apps/useradmin/src/useradmin/models.py

@@ -149,7 +149,7 @@ class OrganizationUser(AbstractUser):
     email = models.EmailField(_t('email address'), unique=True)
     token = models.CharField(_t('token'), max_length=128, default=None, null=True)
     customer_id = models.CharField(_t('Customer id'), max_length=128, default=None, null=True)
-    organization = models.ForeignKey(Organization, on_delete=models.CASCADE, default=default_organization)
+    organization = models.ForeignKey(Organization, on_delete=models.CASCADE, default=None)
 
     USERNAME_FIELD = 'email'
     REQUIRED_FIELDS = []
@@ -296,7 +296,6 @@ class HuePermission(models.Model):
   description = models.CharField(max_length=255)
 
   groups = models.ManyToManyField(Group, through=GroupPermission)
-  organization_groups = models.ManyToManyField(OrganizationGroup)
 
   def __str__(self):
     return "%s.%s:%s(%d)" % (self.app, self.action, self.description, self.pk)

+ 10 - 11
desktop/core/src/desktop/models.py

@@ -47,7 +47,7 @@ from notebook.conf import SHOW_NOTEBOOKS, get_ordered_interpreters
 from settings import HUE_DESKTOP_VERSION
 
 from desktop import appmanager
-from desktop.conf import get_clusters, CLUSTER_ID, IS_MULTICLUSTER_ONLY, IS_K8S_ONLY, ENABLE_ORGANIZATIONS
+from desktop.auth.backend import is_admin
 from desktop.lib import fsmanager
 from desktop.lib.i18n import force_unicode
 from desktop.lib.exceptions_renderable import PopupException
@@ -105,15 +105,16 @@ def _version_from_properties(f):
 PREFERENCE_IS_WELCOME_TOUR_SEEN = 'is_welcome_tour_seen'
 
 
-class HueUser(User):
-  class Meta(object):
-    proxy = True
+if not ENABLE_ORGANIZATIONS.get():
+  class HueUser(User):
+    class Meta(object):
+      proxy = True
 
-  def __init__(self, *args, **kwargs):
-    self._meta.get_field(
-      'username'
-    ).validators[0] = UnicodeUsernameValidator()
-    super(User, self).__init__(*args, **kwargs)
+    def __init__(self, *args, **kwargs):
+      self._meta.get_field(
+        'username'
+      ).validators[0] = UnicodeUsernameValidator()
+      super(User, self).__init__(*args, **kwargs)
 
 
 class UserPreferences(models.Model):
@@ -123,8 +124,6 @@ class UserPreferences(models.Model):
   value = models.TextField(max_length=4096)
 
 
-
-
 class Settings(models.Model):
   collect_usage = models.BooleanField(db_index=True, default=True)
   tours_and_tutorials = models.BooleanField(db_index=True, default=True)