Files
TermiNexus 53af9884df refactor(msync): msync 整体搬迁至 SDK 并消除对 gvsds 的依赖
- msync 全部实现迁入 gvsdsdk(models/registry/ogm/transaction/auth +
  Django 集成层 middleware/sio/views/serializers/urls/admin/apps/migrations)
- 新增 gvsdsdk/secrets.py(secrets.ini 读取)与 serializer_base.py
  (PascalCase DRF 序列化器基类)
- msync 0001 迁移改用 gvsdsdk.models.UUIDField 并与模型 deep_deconstruct
  完全对齐(消除 makemigrations 漂移),dependencies 置空
- msync apps.py 移除 gvsds.app_config 软依赖,域名仅经环境变量/settings 解析
- 验证:屏蔽 gvsds 包后 50 个 gvsdsdk 子模块独立导入通过
2026-08-10 22:23:52 +08:00

81 lines
2.6 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""GVSDS SDK MSYNC 子包
MSYNC 全部实现位于 gvsdsdk.msync(原生实现,非封装层):
- models: ServiceNode / ServiceToken / OGM / 分布式事务模型
- auth: HMAC-SHA256 签名验证、服务令牌编解码、服务端签发/验证
- registry / ogm / transaction: 服务注册发现 / OGM 管理 / Saga 编排
- client: 微服务通信客户端(REST)
- local_tx: 本地事务步骤处理器
- middleware / views / serializers / urls / sio / admin: Django 集成层
"""
default_app_config = 'gvsdsdk.msync.apps.MsyncConfig'
# 自有实现(无 Django ORM 依赖,子服务器可直接使用)
from gvsdsdk.msync.auth import ( # noqa
SignPayload,
VerifySignature,
GenerateChallenge,
BuildAuthPayload,
SignAuthPayload,
VerifyAuthPayload,
ServiceTokenEncoder,
)
from gvsdsdk.msync.client import ServiceClient, ServiceClientError # noqa
from gvsdsdk.msync.local_tx import LocalTransactionManager, StepHandler, local_tx # noqa
# ORM 依赖的模块延迟导入(仅在主服务器使用)
def __getattr__(name):
_server_exports = {
'ServiceRegistry': 'gvsdsdk.msync.registry',
'RegistryError': 'gvsdsdk.msync.registry',
'OGMManager': 'gvsdsdk.msync.ogm',
'OGMError': 'gvsdsdk.msync.ogm',
'TransactionManager': 'gvsdsdk.msync.transaction',
'TransactionError': 'gvsdsdk.msync.transaction',
'StepExecutionError': 'gvsdsdk.msync.transaction',
'AuthenticateService': 'gvsdsdk.msync.auth',
'RefreshServiceToken': 'gvsdsdk.msync.auth',
'ValidateAccessToken': 'gvsdsdk.msync.auth',
'IssueServiceToken': 'gvsdsdk.msync.auth',
}
if name in _server_exports:
import importlib
mod = importlib.import_module(_server_exports[name])
return getattr(mod, name)
raise AttributeError(f'module {__name__!r} has no attribute {name!r}')
__all__ = [
# auth (自有)
'SignPayload',
'VerifySignature',
'GenerateChallenge',
'BuildAuthPayload',
'SignAuthPayload',
'VerifyAuthPayload',
'ServiceTokenEncoder',
# auth (服务端)
'AuthenticateService',
'RefreshServiceToken',
'ValidateAccessToken',
'IssueServiceToken',
# client (自有)
'ServiceClient',
'ServiceClientError',
# local_tx (自有)
'LocalTransactionManager',
'StepHandler',
'local_tx',
# registry (服务端)
'ServiceRegistry',
'RegistryError',
# ogm (服务端)
'OGMManager',
'OGMError',
# transaction (服务端)
'TransactionManager',
'TransactionError',
'StepExecutionError',
]