Browse Source

HUE-8530 [organization] Simplify imports by handling logic in useradmin

Romain 6 years ago
parent
commit
9aa3ffa78b
91 changed files with 168 additions and 625 deletions
  1. 1 6
      apps/about/src/about/tests.py
  2. 1 6
      apps/beeswax/src/beeswax/api.py
  3. 2 7
      apps/beeswax/src/beeswax/management/commands/beeswax_install_examples.py
  4. 1 6
      apps/beeswax/src/beeswax/models.py
  5. 1 6
      apps/beeswax/src/beeswax/test_base.py
  6. 2 6
      apps/beeswax/src/beeswax/tests.py
  7. 2 6
      apps/beeswax/src/beeswax/views.py
  8. 1 7
      apps/filebrowser/src/filebrowser/forms.py
  9. 1 8
      apps/filebrowser/src/filebrowser/views.py
  10. 2 7
      apps/filebrowser/src/filebrowser/views_test.py
  11. 1 8
      apps/hbase/src/hbase/management/commands/hbase_setup.py
  12. 4 9
      apps/hbase/src/hbase/tests.py
  13. 2 8
      apps/impala/src/impala/tests.py
  14. 1 6
      apps/jobbrowser/src/jobbrowser/tests.py
  15. 1 6
      apps/jobsub/src/jobsub/models.py
  16. 1 7
      apps/jobsub/src/jobsub/tests.py
  17. 1 7
      apps/metastore/src/metastore/tests.py
  18. 1 6
      apps/oozie/src/oozie/models.py
  19. 2 6
      apps/oozie/src/oozie/models2_tests.py
  20. 1 7
      apps/oozie/src/oozie/tests.py
  21. 1 6
      apps/pig/src/pig/models.py
  22. 1 8
      apps/pig/src/pig/tests.py
  23. 1 6
      apps/search/src/search/models.py
  24. 1 7
      apps/search/src/search/tests.py
  25. 2 10
      apps/security/src/security/tests.py
  26. 1 6
      apps/sqoop/src/sqoop/tests.py
  27. 1 6
      apps/useradmin/src/useradmin/api.py
  28. 1 6
      apps/useradmin/src/useradmin/forms.py
  29. 1 7
      apps/useradmin/src/useradmin/ldap_access.py
  30. 3 9
      apps/useradmin/src/useradmin/middleware.py
  31. 3 0
      apps/useradmin/src/useradmin/models.py
  32. 1 7
      apps/useradmin/src/useradmin/templates/list_permissions.mako
  33. 6 14
      apps/useradmin/src/useradmin/test_ldap.py
  34. 4 12
      apps/useradmin/src/useradmin/test_ldap_deprecated.py
  35. 2 8
      apps/useradmin/src/useradmin/tests.py
  36. 1 5
      apps/useradmin/src/useradmin/tests_api.py
  37. 1 4
      apps/useradmin/src/useradmin/views.py
  38. 1 7
      desktop/core/src/desktop/api2_tests.py
  39. 2 7
      desktop/core/src/desktop/api_tests.py
  40. 2 7
      desktop/core/src/desktop/auth/backend.py
  41. 3 10
      desktop/core/src/desktop/auth/views.py
  42. 1 7
      desktop/core/src/desktop/auth/views_test.py
  43. 1 7
      desktop/core/src/desktop/configuration/tests.py
  44. 1 7
      desktop/core/src/desktop/converter_tests.py
  45. 1 6
      desktop/core/src/desktop/lib/django_test_util.py
  46. 2 5
      desktop/core/src/desktop/lib/fs/proxyfs.py
  47. 2 6
      desktop/core/src/desktop/lib/fs/proxyfs_test.py
  48. 2 6
      desktop/core/src/desktop/management/commands/convert_documents.py
  49. 2 6
      desktop/core/src/desktop/management/commands/create_user_directories.py
  50. 2 6
      desktop/core/src/desktop/metrics.py
  51. 1 6
      desktop/core/src/desktop/middleware.py
  52. 1 5
      desktop/core/src/desktop/models.py
  53. 2 6
      desktop/core/src/desktop/monkey_patches.py
  54. 3 9
      desktop/core/src/desktop/tests.py
  55. 6 12
      desktop/core/src/desktop/tests_doc2.py
  56. 1 7
      desktop/libs/aws/src/aws/s3/s3fs_test.py
  57. 1 6
      desktop/libs/dashboard/src/dashboard/tests.py
  58. 3 8
      desktop/libs/indexer/src/indexer/indexers/envelope.py
  59. 1 7
      desktop/libs/indexer/src/indexer/indexers/envelope_tests.py
  60. 3 8
      desktop/libs/indexer/src/indexer/indexers/flume.py
  61. 1 6
      desktop/libs/indexer/src/indexer/indexers/flume_tests.py
  62. 1 6
      desktop/libs/indexer/src/indexer/indexers/morphline.py
  63. 1 6
      desktop/libs/indexer/src/indexer/indexers/morphline_tests.py
  64. 3 7
      desktop/libs/indexer/src/indexer/indexers/rdbms.py
  65. 4 9
      desktop/libs/indexer/src/indexer/indexers/sql.py
  66. 1 6
      desktop/libs/indexer/src/indexer/indexers/sql_tests.py
  67. 3 9
      desktop/libs/indexer/src/indexer/rdbms_indexer_tests.py
  68. 3 8
      desktop/libs/indexer/src/indexer/solr_client_tests.py
  69. 3 8
      desktop/libs/indexer/src/indexer/tests.py
  70. 5 8
      desktop/libs/liboauth/src/liboauth/backend.py
  71. 1 6
      desktop/libs/liboauth/src/liboauth/views.py
  72. 1 6
      desktop/libs/liboozie/src/liboozie/submittion2_tests.py
  73. 1 6
      desktop/libs/liboozie/src/liboozie/submittion_tests.py
  74. 3 8
      desktop/libs/liboozie/src/liboozie/tests.py
  75. 2 8
      desktop/libs/libopenid/src/libopenid/backend.py
  76. 3 9
      desktop/libs/libsaml/src/libsaml/backend.py
  77. 1 6
      desktop/libs/libsentry/src/libsentry/test_privilege_checker.py
  78. 1 7
      desktop/libs/libsentry/src/libsentry/tests.py
  79. 1 6
      desktop/libs/libsolr/src/libsolr/tests.py
  80. 1 6
      desktop/libs/libzookeeper/src/libzookeeper/tests.py
  81. 1 6
      desktop/libs/metadata/src/metadata/catalog/navigator_client_tests.py
  82. 1 6
      desktop/libs/metadata/src/metadata/catalog_tests.py
  83. 1 6
      desktop/libs/metadata/src/metadata/optimizer_api_tests.py
  84. 3 8
      desktop/libs/metadata/src/metadata/optimizer_client_tests.py
  85. 4 9
      desktop/libs/notebook/src/notebook/connectors/hiveserver2_tests.py
  86. 1 6
      desktop/libs/notebook/src/notebook/connectors/sql_alchemy_tests.py
  87. 1 7
      desktop/libs/notebook/src/notebook/management/commands/notebook_setup.py
  88. 2 6
      desktop/libs/notebook/src/notebook/models.py
  89. 1 6
      desktop/libs/notebook/src/notebook/tasks.py
  90. 2 6
      desktop/libs/notebook/src/notebook/tests.py
  91. 7 1
      docs/designs/organizations.md

+ 1 - 6
apps/about/src/about/tests.py

@@ -24,14 +24,9 @@ from nose.tools import assert_true, assert_false, assert_equal
 
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.models import Settings
 from oozie.tests import OozieBase
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 class TestAboutBase(object):

+ 1 - 6
apps/beeswax/src/beeswax/api.py

@@ -27,7 +27,6 @@ from django.views.decorators.http import require_POST
 
 from thrift.transport.TTransport import TTransportException
 from desktop.auth.backend import is_admin
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.context_processors import get_app_name
 from desktop.lib.django_util import JsonResponse
 from desktop.lib.exceptions import StructuredThriftTransportException
