Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion etl/admin.py → domains/etl/admin.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from django.urls import path
from django.contrib import admin
from etl.models import OrchestrationSystem, DataConnection, Task, TaskMapping, TaskMappingPath, TaskRun
from domains.etl.models import OrchestrationSystem, DataConnection, Task, TaskMapping, TaskMappingPath, TaskRun
from hydroserver.admin import VocabularyAdmin


Expand Down
8 changes: 8 additions & 0 deletions domains/etl/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
from django.apps import AppConfig


class EtlConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "domains.etl"
label = "etl"
verbose_name = "Extract Transform Load"
8 changes: 4 additions & 4 deletions etl/services/loader.py → domains/etl/loader.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@
from datetime import datetime
from django.db.models import Min, Value
from django.db.models.functions import Coalesce
from etl.models import Task
from sta.services import ObservationService
from sta.models import Datastream
from sta.schemas.observation import ObservationBulkPostBody
from domains.etl.models import Task
from domains.sta.services import ObservationService
from domains.sta.models import Datastream
from interfaces.api.schemas.observation import ObservationBulkPostBody

observation_service = ObservationService()

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Generated by Django 5.2b1 on 2025-04-15 21:58

import iam.models.utils
import domains.iam.models.utils
import uuid6
from django.db import migrations, models

Expand Down Expand Up @@ -43,7 +43,7 @@ class Migration(migrations.Migration):
options={
"abstract": False,
},
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
migrations.CreateModel(
name="DataSource",
Expand Down Expand Up @@ -76,7 +76,7 @@ class Migration(migrations.Migration):
options={
"abstract": False,
},
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
migrations.CreateModel(
name="OrchestrationSystem",
Expand All @@ -93,6 +93,6 @@ class Migration(migrations.Migration):
("name", models.CharField(max_length=255)),
("orchestration_system_type", models.CharField(max_length=255)),
],
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
]
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Generated by Django 5.2.5 on 2025-11-25 16:26

