Browse Source

chore(control_silo): Move User model to new home in users package (#75597)

Part of consolidating (user) control silo resources to be located with other user related models. Leaves behind a shim for any getsentry references. Also includes a fix for backfill_outboxes to ensure batch.count doesn't become negative which caused tests in test_backfill_outboxes to fail.

Ref(#73856)

---------

Co-authored-by: Mark Story <mark@mark-story.com>
Christinarlong 7 months ago
parent
commit
e892643a80

+ 1 - 1
bin/mock-user

@@ -8,7 +8,7 @@ import argparse
 
 
 def main(username, newsletter_consent_prompt=None):
-    from sentry.models.user import User
+    from sentry.users.models.user import User
 
     user = User.objects.get(username__iexact=username)
 

+ 1 - 1
src/sentry/api/authentication.py

@@ -35,9 +35,9 @@ from sentry.models.orgauthtoken import (
 )
 from sentry.models.projectkey import ProjectKey
 from sentry.models.relay import Relay
-from sentry.models.user import User
 from sentry.relay.utils import get_header_relay_id, get_header_relay_signature
 from sentry.silo.base import SiloLimit, SiloMode
+from sentry.users.models.user import User
 from sentry.users.services.user import RpcUser
 from sentry.users.services.user.service import user_service
 from sentry.utils.linksign import process_signature

+ 1 - 1
src/sentry/api/bases/user.py

@@ -13,8 +13,8 @@ from sentry.auth.system import is_system_auth
 from sentry.models.organization import OrganizationStatus
 from sentry.models.organizationmapping import OrganizationMapping
 from sentry.models.organizationmembermapping import OrganizationMemberMapping
-from sentry.models.user import User
 from sentry.organizations.services.organization import organization_service
+from sentry.users.models.user import User
 from sentry.users.services.user import RpcUser
 from sentry.users.services.user.service import user_service
 

+ 1 - 1
src/sentry/api/endpoints/group_ai_autofix.py

@@ -19,10 +19,10 @@ from sentry.api.serializers import EventSerializer, serialize
 from sentry.autofix.utils import get_autofix_repos_from_project_code_mappings, get_autofix_state
 from sentry.integrations.utils.code_mapping import get_sorted_code_mapping_configs
 from sentry.models.group import Group
-from sentry.models.user import User
 from sentry.seer.signed_seer_api import sign_with_seer_secret
 from sentry.tasks.autofix import check_autofix_status
 from sentry.types.ratelimit import RateLimit, RateLimitCategory
+from sentry.users.models.user import User
 from sentry.users.services.user.service import user_service
 
 logger = logging.getLogger(__name__)

+ 1 - 1
src/sentry/api/endpoints/group_event_details.py

@@ -22,7 +22,6 @@ from sentry.eventstore.models import Event, GroupEvent
 from sentry.issues.grouptype import GroupCategory
 from sentry.models.environment import Environment
 from sentry.models.group import Group
-from sentry.models.user import User
 from sentry.search.events.filter import (
     FilterConvertParams,
     convert_search_filter_to_snuba_query,
@@ -30,6 +29,7 @@ from sentry.search.events.filter import (
 )
 from sentry.snuba.dataset import Dataset
 from sentry.types.ratelimit import RateLimit, RateLimitCategory
+from sentry.users.models.user import User
 from sentry.utils import metrics
 
 

+ 1 - 1
src/sentry/api/endpoints/group_integration_details.py

@@ -17,10 +17,10 @@ from sentry.integrations.services.integration import RpcIntegration, integration
 from sentry.models.activity import Activity
 from sentry.models.group import Group
 from sentry.models.grouplink import GroupLink
-from sentry.models.user import User
 from sentry.shared_integrations.exceptions import IntegrationError, IntegrationFormError
 from sentry.signals import integration_issue_created, integration_issue_linked
 from sentry.types.activity import ActivityType
+from sentry.users.models.user import User
 
 MISSING_FEATURE_MESSAGE = "Your organization does not have access to this feature."
 

+ 1 - 1
src/sentry/api/endpoints/group_integrations.py

@@ -20,7 +20,7 @@ from sentry.integrations.models.external_issue import ExternalIssue
 from sentry.integrations.services.integration import RpcIntegration, integration_service
 from sentry.models.group import Group
 from sentry.models.grouplink import GroupLink
-from sentry.models.user import User
+from sentry.users.models.user import User
 
 
 class IntegrationIssueSerializer(IntegrationSerializer):

+ 1 - 1
src/sentry/api/endpoints/group_similar_issues_embeddings.py

@@ -14,10 +14,10 @@ from sentry.api.bases.group import GroupEndpoint
 from sentry.api.serializers import serialize
 from sentry.grouping.grouping_info import get_grouping_info
 from sentry.models.group import Group
-from sentry.models.user import User
 from sentry.seer.similarity.similar_issues import get_similarity_data_from_seer
 from sentry.seer.similarity.types import SeerSimilarIssueData, SimilarIssuesEmbeddingsRequest
 from sentry.seer.similarity.utils import get_stacktrace_string, killswitch_enabled
+from sentry.users.models.user import User
 from sentry.utils.safe import get_path
 
 logger = logging.getLogger(__name__)

+ 1 - 1
src/sentry/api/endpoints/index.py

@@ -4,7 +4,7 @@ from rest_framework.response import Response
 from sentry.api.api_publish_status import ApiPublishStatus
 from sentry.api.base import Endpoint, control_silo_endpoint
 from sentry.api.serializers import serialize
-from sentry.models.user import User
+from sentry.users.models.user import User
 
 
 @control_silo_endpoint

+ 1 - 1
src/sentry/api/endpoints/integrations/sentry_apps/installation/external_issue/actions.py

@@ -10,7 +10,7 @@ from sentry.api.serializers import serialize
 from sentry.mediators.external_issues.issue_link_creator import IssueLinkCreator
 from sentry.models.group import Group
 from sentry.models.project import Project
-from sentry.models.user import User
+from sentry.users.models.user import User
 from sentry.users.services.user.serial import serialize_rpc_user
 
 

Some files were not shown because too many files changed in this diff