@@ -50,11 +49,7 @@ from beeswax.views import authorized_get_design, authorized_get_query_history, m
     safe_get_design, save_design, massage_columns_for_json, _get_query_handle_and_state, parse_out_jobs
 from metastore.conf import FORCE_HS2_METADATA
 from metastore.views import _get_db, _get_servername
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 LOG = logging.getLogger(__name__)

+ 2 - 7
apps/beeswax/src/beeswax/management/commands/beeswax_install_examples.py

@@ -26,11 +26,11 @@ from django.core.management.base import BaseCommand
 from django.utils.translation import ugettext as _
 
 from desktop.lib.exceptions_renderable import PopupException
-from desktop.conf import USE_NEW_EDITOR, ENABLE_ORGANIZATIONS
+from desktop.conf import USE_NEW_EDITOR
 from desktop.models import Directory, Document, Document2, Document2Permission
 from hadoop import cluster
 from notebook.models import import_saved_beeswax_query
-from useradmin.models import get_default_user_group, install_sample_user
+from useradmin.models import get_default_user_group, install_sample_user, User
 
 import beeswax.conf
 from beeswax.models import SavedQuery, HQL, IMPALA
@@ -39,11 +39,6 @@ from beeswax.hive_site import has_concurrency_support
 from beeswax.server import dbms
 from beeswax.server.dbms import get_query_server_config, QueryServerException
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/beeswax/src/beeswax/models.py

@@ -30,19 +30,14 @@ 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.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 useradmin.models import User
 
 from beeswax.design import HQLdesign
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/beeswax/src/beeswax/test_base.py

@@ -32,7 +32,6 @@ import time
 from nose.tools import assert_true, assert_false
 from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.paths import get_run_root
 from desktop.lib.python_util import find_unused_port
@@ -41,16 +40,12 @@ from desktop.lib.security_util import get_localhost_name
 from desktop.lib.test_utils import add_to_group, grant_access
 from hadoop import cluster, pseudo_hdfs4
 from hadoop.pseudo_hdfs4 import is_live_cluster, get_db_prefix
+from useradmin.models import User
 
 import beeswax.conf
 from beeswax.server.dbms import get_query_server_config
 from beeswax.server import dbms
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 HIVE_SERVER_TEST_PORT = find_unused_port()
 _INITIALIZED = False

+ 2 - 6
apps/beeswax/src/beeswax/tests.py

@@ -54,7 +54,7 @@ from desktop.conf import \
     AUTH_PASSWORD_SCRIPT as DEFAULT_AUTH_PASSWORD_SCRIPT, \
     LDAP_USERNAME, \
     LDAP_PASSWORD, \
-    USE_NEW_EDITOR, ENABLE_ORGANIZATIONS
+    USE_NEW_EDITOR
 from desktop import redaction
 from desktop.redaction import logfilter
 from desktop.redaction.engine import RedactionPolicy, RedactionRule
@@ -64,6 +64,7 @@ from desktop.lib.test_utils import grant_access, add_to_group
 from desktop.lib.security_util import get_localhost_name
 from desktop.lib.test_export_csvxls import _read_xls_sheet_data
 from hadoop.fs.hadoopfs import Hdfs
+from useradmin.models import User
 
 from hadoop import ssl_client_site
 from hadoop.pseudo_hdfs4 import is_live_cluster
@@ -97,11 +98,6 @@ if sys.version_info[0] > 2:
 else:
   from cStringIO import StringIO as string_io
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 2 - 6
apps/beeswax/src/beeswax/views.py

@@ -34,7 +34,7 @@ from django.utils.translation import ugettext as _
 from django.urls import reverse
 
 from desktop.appmanager import get_apps_dict
-from desktop.conf import ENABLE_DOWNLOAD, REDIRECT_WHITELIST, ENABLE_ORGANIZATIONS
+from desktop.conf import ENABLE_DOWNLOAD, REDIRECT_WHITELIST
 from desktop.context_processors import get_app_name
 
 from desktop.lib.django_util import JsonResponse
@@ -45,6 +45,7 @@ from desktop.models import Document, _get_apps
 from desktop.lib.parameterization import find_variables
 from desktop.views import serve_403_error
 from notebook.models import escape_rows
+from useradmin.models import User
 
 import beeswax.forms
 import beeswax.design
@@ -57,11 +58,6 @@ from beeswax.server.dbms import expand_exception, get_query_server_config, Query
 
 from desktop.auth.backend import is_admin
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 7
apps/filebrowser/src/filebrowser/forms.py

@@ -30,18 +30,12 @@ from django.utils.translation import ugettext_lazy as _
 
 from aws.s3 import S3A_ROOT, normpath as s3_normpath
 from azure.abfs.__init__ import ABFS_ROOT, normpath as abfs_normpath
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib import i18n
 from hadoop.fs import normpath
+from useradmin.models import User, Group, default_organization
 
 from filebrowser.lib import rwx
 
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group, default_organization
-else:
-  from django.contrib.auth.models import User, Group
-
 if sys.version_info[0] > 2:
   from urllib.parse import unquote as urllib_unquote
 else:

+ 1 - 8
apps/filebrowser/src/filebrowser/views.py

@@ -50,7 +50,6 @@ from django.utils.translation import ugettext as _
 from aws.s3.s3fs import S3FileSystemException, S3ListAllBucketsException
 from desktop import appmanager
 from desktop.auth.backend import is_admin
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib import i18n
 from desktop.lib.conf import coerce_bool
 from desktop.lib.django_util import render, format_preserving_redirect
@@ -63,11 +62,11 @@ from desktop.lib.paths import SAFE_CHARACTERS_URI, SAFE_CHARACTERS_URI_COMPONENT
 from desktop.lib.tasks.compress_files.compress_utils import compress_files_in_hdfs
 from desktop.lib.tasks.extract_archive.extract_utils import extract_archive_in_hdfs
 from desktop.views import serve_403_error
-
 from hadoop.core_site import get_trash_interval
 from hadoop.fs.hadoopfs import Hdfs
 from hadoop.fs.exceptions import WebHdfsException
 from hadoop.fs.fsutils import do_overwrite_save
+from useradmin.models import User, Group
 
 from filebrowser.conf import ENABLE_EXTRACT_UPLOADED_ARCHIVE, MAX_SNAPPY_DECOMPRESSION_SIZE, SHOW_DOWNLOAD_BUTTON, SHOW_UPLOAD_BUTTON, REDIRECT_DOWNLOAD
 from filebrowser.lib.archives import archive_factory
@@ -77,12 +76,6 @@ from filebrowser.forms import RenameForm, UploadFileForm, UploadArchiveForm, MkD
     RenameFormSet, RmTreeFormSet, ChmodFormSet, ChownFormSet, CopyFormSet, RestoreFormSet,\
     TrashPurgeForm, SetReplicationFactorForm
 
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 if sys.version_info[0] > 2:
   import io
   from io import StringIO as string_io

+ 2 - 7
apps/filebrowser/src/filebrowser/views_test.py

@@ -49,28 +49,23 @@ from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal, assert_raises,\
   assert_greater
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_to_group, add_permission, remove_from_group
 from desktop.lib.view_util import location_to_url
+from desktop.conf import is_oozie_enabled
 from hadoop import pseudo_hdfs4
 from hadoop.conf import UPLOAD_CHUNK_SIZE
+from useradmin.models import User, Group, default_organization
 
 from filebrowser.conf import ENABLE_EXTRACT_UPLOADED_ARCHIVE, MAX_SNAPPY_DECOMPRESSION_SIZE
 from filebrowser.lib.rwx import expand_mode
 from filebrowser.views import snappy_installed
-from desktop.conf import is_oozie_enabled
 
 if sys.version_info[0] > 2:
   from urllib.parse import unquote as urllib_unquote
 else:
   from urllib import unquote as urllib_unquote
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group, default_organization
-else:
-  from django.contrib.auth.models import User, Group
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 8
apps/hbase/src/hbase/management/commands/hbase_setup.py

@@ -23,19 +23,12 @@ from datetime import datetime, timedelta
 from django.core.management.base import BaseCommand
 from django.utils.translation import ugettext as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.paths import get_apps_root