import django.db.models.deletion
import iam.models.utils
import domains.iam.models.utils
import uuid6
from django.db import migrations, models
from django.utils import timezone
Expand Down Expand Up @@ -282,7 +282,7 @@ class Migration(migrations.Migration):
),
),
],
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
migrations.CreateModel(
name="Task",
Expand Down Expand Up @@ -337,7 +337,7 @@ class Migration(migrations.Migration):
),
),
],
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
migrations.CreateModel(
name="TaskMapping",
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
from typing import Union, Literal, Optional, TYPE_CHECKING
from django.db import models
from django.db.models import Q
from iam.models.utils import PermissionChecker
from domains.iam.models.utils import PermissionChecker

if TYPE_CHECKING:
from django.contrib.auth import get_user_model
from iam.models import Workspace, APIKey
from domains.iam.models import Workspace, APIKey

User = get_user_model()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
from typing import Literal, Optional, Union
from django.db import models
from django.db.models import Q
from iam.models import Workspace
from iam.models.utils import PermissionChecker
from domains.iam.models import Workspace
from domains.iam.models.utils import PermissionChecker

if typing.TYPE_CHECKING:
from django.contrib.auth import get_user_model
from iam.models import Workspace, APIKey
from domains.iam.models import Workspace, APIKey

User = get_user_model()

Expand Down
File renamed without changes.
4 changes: 2 additions & 2 deletions etl/models/task.py → domains/etl/models/task.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@
from django.db.models import Q
from django.db.models.signals import pre_delete
from django.dispatch import receiver
from iam.models.utils import PermissionChecker
from domains.iam.models.utils import PermissionChecker
from django_celery_beat.models import PeriodicTask
from .data_connection import DataConnection
from .orchestration_system import OrchestrationSystem

if TYPE_CHECKING:
from django.contrib.auth import get_user_model
from iam.models import Workspace, APIKey
from domains.iam.models import Workspace, APIKey

User = get_user_model()

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@
from django.http import HttpResponse
from django.contrib.auth import get_user_model
from django.db.models import QuerySet
from iam.models import APIKey
from etl.models import DataConnection
from etl.schemas import (
from domains.iam.models import APIKey
from domains.etl.models import DataConnection
from interfaces.api.schemas import (
DataConnectionSummaryResponse,
DataConnectionDetailResponse,
DataConnectionPostBody,
DataConnectionPatchBody,
)
from etl.schemas.data_connection import (
from interfaces.api.schemas.data_connection import (
DataConnectionFields,
DataConnectionOrderByFields,
)
from api.service import ServiceUtils
from interfaces.api.service import ServiceUtils

User = get_user_model()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@
from django.http import HttpResponse
from django.contrib.auth import get_user_model
from django.db.models import QuerySet
from iam.models import APIKey
from etl.models import OrchestrationSystem
from etl.schemas import (
from domains.iam.models import APIKey
from domains.etl.models import OrchestrationSystem
from interfaces.api.schemas import (
OrchestrationSystemSummaryResponse,
OrchestrationSystemDetailResponse,
OrchestrationSystemPostBody,
OrchestrationSystemPatchBody,
)
from etl.schemas.orchestration_system import (
from interfaces.api.schemas.orchestration_system import (
OrchestrationSystemFields,
OrchestrationSystemOrderByFields,
)
from api.service import ServiceUtils
from interfaces.api.service import ServiceUtils

User = get_user_model()

Expand Down
8 changes: 4 additions & 4 deletions etl/services/run.py → domains/etl/services/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
from ninja.errors import HttpError
from django.http import HttpResponse
from django.contrib.auth import get_user_model
from iam.models import APIKey
from etl.models import TaskRun
from etl.schemas import TaskRunFields, TaskRunPostBody, TaskRunPatchBody, TaskRunOrderByFields
from api.service import ServiceUtils
from domains.iam.models import APIKey
from domains.etl.models import TaskRun
from interfaces.api.schemas import TaskRunFields, TaskRunPostBody, TaskRunPatchBody, TaskRunOrderByFields
from interfaces.api.service import ServiceUtils
from .task import TaskService

User = get_user_model()
Expand Down
10 changes: 5 additions & 5 deletions etl/services/task.py → domains/etl/services/task.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
from django.utils import timezone
from django.conf import settings
from django_celery_beat.models import PeriodicTask, CrontabSchedule, IntervalSchedule
from iam.models import APIKey
from etl.models import Task, TaskMapping, TaskMappingPath, TaskRun
from etl.schemas import TaskFields, TaskPostBody, TaskPatchBody, TaskOrderByFields
from etl.tasks import run_etl_task
from api.service import ServiceUtils
from domains.iam.models import APIKey
from domains.etl.models import Task, TaskMapping, TaskMappingPath, TaskRun
from interfaces.api.schemas import TaskFields, TaskPostBody, TaskPatchBody, TaskOrderByFields
from domains.etl.tasks import run_etl_task
from interfaces.api.service import ServiceUtils
from .data_connection import DataConnectionService
from .orchestration_system import OrchestrationSystemService

Expand Down
4 changes: 2 additions & 2 deletions etl/tasks.py → domains/etl/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
from django.utils import timezone
from django.db.utils import IntegrityError
from django.core.management import call_command
from etl.models import Task, TaskRun
from etl.services.loader import HydroServerInternalLoader
from domains.etl.models import Task, TaskRun
from .loader import HydroServerInternalLoader
from hydroserverpy.etl.factories import extractor_factory, transformer_factory
from hydroserverpy.etl.etl_configuration import ExtractorConfig, TransformerConfig, SourceTargetMapping, MappingPath

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion iam/admin.py → domains/iam/admin.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django.contrib import admin, messages
from django.utils.html import format_html
from django.urls import path
from iam.models import (
from domains.iam.models import (
User,
UserType,
Organization,
Expand Down
4 changes: 3 additions & 1 deletion iam/apps.py → domains/iam/apps.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,6 @@

class IamConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "iam"
name = "domains.iam"
label = "iam"
verbose_name = "Identity and Access Management"
File renamed without changes.
4 changes: 2 additions & 2 deletions iam/auth/adapters.py → domains/iam/auth/adapters.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from django.http import HttpRequest
from django.conf import settings
from allauth.account.adapter import DefaultAccountAdapter
from iam.schemas import AccountPatchBody
from iam.services import AccountService
from interfaces.auth.schemas import AccountPatchBody
from domains.iam.services import AccountService


class AccountAdapter(DefaultAccountAdapter):
Expand Down
4 changes: 2 additions & 2 deletions iam/auth/forms.py → domains/iam/auth/forms.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django import forms
from django.conf import settings
from iam.schemas import AccountPatchBody
from iam.services import AccountService
from interfaces.auth.schemas import AccountPatchBody
from domains.iam.services import AccountService


class UserSignupForm(forms.Form):
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from allauth.socialaccount.providers.base import ProviderAccount
from allauth.socialaccount.providers.oauth2.provider import OAuth2Provider
from iam.auth.providers.hydroshare.views import HydroShareOAuth2Adapter
from domains.iam.auth.providers.hydroshare.views import HydroShareOAuth2Adapter


class HydroShareAccount(ProviderAccount):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
OrcidProvider,
extract_from_dict,
)
from iam.auth.providers.orcidsandbox.views import SandboxOrcidOAuth2Adapter
from domains.iam.auth.providers.orcidsandbox.views import SandboxOrcidOAuth2Adapter


class SandboxOrcidProvider(OrcidProvider):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
pk: 1f7ec829-eea8-415e-b6ee-72d31ae43d1a
fields:
name: Data Loader
description: Grants permission to push observations to workspace datastreams and update data sources.
description: Grants permission to push observations to workspace datastreams and update data connections.
workspace_id:
is_user_role: False
is_apikey_role: True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import django.contrib.auth.validators
import django.db.models.deletion
import django.utils.timezone
import iam.models.utils
import domains.iam.models.utils
import uuid6
from django.conf import settings
from django.db import migrations, models
Expand Down Expand Up @@ -68,7 +68,7 @@ class Migration(migrations.Migration):
("name", models.CharField(max_length=255)),
("description", models.TextField(blank=True, null=True)),
],
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
migrations.CreateModel(
name="UserType",
Expand Down Expand Up @@ -392,6 +392,6 @@ class Migration(migrations.Migration):
options={
"unique_together": {("user", "workspace")},
},
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
]
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import django.db.models.deletion
import django.utils.timezone
import iam.models.utils
import domains.iam.models.utils
import uuid6
from django.db import migrations, models

Expand Down Expand Up @@ -88,6 +88,6 @@ class Migration(migrations.Migration):
"verbose_name": "API Key",
"verbose_name_plural": "API Keys",
},
bases=(models.Model, iam.models.utils.PermissionChecker),
bases=(models.Model, domains.iam.models.utils.PermissionChecker),
),
]
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

if typing.TYPE_CHECKING:
from django.contrib.auth import get_user_model
from iam.models import Workspace
from domains.iam.models import Workspace

User = get_user_model()

Expand Down
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion iam/models/role.py → domains/iam/models/role.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ def delete(self, *args, **kwargs):

@staticmethod
def delete_contents(filter_arg: models.Model, filter_suffix: Optional[str]):
from iam.models import Permission, Collaborator, APIKey
from domains.iam.models import Permission, Collaborator, APIKey

role_relation_filter = f"role__{filter_suffix}" if filter_suffix else "role"

Expand Down
2 changes: 1 addition & 1 deletion iam/models/user.py → domains/iam/models/user.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ def delete(self, *args, **kwargs):

@staticmethod
def delete_contents(filter_arg: models.Model, filter_suffix: Optional[str]):
from iam.models import Workspace, Collaborator
from domains.iam.models import Workspace, Collaborator

user_relation_filter = f"user__{filter_suffix}" if filter_suffix else "user"
owner_relation_filter = f"owner__{filter_suffix}" if filter_suffix else "owner"
Expand Down
2 changes: 1 addition & 1 deletion iam/models/utils.py → domains/iam/models/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from .permission import Permission

if typing.TYPE_CHECKING:
from iam.models import Workspace, APIKey
from domains.iam.models import Workspace, APIKey
from django.contrib.auth import get_user_model

User = get_user_model()
Expand Down
4 changes: 2 additions & 2 deletions iam/models/workspace.py → domains/iam/models/workspace.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,8 @@ def delete(self, *args, **kwargs):

@staticmethod
def delete_contents(filter_arg: models.Model, filter_suffix: Optional[str]):
from iam.models import Role, Collaborator, APIKey
from sta.models import (
from domains.iam.models import Role, Collaborator, APIKey
from domains.sta.models import (
Thing,
ObservedProperty,
ProcessingLevel,
Expand Down
File renamed without changes.
6 changes: 3 additions & 3 deletions iam/services/account.py → domains/iam/services/account.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
from ninja.errors import HttpError
from django.http import HttpResponse
from django.contrib.auth import get_user_model
from api.service import ServiceUtils
from iam.models import Organization, UserType, OrganizationType
from iam.schemas import AccountPostBody, AccountPatchBody
from interfaces.api.service import ServiceUtils
from domains.iam.models import Organization, UserType, OrganizationType
from interfaces.auth.schemas import AccountPostBody, AccountPatchBody

User = get_user_model()

Expand Down
Loading