-
-from useradmin.models import install_sample_user
+from useradmin.models import install_sample_user, User
 
 from hbased.ttypes import AlreadyExists
 from hbase.api import HbaseApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 4 - 9
apps/hbase/src/hbase/tests.py

@@ -22,22 +22,17 @@ import shutil
 import tempfile
 
 from nose.tools import assert_true, assert_equal
+from nose.plugins.skip import SkipTest
+from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_to_group
+from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from hbase.api import HbaseApi
 from hbase.conf import HBASE_CONF_DIR
 from hbase.hbase_site import get_server_authentication, get_server_principal, get_conf, reset, _CNF_HBASE_IMPERSONATION_ENABLED, is_impersonation_enabled
-from hadoop.pseudo_hdfs4 import is_live_cluster
-from nose.plugins.skip import SkipTest
-from django.urls import reverse
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
 
 
 def test_security_plain():

+ 2 - 8
apps/impala/src/impala/tests.py

@@ -27,13 +27,10 @@ from mock import patch, Mock
 from django.urls import reverse
 
 import desktop.conf as desktop_conf
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.lib.test_utils import add_to_group
 from desktop.models import Document
-from hadoop.pseudo_hdfs4 import get_db_prefix, is_live_cluster
-
 from beeswax import data_export
 from beeswax.design import hql_query
 from beeswax.data_export import download
@@ -41,15 +38,12 @@ from beeswax.models import SavedQuery, QueryHistory
 from beeswax.server import dbms
 from beeswax.test_base import get_query_server_config, wait_for_query_to_finish, fetch_query_result_data
 from beeswax.tests import _make_query
+from hadoop.pseudo_hdfs4 import get_db_prefix, is_live_cluster
+from useradmin.models import User
 
 from impala import conf
 from impala.dbms import ImpalaDbms
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/jobbrowser/src/jobbrowser/tests.py

@@ -28,7 +28,6 @@ from django.urls import reverse
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_false, assert_equal, assert_raises
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_to_group
 from desktop.models import Document
@@ -39,6 +38,7 @@ from hadoop.yarn import resource_manager_api, mapreduce_api, history_server_api,
 from hadoop.yarn.spark_history_server_api import SparkHistoryServerApi
 from liboozie.oozie_api_tests import OozieServerProvider
 from oozie.models import Workflow
+from useradmin.models import User
 
 from jobbrowser import views
 from jobbrowser.api import get_api
@@ -48,11 +48,6 @@ from jobbrowser.conf import SHARE_JOBS
 from jobbrowser.models import can_view_job, can_modify_job, LinkJobLogs
 from jobbrowser.yarn_models import SparkJob
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 _INITIALIZED = False

+ 1 - 6
apps/jobsub/src/jobsub/models.py

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

+ 1 - 7
apps/jobsub/src/jobsub/tests.py

@@ -25,18 +25,12 @@ from nose.tools import assert_true, assert_false, assert_equal, assert_raises
 from django.urls import reverse
 from nose.plugins.skip import SkipTest
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_to_group
 from desktop.models import Document
-
 from liboozie.oozie_api_tests import OozieServerProvider
 from oozie.models import Workflow, Node, Start, Kill, End, Link
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 7
apps/metastore/src/metastore/tests.py

@@ -30,12 +30,11 @@ from nose.tools import assert_true, assert_equal, assert_false
 from django.utils.encoding import smart_str
 from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client, assert_equal_mod_whitespace
 from desktop.lib.test_utils import add_permission, grant_access
 from hadoop.pseudo_hdfs4 import is_live_cluster
 from metastore import parser
-from useradmin.models import HuePermission, GroupPermission
+from useradmin.models import HuePermission, GroupPermission, User, Group
 
 from beeswax.conf import LIST_PARTITIONS_LIMIT
 from beeswax.views import collapse_whitespace
@@ -44,11 +43,6 @@ from beeswax.models import QueryHistory
 from beeswax.server import dbms
 from beeswax.test_base import BeeswaxSampleProvider
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/oozie/src/oozie/models.py

@@ -44,7 +44,6 @@ 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
@@ -54,6 +53,7 @@ from hadoop.fs.exceptions import WebHdfsException
 from hadoop.fs.hadoopfs import Hdfs
 from liboozie.submittion import Submission
 from liboozie.submittion import create_directories
+from useradmin.models import User
 
 from oozie.conf import REMOTE_SAMPLE_DIR
 from oozie.utils import utc_datetime_format
@@ -64,11 +64,6 @@ if sys.version_info[0] > 2:
 else:
   from cStringIO import StringIO as string_io
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 2 - 6
apps/oozie/src/oozie/models2_tests.py

@@ -28,12 +28,13 @@ from django.db.models import Q
 from nose.plugins.attrib import attr
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal, assert_raises
 
-from desktop.conf import USE_DEFAULT_CONFIGURATION, USE_NEW_EDITOR, ENABLE_ORGANIZATIONS
+from desktop.conf import USE_DEFAULT_CONFIGURATION, USE_NEW_EDITOR
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_permission, add_to_group, grant_access, remove_from_group
 from desktop.models import DefaultConfiguration, Document, Document2
 from notebook.models import make_notebook, make_notebook2
 from notebook.api import _save_notebook
+from useradmin.models import User
 
 from oozie.conf import ENABLE_V2
 from oozie.importlib.workflows import generate_v2_graph_nodes
@@ -41,11 +42,6 @@ from oozie.models2 import Node, Workflow, WorkflowConfiguration, find_dollar_var
     _create_graph_adjaceny_list, _get_hierarchy_from_adj_list, WorkflowBuilder, WorkflowDepthReached
 from oozie.tests import OozieMockBase, save_temp_workflow, MockOozieApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 7
apps/oozie/src/oozie/tests.py

@@ -41,8 +41,7 @@ from django.urls import reverse
 
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_permission, add_to_group, reformat_json, reformat_xml
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.models import Document, Document2
+from desktop.models import Document, Document2, User
 import desktop.views as views
 
 from hadoop import cluster as originalCluster
@@ -68,11 +67,6 @@ if sys.version_info[0] > 2:
 else:
   from cStringIO import StringIO as string_io
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/pig/src/pig/models.py

@@ -26,15 +26,10 @@ 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
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 class Document(models.Model):

+ 1 - 8
apps/pig/src/pig/tests.py

@@ -25,25 +25,18 @@ from django.urls import reverse
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_equal, assert_false
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
-from desktop.models import SAMPLE_USER_ID
+from desktop.models import SAMPLE_USER_ID, User
 from hadoop import pseudo_hdfs4
 from hadoop.pseudo_hdfs4 import is_live_cluster
 from liboozie.oozie_api_tests import OozieServerProvider
 from liboozie.conf import SECURITY_ENABLED
-
 from oozie.tests import OozieBase
 
 from pig.models import create_or_update_script, PigScript
 from pig.api import OozieApi, get
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class TestPigBase(object):
   SCRIPT_ATTRS = {

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

@@ -25,16 +25,11 @@ 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 useradmin.models import User
 
 from search.conf import SOLR_URL
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

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

@@ -23,21 +23,15 @@ from django.urls import reverse
 
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.lib.rest import resource
-from desktop.models import Document2
+from desktop.models import Document2, User
 
 from dashboard.facet_builder import _round_number_range
 from dashboard.models import Collection2
 from dashboard.controller import DashboardController
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 QUERY = {'qs': [{'q': ''}], 'fqs': [], 'start': 0}
 

+ 2 - 10
apps/security/src/security/tests.py

@@ -17,23 +17,15 @@
 # limitations under the License.
 
 from builtins import object
+from django.urls import reverse
 from nose.tools import assert_true, assert_equal, assert_false
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
-
-from django.urls import reverse
-
-from useradmin.models import HuePermission, GroupPermission
+from useradmin.models import HuePermission, GroupPermission, User, Group
 
 from security.api.hive import _to_sentry_privilege
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 class TestSecurity(object):
 

+ 1 - 6
apps/sqoop/src/sqoop/tests.py

@@ -21,19 +21,14 @@ from nose.tools import assert_true, assert_equal
 from nose.plugins.skip import SkipTest
 from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
+from useradmin.models import User
 
 from sqoop.client.link import Link
 from sqoop.client.job import Job
 from sqoop.test_base import SqoopServerProvider
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
apps/useradmin/src/useradmin/api.py

@@ -17,15 +17,10 @@
 
 import logging
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.decorators import check_superuser_permission
 from desktop.lib.django_util import JsonResponse
 from desktop.lib.i18n import smart_unicode
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
+from useradmin.models import User, Group
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 6
apps/useradmin/src/useradmin/forms.py

@@ -31,12 +31,7 @@ from desktop.lib.django_util import get_username_re_rule, get_groupname_re_rule
 from desktop.settings import LANGUAGES
 
 from useradmin.hue_password_policy import hue_get_password_validators
-from useradmin.models import GroupPermission, HuePermission, get_default_user_group
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group, default_organization, Organization
-else:
-  from django.contrib.auth.models import User, Group
+from useradmin.models import GroupPermission, HuePermission, get_default_user_group, User, Group, default_organization, Organization
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 7
apps/useradmin/src/useradmin/ldap_access.py

@@ -26,17 +26,11 @@ import logging
 import re
 
 import desktop.conf
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.python_util import CaseInsensitiveDict
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 LOG = logging.getLogger(__name__)
-
 CACHED_LDAP_CONN = None
 
 

+ 3 - 9
apps/useradmin/src/useradmin/middleware.py

@@ -30,17 +30,11 @@ from django.db.models import Q
 from django.utils.translation import ugettext as _
 
 from desktop.auth.views import dt_logout
-from desktop.conf import AUTH, LDAP, SESSION, ENABLE_ORGANIZATIONS
-
-from useradmin.models import UserProfile, get_profile
-from useradmin.views import import_ldap_users
+from desktop.conf import AUTH, LDAP, SESSION
 
 from useradmin import ldap_access
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import UserProfile, get_profile, User
+from useradmin.views import import_ldap_users
 
 
 LOG = logging.getLogger(__name__)

+ 3 - 0
apps/useradmin/src/useradmin/models.py

@@ -62,6 +62,9 @@ if ENABLE_ORGANIZATIONS.get():
   from useradmin.models2 import OrganizationUser as User, OrganizationGroup as Group, Organization, default_organization
 else:
   from django.contrib.auth.models import User, Group
+  class Organization(): pass
+  def default_organization(): pass
+  def get_organization(): pass
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 7
apps/useradmin/src/useradmin/templates/list_permissions.mako

@@ -16,16 +16,10 @@
 <%!
 from django.utils.translation import ugettext as _
 
-from useradmin.models import group_permissions
-
 from desktop.auth.backend import is_admin
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.views import commonheader, commonfooter
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import Group
-else:
-  from django.contrib.auth.models import Group
+from useradmin.models import group_permissions, Group
 %>
 
 <%namespace name="actionbar" file="actionbar.mako" />

+ 6 - 14
apps/useradmin/src/useradmin/test_ldap.py

@@ -19,33 +19,25 @@
 from __future__ import absolute_import
 import ldap
 
+from django.conf import settings
+from django.urls import reverse
 from nose.plugins.attrib import attr
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_equal, assert_false
 
 import desktop.conf
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.test_utils import grant_access
 from desktop.lib.django_test_util import make_logged_in_client
-from django.conf import settings
-from django.urls import reverse
-
-from useradmin.models import LdapGroup, UserProfile
-from useradmin.models import get_profile
-
 from hadoop import pseudo_hdfs4
 from hadoop.pseudo_hdfs4 import is_live_cluster
-from useradmin.views import sync_ldap_users, sync_ldap_groups, import_ldap_users, import_ldap_groups, \
-                  add_ldap_users, add_ldap_groups, sync_ldap_users_groups
 
 from useradmin import ldap_access
+from useradmin.models import LdapGroup, UserProfile
+from useradmin.models import get_profile, User, Group
+from useradmin.views import sync_ldap_users, sync_ldap_groups, import_ldap_users, import_ldap_groups, \
+    add_ldap_users, add_ldap_groups, sync_ldap_users_groups
 from useradmin.tests import BaseUserAdminTests, LdapTestConnection, reset_all_groups, reset_all_users
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 def get_multi_ldap_config():
   return {'multi_ldap_conf': {

+ 4 - 12
apps/useradmin/src/useradmin/test_ldap_deprecated.py

@@ -19,32 +19,24 @@
 from __future__ import absolute_import
 import ldap
 
+from django.conf import settings
+from django.urls import reverse
 from nose.plugins.attrib import attr
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_equal, assert_false
 
 import desktop.conf
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.test_utils import grant_access
 from desktop.lib.django_test_util import make_logged_in_client
-from django.conf import settings
-from django.urls import reverse
-
-from useradmin.models import LdapGroup, UserProfile, get_profile
-
 from hadoop import pseudo_hdfs4
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import LdapGroup, UserProfile, get_profile, User, Group
 from useradmin.views import sync_ldap_users, sync_ldap_groups, import_ldap_users, import_ldap_groups, \
-                  add_ldap_users, add_ldap_groups, sync_ldap_users_groups
+    add_ldap_users, add_ldap_groups, sync_ldap_users_groups
 
 from useradmin import ldap_access
 from useradmin.tests import BaseUserAdminTests, LdapTestConnection, reset_all_groups, reset_all_users
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 class TestUserAdminLdapDeprecated(BaseUserAdminTests):
   def test_useradmin_ldap_user_group_membership_sync(self):

+ 2 - 8
apps/useradmin/src/useradmin/tests.py

@@ -40,7 +40,7 @@ import desktop.conf
 
 from desktop import appmanager
 from desktop.auth.backend import is_admin
-from desktop.conf import APP_BLACKLIST, ENABLE_ORGANIZATIONS
+from desktop.conf import APP_BLACKLIST
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.views import home
@@ -51,15 +51,9 @@ import useradmin.conf
 import useradmin.ldap_access
 from useradmin.forms import UserChangeForm
 from useradmin.middleware import ConcurrentUserSessionMiddleware
-from useradmin.models import HuePermission, GroupPermission, UserProfile
-from useradmin.models import get_profile, get_default_user_group
+from useradmin.models import HuePermission, GroupPermission, UserProfile, get_profile, get_default_user_group, User, Group
 from useradmin.hue_password_policy import reset_password_policy
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 def reset_all_users():
   """Reset to a clean state by deleting all users"""

+ 1 - 5
apps/useradmin/src/useradmin/tests_api.py

@@ -21,13 +21,9 @@ import json
 
 from nose.tools import assert_equal, assert_false, assert_true
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
+from useradmin.models import User, Group
 
 
 class TestUseradminApi(object):

+ 1 - 4
apps/useradmin/src/useradmin/views.py

@@ -52,17 +52,14 @@ from useradmin.forms import SyncLdapUsersGroupsForm, AddLdapGroupsForm, AddLdapU
   PermissionsEditForm, GroupEditForm, SuperUserChangeForm, validate_username, validate_first_name, \
   validate_last_name, PasswordChangeForm
 from useradmin.ldap_access import LdapBindException, LdapSearchException
-from useradmin.models import HuePermission, UserProfile, LdapGroup
-from useradmin.models import get_profile, get_default_user_group
+from useradmin.models import HuePermission, UserProfile, LdapGroup, get_profile, get_default_user_group, User, Group
 
 if sys.version_info[0] > 2:
   unicode = str
 
 if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
   from useradmin.forms import OrganizationUserChangeForm as UserChangeForm, OrganizationSuperUserChangeForm as SuperUserChangeForm
 else:
-  from django.contrib.auth.models import User, Group
   from useradmin.forms import UserChangeForm, SuperUserChangeForm
 
 

+ 1 - 7
desktop/core/src/desktop/api2_tests.py

@@ -22,15 +22,9 @@ import re
 
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal, assert_raises
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
-from desktop.models import Document2
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.models import Document2, User
 
 
 class TestApi2(object):

+ 2 - 7
desktop/core/src/desktop/api_tests.py

@@ -23,18 +23,13 @@ from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal
 from nose.plugins.skip import SkipTest
 
 from desktop.api import massaged_documents_for_json, _get_docs
-from desktop.conf import USE_NEW_EDITOR, ENABLE_ORGANIZATIONS
+from desktop.conf import USE_NEW_EDITOR
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.models import DocumentTag , Document
+from useradmin.models import get_default_user_group, User
 
 from pig.models import PigScript
-from useradmin.models import get_default_user_group
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
 
 
 class TestDocModelTags(object):

+ 2 - 7
desktop/core/src/desktop/auth/backend.py

@@ -48,16 +48,11 @@ from mozilla_django_oidc.auth import OIDCAuthenticationBackend, default_username
 from mozilla_django_oidc.utils import absolutify, import_from_settings
 
 from desktop import metrics
-from desktop.conf import ENABLE_ORGANIZATIONS, AUTH, LDAP, OIDC
+from desktop.conf import AUTH, LDAP, OIDC, ENABLE_ORGANIZATIONS
 from desktop.settings import LOAD_BALANCER_COOKIE
 
 from useradmin import ldap_access
-from useradmin.models import get_profile, get_default_user_group, UserProfile
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Organization
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import get_profile, get_default_user_group, UserProfile, User, Organization
 
 
 LOG = logging.getLogger(__name__)

+ 3 - 10
desktop/core/src/desktop/auth/views.py

@@ -38,31 +38,24 @@ from django.utils.translation import ugettext as _
 
 from hadoop.fs.exceptions import WebHdfsException
 from notebook.connectors.base import get_api
-from useradmin.models import get_profile, UserProfile
+from useradmin.models import get_profile, UserProfile, User, Group
 from useradmin.views import ensure_home_directory, require_change_password
 
 from desktop.auth import forms as auth_forms
 from desktop.auth.backend import OIDCBackend
 from desktop.auth.forms import ImpersonationAuthenticationForm, OrganizationUserCreationForm, OrganizationAuthenticationForm
 from desktop.conf import OAUTH, ENABLE_ORGANIZATIONS
-from desktop.lib.django_util import render
-from desktop.lib.django_util import login_notrequired
-from desktop.lib.django_util import JsonResponse
+from desktop.lib.django_util import render, login_notrequired, JsonResponse
 from desktop.log.access import access_log, access_warn, last_access_map
 from desktop.settings import LOAD_BALANCER_COOKIE
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
-
 if sys.version_info[0] > 2:
   import urllib.request, urllib.error
   from urllib.parse import urlencode as urllib_urlencode
 else:
   from urllib import urlencode as urllib_urlencode
 
+
 LOG = logging.getLogger(__name__)
 
 

+ 1 - 7
desktop/core/src/desktop/auth/views_test.py

@@ -26,21 +26,15 @@ from django.test.client import Client
 from hadoop.test_base import PseudoHdfsTestBase
 from hadoop import pseudo_hdfs4
 from useradmin import ldap_access
-from useradmin.models import get_default_user_group
+from useradmin.models import get_default_user_group, User, Group
 from useradmin.tests import LdapTestConnection
 from useradmin.views import import_ldap_groups
 
 from desktop import conf, middleware
 from desktop.auth import backend
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 def get_mocked_config():
   return {'mocked_ldap': {

+ 1 - 7
desktop/core/src/desktop/configuration/tests.py

@@ -21,17 +21,11 @@ import json
 
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal, assert_raises
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.models import DefaultConfiguration
 
-from useradmin.models import get_default_user_group
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import get_default_user_group, User
 
 
 class TestDefaultConfiguration(object):

+ 1 - 7
desktop/core/src/desktop/converter_tests.py

@@ -28,19 +28,13 @@ from librdbms.design import SQLdesign
 from oozie.models import Link, Workflow
 from oozie.tests import add_node
 from pig.models import create_or_update_script
-from useradmin.models import get_default_user_group
+from useradmin.models import get_default_user_group, User
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.converters import DocumentConverter
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.models import Directory, Document, Document2, DocumentPermission, DocumentTag
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class TestDocumentConverter(object):
 

+ 1 - 6
desktop/core/src/desktop/lib/django_test_util.py

@@ -25,12 +25,7 @@ import json
 import django.test.client
 import nose.tools
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group, default_organization
-else:
-  from django.contrib.auth.models import User, Group
+from useradmin.models import User, Group, default_organization
 
 
 class Client(django.test.client.Client):

+ 2 - 5
desktop/core/src/desktop/lib/fs/proxyfs.py

@@ -24,14 +24,11 @@ import sys
 
 from urlparse import urlparse
 
+from useradmin.models import User
+
 from desktop.auth.backend import is_admin
 from desktop.conf import DEFAULT_USER, ENABLE_ORGANIZATIONS
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 if sys.version_info[0] > 2:
   from urllib.parse import urlparse as lib_urlparse
 else:

+ 2 - 6
desktop/core/src/desktop/lib/fs/proxyfs_test.py

@@ -22,17 +22,13 @@ from nose.plugins.attrib import attr
 from nose.tools import assert_raises, assert_false, eq_
 from nose import SkipTest
 
+from useradmin.models import User
+
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.fs import ProxyFS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_permission, remove_from_group
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 def test_fs_selection():
   make_logged_in_client(username='test', groupname='default', recreate=True, is_superuser=False)

+ 2 - 6
desktop/core/src/desktop/management/commands/convert_documents.py

@@ -23,13 +23,9 @@ import time
 from django.core.management.base import BaseCommand
 from django.db import transaction
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.converters import DocumentConverter
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.converters import DocumentConverter
 
 
 class Command(BaseCommand):

+ 2 - 6
desktop/core/src/desktop/management/commands/create_user_directories.py

@@ -21,13 +21,9 @@ import logging
 from django.core.management.base import CommandError, BaseCommand
 from django.utils.translation import ugettext_lazy as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.models import Document2
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.models import Document2
 
 
 LOG = logging.getLogger(__name__)

+ 2 - 6
desktop/core/src/desktop/metrics.py

@@ -24,13 +24,9 @@ import logging
 import multiprocessing
 import threading
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.metrics import global_registry
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.metrics import global_registry
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 6
desktop/core/src/desktop/middleware.py

@@ -45,11 +45,11 @@ from django.utils.translation import ugettext as _
 from django.utils.http import urlquote, is_safe_url
 
 from hadoop import cluster
+from useradmin.models import User
 
 import desktop.views
 import desktop.conf
 from desktop.auth.backend import is_admin
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.context_processors import get_app_name
 from desktop.lib import apputil, i18n, fsmanager
 from desktop.lib.django_util import JsonResponse, render, render_json
@@ -60,11 +60,6 @@ from desktop.log.access import access_log, log_page_hit, access_warn
 from desktop import appmanager
 from desktop import metrics
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 5
desktop/core/src/desktop/models.py

@@ -43,6 +43,7 @@ from django.utils.translation import ugettext as _, ugettext_lazy as _t
 from dashboard.conf import get_engines, HAS_REPORT_ENABLED
 from kafka.conf import has_kafka
 from notebook.conf import SHOW_NOTEBOOKS, get_ordered_interpreters
+from useradmin.models import User, Group, get_organization
 
 from desktop import appmanager
 from desktop.auth.backend import is_admin
@@ -62,11 +63,6 @@ if sys.version_info[0] > 2:
 else:
   from urllib import quote as urllib_quote
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User, Group
-else:
-  from django.contrib.auth.models import User, Group
-
 
 LOG = logging.getLogger(__name__)
 

+ 2 - 6
desktop/core/src/desktop/monkey_patches.py

@@ -19,13 +19,9 @@ import re
 
 from django.core.validators import RegexValidator
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.django_util import get_username_re_rule
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.django_util import get_username_re_rule
 
 
 def monkey_patch_username_validator():

+ 3 - 9
desktop/core/src/desktop/tests.py

@@ -46,10 +46,11 @@ from nose.plugins.attrib import attr
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal, assert_raises, nottest
 
+from dashboard.conf import HAS_SQL_ENABLED
+from desktop.settings import DATABASES
 from beeswax.conf import HIVE_SERVER_HOST
 from pig.models import PigScript
-from useradmin.models import GroupPermission
-from desktop.settings import DATABASES
+from useradmin.models import GroupPermission, User
 
 import desktop
 import desktop.conf
@@ -59,7 +60,6 @@ import desktop.views as views
 
 from desktop.auth.backend import rewrite_user
 from desktop.appmanager import DESKTOP_APPS
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.conf import validate_path
 from desktop.lib.django_util import TruncatingModel
@@ -73,18 +73,12 @@ from desktop.models import Directory, Document, Document2, get_data_link, _versi
 from desktop.redaction import logfilter
 from desktop.redaction.engine import RedactionPolicy, RedactionRule
 from desktop.views import check_config, home, generate_configspec, load_confs, collect_validation_messages
-from dashboard.conf import HAS_SQL_ENABLED
 
 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 User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 6 - 12
desktop/core/src/desktop/tests_doc2.py

@@ -26,23 +26,17 @@ from nose.tools import assert_equal, assert_false, assert_true, assert_not_equal
 from django.core import management
 from django.db.utils import OperationalError
 
-from desktop.conf import ENABLE_ORGANIZATIONS
+from beeswax.models import SavedQuery
+from beeswax.design import hql_query
+from notebook.models import import_saved_beeswax_query
+from oozie.models2 import Workflow
+from useradmin.models import get_default_user_group, User
+
 from desktop.converters import DocumentConverter
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.fs import ProxyFS
 from desktop.lib.test_utils import grant_access
 from desktop.models import Directory, Document2, Document
-from notebook.models import import_saved_beeswax_query
-
-from beeswax.models import SavedQuery
-from beeswax.design import hql_query
-from useradmin.models import get_default_user_group
-from oozie.models2 import Workflow
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
 
 
 class MockFs(object):

+ 1 - 7
desktop/libs/aws/src/aws/s3/s3fs_test.py

@@ -22,21 +22,15 @@ import string
 
 from nose.tools import assert_equal, assert_false, assert_true, assert_raises, eq_
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
-from desktop.lib.test_utils import grant_access, add_to_group
 from desktop.lib.test_utils import grant_access, add_to_group, add_permission, remove_from_group
+from useradmin.models import User
 
 from aws.s3 import join, parse_uri
 from aws.s3.s3fs import S3FileSystem, S3FileSystemException
 from aws.s3.s3test_utils import S3TestBase, generate_id
 from aws.s3.upload import DEFAULT_WRITE_SIZE
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class S3FSTest(S3TestBase):
 

+ 1 - 6
desktop/libs/dashboard/src/dashboard/tests.py

@@ -23,21 +23,16 @@ from django.urls import reverse
 
 from nose.tools import assert_true, assert_false, assert_equal, assert_not_equal
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
 from desktop.lib.rest import resource
 from desktop.models import Document2
+from useradmin.models import User
 
 from dashboard.facet_builder import _round_number_range
 from dashboard.models import Collection2, augment_response
 from dashboard.controller import DashboardController
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 QUERY = {'qs': [{'q': ''}], 'fqs': [], 'start': 0}
 

+ 3 - 8
desktop/libs/indexer/src/indexer/indexers/envelope.py

@@ -21,18 +21,13 @@ import os
 from django.core.urlresolvers import reverse
 from django.utils.translation import ugettext as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.exceptions_renderable import PopupException
 from hadoop.fs.hadoopfs import Hdfs
-from notebook.models import make_notebook
-
 from indexer.conf import CONFIG_JARS_LIBS_PATH, config_morphline_path
 from libzookeeper.conf import zkensemble
+from notebook.models import make_notebook
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.exceptions_renderable import PopupException
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 7
desktop/libs/indexer/src/indexer/indexers/envelope_tests.py

@@ -21,14 +21,8 @@ from builtins import object
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_true
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-
 from indexer.indexers.envelope import EnvelopeIndexer
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import User
 
 
 class TestEnvelope(object):

+ 3 - 8
desktop/libs/indexer/src/indexer/indexers/flume.py

@@ -21,17 +21,12 @@ import os
 from django.core.urlresolvers import reverse
 from django.utils.translation import ugettext as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.exceptions_renderable import PopupException
 from libzookeeper.conf import zkensemble
-from metadata.manager_client import ManagerApi
-
 from indexer.conf import config_morphline_path
+from metadata.manager_client import ManagerApi
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.exceptions_renderable import PopupException
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 6
desktop/libs/indexer/src/indexer/indexers/flume_tests.py

@@ -19,15 +19,10 @@
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_true
 
-from desktop.conf import ENABLE_ORGANIZATIONS
+from useradmin.models import User
 
 from indexer.indexers.flume import FlumeIndexer
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 def test_generate_from_directory_to_solr_index():
   raise SkipTest

+ 1 - 6
desktop/libs/indexer/src/indexer/indexers/morphline.py

@@ -24,10 +24,10 @@ from django.urls import reverse
 from django.utils.translation import ugettext as _
 from mako.lookup import TemplateLookup
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.models import Document2
 from notebook.connectors.base import get_api
 from notebook.models import Notebook, make_notebook
+from useradmin.models import User
 
 from indexer.conf import CONFIG_INDEXING_TEMPLATES_PATH, CONFIG_INDEXER_LIBS_PATH
 from indexer.fields import get_field_type
@@ -35,11 +35,6 @@ from indexer.file_format import get_file_format_instance, get_file_format_class
 from indexer.indexers.morphline_operations import get_checked_args
 from indexer.solr_client import SolrClient
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/indexer/src/indexer/indexers/morphline_tests.py

@@ -28,10 +28,10 @@ from nose.tools import assert_equal, assert_true
 from nose.plugins.attrib import attr
 from nose.plugins.skip import SkipTest
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_to_group
 from hadoop.pseudo_hdfs4 import is_live_cluster, shared_cluster
+from useradmin.models import User
 
 from indexer.conf import ENABLE_SCALABLE_INDEXER
 from indexer.controller import CollectionManagerController
@@ -47,11 +47,6 @@ if sys.version_info[0] > 2:
 else:
   from StringIO import StringIO as string_io
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 3 - 7
desktop/libs/indexer/src/indexer/indexers/rdbms.py

@@ -22,20 +22,16 @@ import uuid
 from django.urls import reverse
 from django.utils.translation import ugettext as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.django_util import JsonResponse
-from desktop.lib.i18n import smart_str
 from librdbms.conf import DATABASES, get_database_password, get_server_choices, get_connector_name
 from librdbms.jdbc import Jdbc
 from librdbms.server import dbms as rdbms
 from notebook.conf import get_ordered_interpreters
 from notebook.connectors.base import get_api
 from notebook.models import make_notebook
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.django_util import JsonResponse
+from desktop.lib.i18n import smart_str
 
 
 LOG = logging.getLogger(__name__)

+ 4 - 9
desktop/libs/indexer/src/indexer/indexers/sql.py

@@ -25,24 +25,19 @@ import uuid
 from django.urls import reverse
 from django.utils.translation import ugettext as _
 
-from desktop.conf import ENABLE_ORGANIZATIONS
+from azure.abfs.__init__ import abfspath
+from notebook.models import make_notebook
+from useradmin.models import User
+
 from desktop.lib import django_mako
 from desktop.lib.exceptions_renderable import PopupException
 
-from notebook.models import make_notebook
-from azure.abfs.__init__ import abfspath
-
 if sys.version_info[0] > 2:
   from urllib.parse import urlparse, unquote as urllib_unquote
 else:
   from urllib import unquote as urllib_unquote
   from urlparse import urlparse
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/indexer/src/indexer/indexers/sql_tests.py

@@ -22,16 +22,11 @@ import json
 from mock import patch, Mock, MagicMock
 from nose.tools import assert_equal, assert_true
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
+from useradmin.models import User
 
 from indexer.indexers.sql import SQLIndexer
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class MockRequest(object):
   def __init__(self, fs=None, user=None):

+ 3 - 9
desktop/libs/indexer/src/indexer/rdbms_indexer_tests.py

@@ -22,19 +22,13 @@ import logging
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_false, assert_not_equal, assert_true
 
-from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.django_test_util import make_logged_in_client
-
 from indexer.conf import ENABLE_SQOOP
 from indexer.indexers.rdbms import _get_api
 from librdbms.server import dbms as rdbms
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
+from desktop.auth.backend import rewrite_user
+from desktop.lib.django_test_util import make_logged_in_client
 
 LOG = logging.getLogger(__name__)
 

+ 3 - 8
desktop/libs/indexer/src/indexer/solr_client_tests.py

@@ -20,16 +20,11 @@ from nose.tools import assert_equal, assert_true, assert_false
 
 from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.django_test_util import make_logged_in_client
-from desktop.lib.test_utils import add_to_group, grant_access
-
 from indexer.solr_client import SolrClient
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.django_test_util import make_logged_in_client
+from desktop.lib.test_utils import add_to_group, grant_access
 
 
 class TestSolrClient(object):

+ 3 - 8
desktop/libs/indexer/src/indexer/tests.py

@@ -23,20 +23,15 @@ from nose.tools import assert_equal, assert_true, assert_false
 
 from django.urls import reverse
 
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.django_test_util import make_logged_in_client
-from desktop.lib.test_utils import add_to_group, grant_access
 from hadoop.pseudo_hdfs4 import is_live_cluster, get_db_prefix
 from libsolr import conf as libsolr_conf
 from libzookeeper import conf as libzookeeper_conf
-
 from indexer.conf import get_solr_ensemble
 from indexer.controller import CollectionManagerController
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.lib.django_test_util import make_logged_in_client
+from desktop.lib.test_utils import add_to_group, grant_access
 
 
 def test_get_ensemble():

+ 5 - 8
desktop/libs/liboauth/src/liboauth/backend.py

@@ -29,17 +29,12 @@ import sys
 from django.utils.translation import ugettext as _
 
 from desktop.auth.backend import force_username_case, DesktopBackendBase
-from desktop.conf import AUTH, ENABLE_ORGANIZATIONS
-from useradmin.models import get_profile, get_default_user_group, UserProfile
+
+from useradmin.models import get_profile, get_default_user_group, UserProfile, User
 
 import liboauth.conf
 import liboauth.metrics
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 try:
   import oauth2 as oauth
 except:
@@ -51,8 +46,10 @@ if sys.version_info[0] > 2:
 else:
   from urllib import urlencode as lib_urlencode
 
+
 LOG = logging.getLogger(__name__)
 
+
 class OAuthBackend(DesktopBackendBase):
 
   @liboauth.metrics.oauth_authentication_time
@@ -152,7 +149,7 @@ class OAuthBackend(DesktopBackendBase):
             consumer_secret=liboauth.conf.CONSUMER_SECRET_LINKEDIN.get()
             access_token_uri=liboauth.conf.ACCESS_TOKEN_URL_LINKEDIN.get()
             authentication_token_uri=liboauth.conf.AUTHORIZE_URL_LINKEDIN.get()
-        
+
         params = lib_urlencode({
            'code':code,
            'redirect_uri':redirect_uri,

+ 1 - 6
desktop/libs/liboauth/src/liboauth/views.py

@@ -34,11 +34,11 @@ from django.contrib.sessions.models import Session
 from django.http import HttpResponseRedirect
 from django.utils.translation import ugettext as _
 from hadoop.fs.exceptions import WebHdfsException
+from useradmin.models import User
 from useradmin.views import ensure_home_directory
 
 from desktop.auth.backend import AllowFirstUserDjangoBackend
 from desktop.auth.forms import UserCreationForm, AuthenticationForm
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_util import render
 from desktop.lib.django_util import login_notrequired
 from desktop.log.access import access_warn, last_access_map
@@ -46,11 +46,6 @@ from desktop.log.access import access_warn, last_access_map
 import liboauth.conf
 from liboauth.backend import OAuthBackend
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 @login_notrequired
 def show_login_page(request, login_errors=False):

+ 1 - 6
desktop/libs/liboozie/src/liboozie/submittion2_tests.py

@@ -27,10 +27,10 @@ import beeswax
 from hadoop import cluster, pseudo_hdfs4
 from hadoop.conf import HDFS_CLUSTERS, MR_CLUSTERS, YARN_CLUSTERS
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.test_utils import clear_sys_caches
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.exceptions_renderable import PopupException
+from useradmin.models import User
 from useradmin.views import ensure_home_directory
 from oozie.models2 import Node
 from oozie.tests import OozieMockBase
@@ -40,11 +40,6 @@ from liboozie.credentials import Credentials
 from liboozie.credentials_tests import TestCredentials
 from liboozie.submission2 import Submission
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/liboozie/src/liboozie/submittion_tests.py

@@ -24,19 +24,14 @@ from nose.tools import assert_equal, assert_true, assert_not_equal
 from hadoop import cluster, pseudo_hdfs4
 from hadoop.conf import HDFS_CLUSTERS, MR_CLUSTERS, YARN_CLUSTERS
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.test_utils import clear_sys_caches
 from desktop.lib.django_test_util import make_logged_in_client
 from oozie.tests import OozieMockBase
+from useradmin.models import User
 from useradmin.views import ensure_home_directory
 
 from liboozie.submittion import Submission
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 3 - 8
desktop/libs/liboozie/src/liboozie/tests.py

@@ -19,19 +19,14 @@ import logging
 
 from nose.tools import assert_equal
 
-import desktop.conf as desktop_conf
-from desktop.conf import ENABLE_ORGANIZATIONS
-from desktop.lib.test_utils import reformat_xml
-
 from liboozie import conf
 from liboozie.types import WorkflowAction, Coordinator
 from liboozie.utils import config_gen
 from oozie.tests import MockOozieApi
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+import desktop.conf as desktop_conf
+from desktop.lib.test_utils import reformat_xml
 
 
 LOG = logging.getLogger(__name__)

+ 2 - 8
desktop/libs/libopenid/src/libopenid/backend.py

@@ -25,16 +25,10 @@ import sys
 from django.contrib.auth import logout as auth_logout
 from django_openid_auth.auth import OpenIDBackend as _OpenIDBackend
 
-from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
-from useradmin.models import get_profile, get_default_user_group, UserProfile
-
 from libopenid import metrics
+from useradmin.models import get_profile, get_default_user_group, UserProfile, User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.auth.backend import rewrite_user
 
 
 LOG = logging.getLogger(__name__)

+ 3 - 9
desktop/libs/libsaml/src/libsaml/backend.py

@@ -25,19 +25,13 @@ import logging
 from django.contrib.auth import logout as auth_logout
 from djangosaml2.backends import Saml2Backend as _Saml2Backend
 from djangosaml2.views import logout as saml_logout
-
-from desktop.auth.backend import force_username_case, rewrite_user
-from desktop.conf import AUTH, ENABLE_ORGANIZATIONS
-
 from libsaml import conf
 from libsaml import metrics
 
-from useradmin.models import get_profile, get_default_user_group, UserProfile
+from useradmin.models import get_profile, get_default_user_group, UserProfile, User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from desktop.auth.backend import force_username_case, rewrite_user
+from desktop.conf import AUTH
 
 
 LOG = logging.getLogger(__name__)

+ 1 - 6
desktop/libs/libsentry/src/libsentry/test_privilege_checker.py

@@ -21,17 +21,12 @@ import pickle
 
 from nose.tools import assert_equal, assert_false, assert_true
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
+from useradmin.models import User
 
 from libsentry.privilege_checker import PrivilegeChecker
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class MockSentryApiV1(object):
 

+ 1 - 7
desktop/libs/libsentry/src/libsentry/tests.py

@@ -24,13 +24,12 @@ import tempfile
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_true, assert_false, assert_not_equal, assert_raises
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.exceptions import StructuredThriftTransportException
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.lib.test_utils import add_to_group, grant_access
-
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from libsentry import sentry_site
 from libsentry.api import get_api, clear_api_cache
@@ -40,11 +39,6 @@ from libsentry.client import SentryClient
 from libsentry.sentry_ha import get_next_available_server
 from libsentry.sentry_site import get_sentry_server
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 def create_mock_client_fn(client_class, username, server, component=None):
   class MockSentryClient(object):

+ 1 - 6
desktop/libs/libsolr/src/libsolr/tests.py

@@ -25,18 +25,13 @@ from nose.tools import assert_equal, assert_true
 from django.urls import reverse
 
 from dashboard.models import Collection2
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from libsolr.api import SolrApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/libzookeeper/src/libzookeeper/tests.py

@@ -23,19 +23,14 @@ import tempfile
 from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_true, assert_false
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from libzookeeper.models import ZookeeperClient
 from libzookeeper.conf import zkensemble, ENSEMBLE
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class UnitTests(object):
 

+ 1 - 6
desktop/libs/metadata/src/metadata/catalog/navigator_client_tests.py

@@ -23,21 +23,16 @@ from nose.tools import assert_equal
 from django.core.cache import cache
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
 from libsentry.privilege_checker import SENTRY_PRIVILEGE_CACHE_KEY, PrivilegeChecker
 from libsentry.test_privilege_checker import MockSentryApiV2
+from useradmin.models import User
 
 from metadata.conf import NAVIGATOR
 from metadata.metadata_sites import get_navigator_hue_server_name
 from metadata.catalog.navigator_client import NavigatorApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/metadata/src/metadata/catalog_tests.py

@@ -25,10 +25,10 @@ from nose.tools import assert_equal, assert_true
 from django.urls import reverse
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from metadata import conf
 from metadata.conf import has_catalog, NAVIGATOR, get_navigator_auth_password, get_navigator_auth_username
@@ -36,11 +36,6 @@ from metadata.catalog_api import _augment_highlighting
 from metadata.catalog.navigator_client import NavigatorApi
 from metadata.catalog.atlas_client import AtlasApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/metadata/src/metadata/optimizer_api_tests.py

@@ -20,17 +20,12 @@ import logging
 from nose.tools import assert_equal, assert_true, assert_false
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
+from useradmin.models import User
 
 from metadata.optimizer_api import _convert_queries
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 3 - 8
desktop/libs/metadata/src/metadata/optimizer_client_tests.py

@@ -22,18 +22,13 @@ from nose.plugins.skip import SkipTest
 from nose.tools import assert_equal, assert_true, assert_false
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
-
-from metadata.optimizer_client import OptimizerApi
-from metadata.conf import OPTIMIZER, has_optimizer
 from desktop.models import uuid_default
+from useradmin.models import User
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from metadata.conf import OPTIMIZER, has_optimizer
+from metadata.optimizer_client import OptimizerApi
 
 
 LOG = logging.getLogger(__name__)

+ 4 - 9
desktop/libs/notebook/src/notebook/connectors/hiveserver2_tests.py

@@ -31,24 +31,19 @@ from django.urls import reverse
 from TCLIService.ttypes import TStatusCode, TProtocolVersion, TOperationType
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import has_connectors, ENABLE_ORGANIZATIONS
+from desktop.conf import has_connectors
 from desktop.lib.i18n import smart_str
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
+from beeswax.server import dbms
+from beeswax.test_base import BeeswaxSampleProvider, get_query_server_config, is_hive_on_spark
 from hadoop.pseudo_hdfs4 import is_live_cluster
+from useradmin.models import User
 
 from notebook.api import _save_notebook
 from notebook.connectors.hiveserver2 import HS2Api
 from notebook.models import make_notebook, Notebook
 
-from beeswax.server import dbms
-from beeswax.test_base import BeeswaxSampleProvider, get_query_server_config, is_hive_on_spark
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/notebook/src/notebook/connectors/sql_alchemy_tests.py

@@ -23,17 +23,12 @@ from mock import patch, Mock, MagicMock
 from nose.tools import assert_equal, assert_not_equal, assert_true, assert_false
 
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import add_to_group, grant_access
+from useradmin.models import User
 
 from notebook.connectors.sql_alchemy import SqlAlchemyApi
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 7
desktop/libs/notebook/src/notebook/management/commands/notebook_setup.py

@@ -23,14 +23,8 @@ from django.core import management
 from django.core.management.base import BaseCommand
 from django.db import transaction
 
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.models import Directory, Document, Document2, Document2Permission, SAMPLE_USER_OWNERS
-from useradmin.models import get_default_user_group, install_sample_user
-
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
+from useradmin.models import get_default_user_group, install_sample_user, User
 
 
 LOG = logging.getLogger(__name__)

+ 2 - 6
desktop/libs/notebook/src/notebook/models.py

@@ -35,10 +35,11 @@ from django.db.models.functions import Trunc
 from django.utils.html import escape
 from django.utils.translation import ugettext as _
 
-from desktop.conf import has_connectors, ENABLE_ORGANIZATIONS
+from desktop.conf import has_connectors, TASK_SERVER
 from desktop.lib.i18n import smart_unicode
 from desktop.lib.paths import SAFE_CHARACTERS_URI
 from desktop.models import Document2
+from useradmin.models import User
 
 from notebook.connectors.base import Notebook, get_interpreter
 
@@ -48,11 +49,6 @@ if sys.version_info[0] > 2:
 else:
   from urllib import quote as urllib_quote
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG = logging.getLogger(__name__)
 

+ 1 - 6
desktop/libs/notebook/src/notebook/tasks.py

@@ -37,12 +37,12 @@ from django.http import FileResponse, HttpRequest
 
 from beeswax import data_export
 from desktop.auth.backend import rewrite_user
-from desktop.conf import ENABLE_ORGANIZATIONS
 from desktop.celery import app
 from desktop.conf import TASK_SERVER
 from desktop.lib import export_csvxls
 from desktop.lib import fsmanager
 from desktop.settings import CACHES_CELERY_KEY, CACHES_CELERY_QUERY_RESULT_KEY
+from useradmin.models import User
 
 from notebook.connectors.base import get_api, QueryExpired, ExecutionWrapper
 from notebook.sql_utils import get_current_statement
@@ -52,11 +52,6 @@ if sys.version_info[0] > 2:
 else:
   from StringIO import StringIO as string_io
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 LOG_TASK = get_task_logger(__name__)
 LOG = logging.getLogger(__name__)

+ 2 - 6
desktop/libs/notebook/src/notebook/tests.py

@@ -28,11 +28,12 @@ from django.urls import reverse
 from azure.conf import is_adls_enabled
 
 from desktop import appmanager
-from desktop.conf import APP_BLACKLIST, ENABLE_ORGANIZATIONS
+from desktop.conf import APP_BLACKLIST
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access, add_permission
 from desktop.models import Directory, Document, Document2
 from hadoop import cluster as originalCluster
+from useradmin.models import User
 
 import notebook.connectors.hiveserver2
 
@@ -42,11 +43,6 @@ from notebook.decorators import api_error_handler
 from notebook.conf import get_ordered_interpreters, INTERPRETERS_SHOWN_ON_WHEEL, INTERPRETERS
 from notebook.models import Analytics
 
-if ENABLE_ORGANIZATIONS.get():
-  from useradmin.models import User
-else:
-  from django.contrib.auth.models import User
-
 
 class TestNotebookApi(object):
 

+ 7 - 1
docs/designs/organizations.md

@@ -7,7 +7,13 @@ Goal: support of more than one tenant per server instance [HUE-8530](https://iss
 Add an `organization` model in `useradmin/models2.py` and have `User`, `Group` classes link to it.
 Keep all the models in models2.py and do not change the current `useradmin/models.py` logic so that it is backward compatible.
 
-e.g. how to import the organization models:
+e.g. How to import the organization models:
+
+```
+from useradmin.models import User, Group
+```
+
+Which under the cover does the switch between regular users and organizational users:
 
 ```
 if ENABLE_ORGANIZATIONS.get():