amsdal_cli 0.5.10__py3-none-any.whl → 0.6.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- amsdal_cli/__about__.py +1 -1
- amsdal_cli/commands/build/services/builder.py +6 -0
- amsdal_cli/commands/build/services/mixin.py +27 -0
- amsdal_cli/commands/ci_cd/constants.py +2 -2
- amsdal_cli/commands/cloud/enums.py +3 -3
- amsdal_cli/commands/generate/enums.py +8 -8
- amsdal_cli/commands/generate/sub_commands/generate_frontend_config.py +5 -3
- amsdal_cli/commands/new/templates/.gitignore +1 -0
- amsdal_cli/commands/restore/enums.py +2 -2
- amsdal_cli/commands/serve/command.py +45 -25
- amsdal_cli/commands/serve/services/supervisor.py +28 -14
- amsdal_cli/commands/serve/utils.py +15 -0
- amsdal_cli/commands/worker/sub_commands/run.py +2 -2
- amsdal_cli/utils/cli_config.py +2 -2
- amsdal_cli/utils/vcs/enums.py +2 -2
- {amsdal_cli-0.5.10.dist-info → amsdal_cli-0.6.1.dist-info}/METADATA +2 -2
- {amsdal_cli-0.5.10.dist-info → amsdal_cli-0.6.1.dist-info}/RECORD +20 -20
- {amsdal_cli-0.5.10.dist-info → amsdal_cli-0.6.1.dist-info}/WHEEL +0 -0
- {amsdal_cli-0.5.10.dist-info → amsdal_cli-0.6.1.dist-info}/entry_points.txt +0 -0
- {amsdal_cli-0.5.10.dist-info → amsdal_cli-0.6.1.dist-info}/licenses/LICENSE.txt +0 -0
amsdal_cli/__about__.py
CHANGED
|
@@ -79,6 +79,12 @@ class AppBuilder(BuildMixin):
|
|
|
79
79
|
if not is_silent:
|
|
80
80
|
rprint(rich_success('OK!'))
|
|
81
81
|
|
|
82
|
+
if not is_silent:
|
|
83
|
+
rprint(rich_info('Building app config...'), end=' ')
|
|
84
|
+
self.build_app_config(self.source_path)
|
|
85
|
+
if not is_silent:
|
|
86
|
+
rprint(rich_success('OK!'))
|
|
87
|
+
|
|
82
88
|
def pre_build(self, output: Path) -> None:
|
|
83
89
|
from amsdal.configs.main import settings
|
|
84
90
|
from amsdal_utils.config.manager import AmsdalConfigManager
|
|
@@ -194,6 +194,33 @@ class BuildMixin:
|
|
|
194
194
|
if expected_fixtures_path.exists() and expected_fixtures_path.is_dir():
|
|
195
195
|
shutil.copytree(expected_fixtures_path, target_fixtures_path, dirs_exist_ok=True)
|
|
196
196
|
|
|
197
|
+
@staticmethod
|
|
198
|
+
def build_app_config(cli_app_path: Path, output_path: Path | None = None) -> None:
|
|
199
|
+
"""
|
|
200
|
+
Copies app.py from src/ to the build directory.
|
|
201
|
+
|
|
202
|
+
Args:
|
|
203
|
+
cli_app_path (Path): The path to the CLI application source directory (src/).
|
|
204
|
+
output_path (Path | None): The output directory. If None, uses settings.APP_PATH.
|
|
205
|
+
"""
|
|
206
|
+
app_config_source = cli_app_path / 'app.py'
|
|
207
|
+
|
|
208
|
+
if not app_config_source.exists():
|
|
209
|
+
return
|
|
210
|
+
|
|
211
|
+
if output_path is None:
|
|
212
|
+
from amsdal.configs.main import settings
|
|
213
|
+
|
|
214
|
+
output_path = settings.APP_PATH
|
|
215
|
+
|
|
216
|
+
app_config_dest = output_path / 'app.py'
|
|
217
|
+
|
|
218
|
+
# Remove existing file to ensure fresh copy
|
|
219
|
+
if app_config_dest.exists():
|
|
220
|
+
app_config_dest.unlink()
|
|
221
|
+
|
|
222
|
+
shutil.copy(app_config_source, app_config_dest)
|
|
223
|
+
|
|
197
224
|
@staticmethod
|
|
198
225
|
def _reimport_models() -> None:
|
|
199
226
|
from amsdal_models.classes.class_manager import ClassManager
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
from enum import
|
|
1
|
+
from enum import StrEnum
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
class OutputFormat(
|
|
4
|
+
class OutputFormat(StrEnum):
|
|
5
5
|
"""
|
|
6
6
|
Output format for CLI commands.
|
|
7
7
|
|
|
@@ -16,7 +16,7 @@ class OutputFormat(str, Enum):
|
|
|
16
16
|
wide = 'wide'
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
class DBType(
|
|
19
|
+
class DBType(StrEnum):
|
|
20
20
|
"""
|
|
21
21
|
Enumeration for database types.
|
|
22
22
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from enum import
|
|
1
|
+
from enum import StrEnum
|
|
2
2
|
|
|
3
3
|
MODEL_JSON_FILE = 'model.json'
|
|
4
4
|
MODEL_PY_FILE = 'model.py'
|
|
@@ -6,7 +6,7 @@ FIXTURES_JSON_FILE = 'fixtures.json'
|
|
|
6
6
|
FIXTURES = 'fixtures'
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
class HookName(
|
|
9
|
+
class HookName(StrEnum):
|
|
10
10
|
"""
|
|
11
11
|
Enum representing different hook names used in the application lifecycle.
|
|
12
12
|
|
|
@@ -31,7 +31,7 @@ class HookName(str, Enum):
|
|
|
31
31
|
POST_DELETE = 'post_delete'
|
|
32
32
|
|
|
33
33
|
|
|
34
|
-
class ModifierName(
|
|
34
|
+
class ModifierName(StrEnum):
|
|
35
35
|
"""
|
|
36
36
|
Enum representing different modifier names used in the application.
|
|
37
37
|
|
|
@@ -46,7 +46,7 @@ class ModifierName(str, Enum):
|
|
|
46
46
|
VERSION_NAME = 'version_name'
|
|
47
47
|
|
|
48
48
|
|
|
49
|
-
class AttributeType(
|
|
49
|
+
class AttributeType(StrEnum):
|
|
50
50
|
"""
|
|
51
51
|
Enum representing different attribute types used in the application.
|
|
52
52
|
|
|
@@ -69,7 +69,7 @@ class AttributeType(str, Enum):
|
|
|
69
69
|
DICT = 'dict'
|
|
70
70
|
|
|
71
71
|
|
|
72
|
-
class JsonType(
|
|
72
|
+
class JsonType(StrEnum):
|
|
73
73
|
"""
|
|
74
74
|
Enum representing different JSON types used in the application.
|
|
75
75
|
|
|
@@ -90,7 +90,7 @@ class JsonType(str, Enum):
|
|
|
90
90
|
DICT = 'dictionary'
|
|
91
91
|
|
|
92
92
|
|
|
93
|
-
class OptionName(
|
|
93
|
+
class OptionName(StrEnum):
|
|
94
94
|
"""
|
|
95
95
|
Enum representing different option names used in the application.
|
|
96
96
|
|
|
@@ -107,7 +107,7 @@ class OptionName(str, Enum):
|
|
|
107
107
|
UNIQUE = 'unique'
|
|
108
108
|
|
|
109
109
|
|
|
110
|
-
class TestType(
|
|
110
|
+
class TestType(StrEnum):
|
|
111
111
|
"""
|
|
112
112
|
Enum representing different test types used in the application.
|
|
113
113
|
|
|
@@ -118,7 +118,7 @@ class TestType(str, Enum):
|
|
|
118
118
|
UNIT = 'unit'
|
|
119
119
|
|
|
120
120
|
|
|
121
|
-
class TestDataType(
|
|
121
|
+
class TestDataType(StrEnum):
|
|
122
122
|
"""
|
|
123
123
|
Enum representing different test data types used in the application.
|
|
124
124
|
|
|
@@ -15,7 +15,9 @@ def generate_frontend_config(
|
|
|
15
15
|
"""
|
|
16
16
|
Generates Frontend Config fixture file for the specified model.
|
|
17
17
|
"""
|
|
18
|
-
from amsdal.contrib.frontend_configs.
|
|
18
|
+
from amsdal.contrib.frontend_configs.event_handlers.object_control import (
|
|
19
|
+
_get_default_control as get_default_control,
|
|
20
|
+
)
|
|
19
21
|
from amsdal.manager import AmsdalManager
|
|
20
22
|
from amsdal.manager import AsyncAmsdalManager
|
|
21
23
|
from amsdal_utils.config.manager import AmsdalConfigManager
|
|
@@ -60,12 +62,12 @@ def generate_frontend_config(
|
|
|
60
62
|
current_dir = Path('.').absolute()
|
|
61
63
|
|
|
62
64
|
if frontend_config_file.exists():
|
|
63
|
-
|
|
65
|
+
overwrite = input(
|
|
64
66
|
f'The file "{frontend_config_file.relative_to(current_dir)}" already exists. '
|
|
65
67
|
'Would you like to overwrite it? [y/N]: '
|
|
66
68
|
).strip()
|
|
67
69
|
|
|
68
|
-
if
|
|
70
|
+
if overwrite.lower() != 'y':
|
|
69
71
|
return
|
|
70
72
|
|
|
71
73
|
write_file(
|
|
@@ -21,9 +21,10 @@ async def _async_serve(
|
|
|
21
21
|
*,
|
|
22
22
|
apply_fixtures: bool,
|
|
23
23
|
) -> 'AsyncAmsdalManager':
|
|
24
|
-
from
|
|
25
|
-
from
|
|
26
|
-
from amsdal_utils.
|
|
24
|
+
from amsdal_server.apps.common.events import ServerStartupContext
|
|
25
|
+
from amsdal_server.apps.common.events import ServerStartupEvent
|
|
26
|
+
from amsdal_utils.events import EventBus
|
|
27
|
+
from amsdal_utils.events import EventListener
|
|
27
28
|
|
|
28
29
|
from amsdal_cli.commands.serve.utils import async_build_app_and_check_migrations
|
|
29
30
|
|
|
@@ -38,11 +39,19 @@ async def _async_serve(
|
|
|
38
39
|
|
|
39
40
|
try:
|
|
40
41
|
|
|
41
|
-
class
|
|
42
|
-
def
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
class AmsdalInitListener(EventListener[ServerStartupContext]):
|
|
43
|
+
def handle(
|
|
44
|
+
self,
|
|
45
|
+
context: ServerStartupContext,
|
|
46
|
+
next_fn: Any,
|
|
47
|
+
) -> ServerStartupContext:
|
|
48
|
+
raise NotImplementedError
|
|
49
|
+
|
|
50
|
+
async def ahandle(
|
|
51
|
+
self,
|
|
52
|
+
context: ServerStartupContext,
|
|
53
|
+
next_fn: Any,
|
|
54
|
+
) -> ServerStartupContext:
|
|
46
55
|
if not amsdal_manager._is_setup:
|
|
47
56
|
await amsdal_manager.setup()
|
|
48
57
|
await amsdal_manager.post_setup() # type: ignore[call-arg]
|
|
@@ -52,10 +61,12 @@ async def _async_serve(
|
|
|
52
61
|
|
|
53
62
|
amsdal_manager.init_classes()
|
|
54
63
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
64
|
+
return await next_fn(context)
|
|
65
|
+
|
|
66
|
+
EventBus.subscribe(
|
|
67
|
+
ServerStartupEvent,
|
|
68
|
+
AmsdalInitListener,
|
|
69
|
+
priority=0,
|
|
59
70
|
)
|
|
60
71
|
return amsdal_manager
|
|
61
72
|
except Exception:
|
|
@@ -91,11 +102,12 @@ def serve_command(
|
|
|
91
102
|
Starts a test FastAPI server based on your app's models.
|
|
92
103
|
"""
|
|
93
104
|
|
|
105
|
+
from amsdal_server.apps.common.events import ServerStartupContext
|
|
106
|
+
from amsdal_server.apps.common.events import ServerStartupEvent
|
|
94
107
|
from amsdal_server.server import start
|
|
95
108
|
from amsdal_utils.config.manager import AmsdalConfigManager
|
|
96
|
-
from amsdal_utils.
|
|
97
|
-
from amsdal_utils.
|
|
98
|
-
from amsdal_utils.lifecycle.producer import LifecycleProducer
|
|
109
|
+
from amsdal_utils.events import EventBus
|
|
110
|
+
from amsdal_utils.events import EventListener
|
|
99
111
|
|
|
100
112
|
from amsdal_cli.commands.serve.services.supervisor import Supervisor
|
|
101
113
|
from amsdal_cli.commands.serve.utils import build_app_and_check_migrations
|
|
@@ -138,7 +150,6 @@ def serve_command(
|
|
|
138
150
|
)
|
|
139
151
|
try:
|
|
140
152
|
start(
|
|
141
|
-
is_development_mode=False,
|
|
142
153
|
host=host,
|
|
143
154
|
port=server_port,
|
|
144
155
|
)
|
|
@@ -154,8 +165,12 @@ def serve_command(
|
|
|
154
165
|
confirm_migrations=False,
|
|
155
166
|
)
|
|
156
167
|
|
|
157
|
-
class
|
|
158
|
-
def
|
|
168
|
+
class AmsdalInitListener(EventListener[ServerStartupContext]):
|
|
169
|
+
def handle(
|
|
170
|
+
self,
|
|
171
|
+
context: ServerStartupContext,
|
|
172
|
+
next_fn: Any,
|
|
173
|
+
) -> ServerStartupContext:
|
|
159
174
|
if not amsdal_manager._is_setup:
|
|
160
175
|
amsdal_manager.setup()
|
|
161
176
|
amsdal_manager.post_setup() # type: ignore[call-arg]
|
|
@@ -165,16 +180,21 @@ def serve_command(
|
|
|
165
180
|
|
|
166
181
|
amsdal_manager.init_classes()
|
|
167
182
|
|
|
168
|
-
|
|
169
|
-
|
|
183
|
+
return next_fn(context)
|
|
184
|
+
|
|
185
|
+
async def ahandle(
|
|
186
|
+
self,
|
|
187
|
+
context: ServerStartupContext,
|
|
188
|
+
next_fn: Any,
|
|
189
|
+
) -> ServerStartupContext:
|
|
190
|
+
raise NotImplementedError
|
|
170
191
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
192
|
+
EventBus.subscribe(
|
|
193
|
+
ServerStartupEvent,
|
|
194
|
+
AmsdalInitListener,
|
|
195
|
+
priority=0,
|
|
175
196
|
)
|
|
176
197
|
start(
|
|
177
|
-
is_development_mode=False,
|
|
178
198
|
host=host,
|
|
179
199
|
port=server_port,
|
|
180
200
|
)
|
|
@@ -192,7 +192,6 @@ class Supervisor:
|
|
|
192
192
|
target=cls._check_and_serve,
|
|
193
193
|
kwargs={
|
|
194
194
|
'queue': queue,
|
|
195
|
-
'is_development_mode': False,
|
|
196
195
|
'output_path': output_path,
|
|
197
196
|
'config_path': config_path,
|
|
198
197
|
'host': host,
|
|
@@ -208,7 +207,6 @@ class Supervisor:
|
|
|
208
207
|
cls,
|
|
209
208
|
queue: QueueType,
|
|
210
209
|
*,
|
|
211
|
-
is_development_mode: bool,
|
|
212
210
|
output_path: Path,
|
|
213
211
|
config_path: Path,
|
|
214
212
|
host: str,
|
|
@@ -226,7 +224,6 @@ class Supervisor:
|
|
|
226
224
|
_server_process = spawn_context.Process(
|
|
227
225
|
target=cls._serve,
|
|
228
226
|
kwargs={
|
|
229
|
-
'is_development_mode': is_development_mode,
|
|
230
227
|
'output_path': output_path,
|
|
231
228
|
'config_path': config_path,
|
|
232
229
|
'host': host,
|
|
@@ -337,14 +334,25 @@ class Supervisor:
|
|
|
337
334
|
config_path: Path,
|
|
338
335
|
**kwargs: Any,
|
|
339
336
|
) -> None:
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
from
|
|
337
|
+
import os
|
|
338
|
+
|
|
339
|
+
from amsdal_server.apps.common.events import ServerStartupContext
|
|
340
|
+
from amsdal_server.apps.common.events import ServerStartupEvent
|
|
341
|
+
from amsdal_utils.events import EventBus
|
|
342
|
+
from amsdal_utils.events import EventListener
|
|
343
|
+
|
|
344
|
+
# Set APP_PATH via env var BEFORE any settings access
|
|
345
|
+
# This ensures _load_user_app() finds app.py in the correct location
|
|
346
|
+
os.environ['AMSDAL_APP_PATH'] = str(output_path)
|
|
343
347
|
|
|
344
348
|
cls._invalidate_amsdal_state()
|
|
345
349
|
|
|
346
|
-
class
|
|
347
|
-
def
|
|
350
|
+
class AmsdalInitListener(EventListener[ServerStartupContext]):
|
|
351
|
+
def handle(
|
|
352
|
+
self,
|
|
353
|
+
context: ServerStartupContext,
|
|
354
|
+
next_fn: Any,
|
|
355
|
+
) -> ServerStartupContext:
|
|
348
356
|
settings.override(APP_PATH=output_path)
|
|
349
357
|
|
|
350
358
|
config_manager = AmsdalConfigManager()
|
|
@@ -356,13 +364,19 @@ class Supervisor:
|
|
|
356
364
|
amsdal_manager.authenticate()
|
|
357
365
|
amsdal_manager.init_classes()
|
|
358
366
|
|
|
359
|
-
|
|
360
|
-
|
|
367
|
+
return next_fn(context)
|
|
368
|
+
|
|
369
|
+
async def ahandle(
|
|
370
|
+
self,
|
|
371
|
+
context: ServerStartupContext,
|
|
372
|
+
next_fn: Any,
|
|
373
|
+
) -> ServerStartupContext:
|
|
374
|
+
raise NotImplementedError
|
|
361
375
|
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
376
|
+
EventBus.subscribe(
|
|
377
|
+
ServerStartupEvent,
|
|
378
|
+
AmsdalInitListener,
|
|
379
|
+
priority=0,
|
|
366
380
|
)
|
|
367
381
|
start(**kwargs)
|
|
368
382
|
|
|
@@ -40,6 +40,11 @@ def cleanup_app(output_path: Path, *, remove_warehouse: bool = True) -> None:
|
|
|
40
40
|
continue
|
|
41
41
|
shutil.rmtree(str(path.resolve()))
|
|
42
42
|
|
|
43
|
+
# Remove generated app.py
|
|
44
|
+
app_py_path = output_path / 'app.py'
|
|
45
|
+
if app_py_path.exists():
|
|
46
|
+
app_py_path.unlink()
|
|
47
|
+
|
|
43
48
|
warehouse_path = output_path / 'warehouse'
|
|
44
49
|
|
|
45
50
|
if remove_warehouse and warehouse_path.exists():
|
|
@@ -74,11 +79,16 @@ def build_app_and_check_migrations(
|
|
|
74
79
|
from amsdal.manager import AmsdalManager
|
|
75
80
|
|
|
76
81
|
from amsdal_cli.commands.build.services.builder import AppBuilder
|
|
82
|
+
|
|
83
|
+
# Copy app.py BEFORE creating AppBuilder (which triggers settings initialization)
|
|
84
|
+
from amsdal_cli.commands.build.services.mixin import BuildMixin
|
|
77
85
|
from amsdal_cli.utils.text import CustomConfirm
|
|
78
86
|
from amsdal_cli.utils.text import rich_error
|
|
79
87
|
from amsdal_cli.utils.text import rich_info
|
|
80
88
|
from amsdal_cli.utils.text import rich_success
|
|
81
89
|
|
|
90
|
+
BuildMixin.build_app_config(app_source_path, output_path)
|
|
91
|
+
|
|
82
92
|
app_builder = AppBuilder(
|
|
83
93
|
cli_config=cli_config,
|
|
84
94
|
config_path=config_path,
|
|
@@ -348,11 +358,16 @@ async def async_build_app_and_check_migrations(
|
|
|
348
358
|
from amsdal.manager import AsyncAmsdalManager
|
|
349
359
|
|
|
350
360
|
from amsdal_cli.commands.build.services.builder import AppBuilder
|
|
361
|
+
|
|
362
|
+
# Copy app.py BEFORE creating AppBuilder (which triggers settings initialization)
|
|
363
|
+
from amsdal_cli.commands.build.services.mixin import BuildMixin
|
|
351
364
|
from amsdal_cli.utils.text import CustomConfirm
|
|
352
365
|
from amsdal_cli.utils.text import rich_error
|
|
353
366
|
from amsdal_cli.utils.text import rich_info
|
|
354
367
|
from amsdal_cli.utils.text import rich_success
|
|
355
368
|
|
|
369
|
+
BuildMixin.build_app_config(app_source_path, output_path)
|
|
370
|
+
|
|
356
371
|
app_builder = AppBuilder(
|
|
357
372
|
cli_config=cli_config,
|
|
358
373
|
config_path=config_path,
|
|
@@ -36,7 +36,7 @@ def _sync_run(cli_config: 'CliConfig', app_source_path: Path, mode: WorkerMode)
|
|
|
36
36
|
manager.setup()
|
|
37
37
|
manager.authenticate()
|
|
38
38
|
|
|
39
|
-
for transaction in TransactionApi().get_transactions().rows:
|
|
39
|
+
for transaction in TransactionApi().get_transactions().rows: # type: ignore[attr-defined]
|
|
40
40
|
TransactionExecutionService().get_transaction_func(transaction.title)
|
|
41
41
|
|
|
42
42
|
_init_function()
|
|
@@ -72,7 +72,7 @@ async def _async_run(cli_config: 'CliConfig', app_source_path: Path, mode: Worke
|
|
|
72
72
|
await manager.setup()
|
|
73
73
|
manager.authenticate()
|
|
74
74
|
|
|
75
|
-
for transaction in TransactionApi().get_transactions().rows:
|
|
75
|
+
for transaction in TransactionApi().get_transactions().rows: # type: ignore[attr-defined]
|
|
76
76
|
TransactionExecutionService().get_transaction_func(transaction.title)
|
|
77
77
|
|
|
78
78
|
async def _shutdown_function(**kwargs: Any) -> None: # noqa: ARG001
|
amsdal_cli/utils/cli_config.py
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import re
|
|
2
|
-
from enum import
|
|
2
|
+
from enum import StrEnum
|
|
3
3
|
from pathlib import Path
|
|
4
4
|
|
|
5
5
|
from pydantic import BaseModel
|
|
@@ -10,7 +10,7 @@ from amsdal_cli.utils.vcs.enums import VCSOptions
|
|
|
10
10
|
APPLICATION_UUID_PATTERN = re.compile(r'^[a-zA-Z][a-zA-Z0-9]{31}$')
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
class ModelsFormat(
|
|
13
|
+
class ModelsFormat(StrEnum):
|
|
14
14
|
JSON = 'json'
|
|
15
15
|
PY = 'py'
|
|
16
16
|
|
amsdal_cli/utils/vcs/enums.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: amsdal_cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.6.1
|
|
4
4
|
Summary: CLI for AMSDAL framework
|
|
5
5
|
Project-URL: Documentation, https://pypi.org/project/amsdal_cli/#readme
|
|
6
6
|
Project-URL: Issues, https://pypi.org/project/amsdal_cli/
|
|
@@ -122,7 +122,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
122
122
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
123
123
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
124
124
|
Requires-Python: <3.14,>=3.11
|
|
125
|
-
Requires-Dist: amsdal-server==0.
|
|
125
|
+
Requires-Dist: amsdal-server==0.6.*
|
|
126
126
|
Requires-Dist: click<8.2.0
|
|
127
127
|
Requires-Dist: faker==27.*
|
|
128
128
|
Requires-Dist: gitpython~=3.1
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
amsdal_cli/Third-Party Materials - AMSDAL Dependencies - License Notices.md,sha256=uHJlGG0D4tbpUi8cq-497NNO9ltQ67a5448k-T14HTw,68241
|
|
2
|
-
amsdal_cli/__about__.py,sha256=
|
|
2
|
+
amsdal_cli/__about__.py,sha256=YHEwqqLWJ20SccNufkR8exZTESaK1Zt05BWhqCah-Kc,124
|
|
3
3
|
amsdal_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
amsdal_cli/app.py,sha256=_ucuLT5ospf1ifFKEG0IMfVnxKjnvPUQ4iMhkvOfCrc,466
|
|
5
5
|
amsdal_cli/main.py,sha256=LtH-BD1eJrAUecjKzC8Gx7kYFUstOMH1erdeJUVqFB8,144
|
|
@@ -42,20 +42,20 @@ amsdal_cli/commands/build/schemas/mixins/enrich_schemas_mixin.py,sha256=4TvvIuev
|
|
|
42
42
|
amsdal_cli/commands/build/schemas/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
43
|
amsdal_cli/commands/build/schemas/utils/merger.py,sha256=8dlSV3qgGAGNbOtGGx8zQ7yC99dihxg8JwPHMDboU2w,2229
|
|
44
44
|
amsdal_cli/commands/build/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
|
-
amsdal_cli/commands/build/services/builder.py,sha256=
|
|
46
|
-
amsdal_cli/commands/build/services/mixin.py,sha256=
|
|
45
|
+
amsdal_cli/commands/build/services/builder.py,sha256=tNh8ABM6pUAiGh85smX6fLCnrWnJtTHoyS1N_g_wnm4,3608
|
|
46
|
+
amsdal_cli/commands/build/services/mixin.py,sha256=tRy0fBgu_NpSp1JWoDYmmx6ZRoPRe2Y_zGzBDmbkYwI,7430
|
|
47
47
|
amsdal_cli/commands/build/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
48
48
|
amsdal_cli/commands/build/utils/build_config_file.py,sha256=65s3rP_nnr5FJLQlYStGF2JNYxExq5tWZvIU_h8Ae7I,2009
|
|
49
49
|
amsdal_cli/commands/ci_cd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
50
50
|
amsdal_cli/commands/ci_cd/command.py,sha256=REhNCbCet1cQuDLzt6q4ain4MrUitRyZW5OtlwZ6sic,1115
|
|
51
|
-
amsdal_cli/commands/ci_cd/constants.py,sha256=
|
|
51
|
+
amsdal_cli/commands/ci_cd/constants.py,sha256=r02mjhz9-S7bTjn72MqFNK_iG3TN98FZUe7s22tok0w,302
|
|
52
52
|
amsdal_cli/commands/ci_cd/templates/github.yml,sha256=e6RUSyqpwMncdpQOwOsYky646bpI0EKJ08FGXK1bP3o,600
|
|
53
53
|
amsdal_cli/commands/clean/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
54
|
amsdal_cli/commands/clean/command.py,sha256=a4h0ZB7B9pRSyUaJF5d1eD33cwgvmexm_z8W3Ws71_Q,934
|
|
55
55
|
amsdal_cli/commands/cloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
56
56
|
amsdal_cli/commands/cloud/app.py,sha256=PKtcnIoByDMn0vGPSQrr9lfhg90Za2S2X9Z0C-zM430,174
|
|
57
57
|
amsdal_cli/commands/cloud/command.py,sha256=L5Es2Xukqs6WPdskVC_jDzqroEVUL-HxPUnCzvp1nwo,601
|
|
58
|
-
amsdal_cli/commands/cloud/enums.py,sha256=
|
|
58
|
+
amsdal_cli/commands/cloud/enums.py,sha256=6XnAdBwPJ-e-aAFgY7hgA3prDLG48qwfE39JbKHEr84,611
|
|
59
59
|
amsdal_cli/commands/cloud/dependency/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
60
60
|
amsdal_cli/commands/cloud/dependency/app.py,sha256=m2pcB5z3257uU7pKt9XoOdQn7J3PUys6elCs9c9qc2o,230
|
|
61
61
|
amsdal_cli/commands/cloud/dependency/command.py,sha256=6nri04NBl4fy4FlrZyorY05samMbYU1-2j88m4t2FD4,272
|
|
@@ -119,10 +119,10 @@ amsdal_cli/commands/cloud/sub_commands/sync_db.py,sha256=o5yaqcanCDffaAj73jvk7vX
|
|
|
119
119
|
amsdal_cli/commands/generate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
120
120
|
amsdal_cli/commands/generate/app.py,sha256=-wEccTR0MhZyj3Y1R2VMyO9RzyGiBSrdWNPQc4ACHqc,201
|
|
121
121
|
amsdal_cli/commands/generate/command.py,sha256=j6CGiZ_7st-A6qpMTA8XYl15UeONopauQALObVWB2xc,197
|
|
122
|
-
amsdal_cli/commands/generate/enums.py,sha256=
|
|
122
|
+
amsdal_cli/commands/generate/enums.py,sha256=f53uKOxTKn6-z169NZmkTn_dtCNO1RE07hBes_1cZ4U,3685
|
|
123
123
|
amsdal_cli/commands/generate/sub_commands/__init__.py,sha256=afAyY3hWNb6a4e3lapQX-GsR1SB6EHZi9hwtsWzrPKY,1077
|
|
124
124
|
amsdal_cli/commands/generate/sub_commands/generate_external_models.py,sha256=QH54RuiRyzFzmiEQsw7mbLk1d_vSbLAPqp4F-oJGwD8,11515
|
|
125
|
-
amsdal_cli/commands/generate/sub_commands/generate_frontend_config.py,sha256=
|
|
125
|
+
amsdal_cli/commands/generate/sub_commands/generate_frontend_config.py,sha256=j3tzTESUlZAeP0KuYCnvHmqlgoLvYDvlGXpBKsg5jJE,2628
|
|
126
126
|
amsdal_cli/commands/generate/sub_commands/generate_hook.py,sha256=C0Oy5VokM3BXPq33Kknjvtjwd7hdfSxQFKxJcHu_bgg,1738
|
|
127
127
|
amsdal_cli/commands/generate/sub_commands/generate_model.py,sha256=yjZEfadjDf2zRkXh9z5RWYqnO9vFVu8tzVQzxWZPWY4,5885
|
|
128
128
|
amsdal_cli/commands/generate/sub_commands/generate_modifier.py,sha256=NyN7vMTBGaQv6u815WT1lqAlqI4xP1AmIZWq5edZ-5g,1426
|
|
@@ -163,7 +163,7 @@ amsdal_cli/commands/migrations/sub_commands/make_contrib.py,sha256=G3w5fRKR16-tK
|
|
|
163
163
|
amsdal_cli/commands/new/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
164
164
|
amsdal_cli/commands/new/command.py,sha256=B-chjS_TAEzH4CIr_vBtxFWn7Y4xWm8vpUetCf1lwKo,3233
|
|
165
165
|
amsdal_cli/commands/new/templates/.amsdal-cli,sha256=PdXPovcT8AfPhqwDLI_4EWFYAS6e3J5JcsHVityBdF8,304
|
|
166
|
-
amsdal_cli/commands/new/templates/.gitignore,sha256=
|
|
166
|
+
amsdal_cli/commands/new/templates/.gitignore,sha256=A_4VUuqcntOAZ_z4B_MBJwUoStMZe1HU_lWOnk07EG8,161
|
|
167
167
|
amsdal_cli/commands/new/templates/README.md,sha256=SM_MPq4HNWIxo2B4HJmfM1kfJYawW4YneuZxFqZnDo4,21552
|
|
168
168
|
amsdal_cli/commands/new/templates/config.yml,sha256=89BTeSrzPO92JTCRS8N03DXY0kdw-uMWCStLHzNaeRw,640
|
|
169
169
|
amsdal_cli/commands/new/templates/requirements.txt,sha256=05SVW1yzgvHwir231NIEgeCguZovGJyJKtHA1uFC3aA,129
|
|
@@ -194,15 +194,15 @@ amsdal_cli/commands/register_connection/utils/model_generator.py,sha256=w0vz-i-t
|
|
|
194
194
|
amsdal_cli/commands/register_connection/utils/tables.py,sha256=FOwbWOpEw485Leoqe8LXCVY5osGKTKlMqWD9oqosapk,474
|
|
195
195
|
amsdal_cli/commands/restore/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
196
196
|
amsdal_cli/commands/restore/command.py,sha256=yrtF0y3HHmv6RXrMKQCnUIDhEQecDWY7THI_erh6WtA,35976
|
|
197
|
-
amsdal_cli/commands/restore/enums.py,sha256=
|
|
197
|
+
amsdal_cli/commands/restore/enums.py,sha256=oeEs9qTEsW4xgi6gAylFfRD5loFId416wwGkNhsSEkU,308
|
|
198
198
|
amsdal_cli/commands/serve/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
199
|
-
amsdal_cli/commands/serve/command.py,sha256=
|
|
200
|
-
amsdal_cli/commands/serve/utils.py,sha256=
|
|
199
|
+
amsdal_cli/commands/serve/command.py,sha256=rJutMivkGrDKgFhEp0lyuCiNqttbEeXor4J-opoVgAQ,7033
|
|
200
|
+
amsdal_cli/commands/serve/utils.py,sha256=LpdjAKC_qrrkftpLcGl3b7vAdVAbvi6C8pWxnegwnHo,19041
|
|
201
201
|
amsdal_cli/commands/serve/filters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
202
202
|
amsdal_cli/commands/serve/filters/models_watch_filter.py,sha256=cnoAjrn-PYDAFq5MtgbQ6QeCvJJmcNisVNlA8QtFv4A,170
|
|
203
203
|
amsdal_cli/commands/serve/filters/static_files_watch_filter.py,sha256=jKAF5RHq1au2v0kcOrqaAHP1x5IUjt_KgZURJLm29Tw,552
|
|
204
204
|
amsdal_cli/commands/serve/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
205
|
-
amsdal_cli/commands/serve/services/supervisor.py,sha256=
|
|
205
|
+
amsdal_cli/commands/serve/services/supervisor.py,sha256=B31P9owFjcAQ49fUEoSCZrbfk36ajVUZbr0qJMwTqo4,15541
|
|
206
206
|
amsdal_cli/commands/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
207
207
|
amsdal_cli/commands/tests/command.py,sha256=_UYFGYgd9VDJMjLRSPSudTh2DQuZLV3yk1fZekPlJE0,3800
|
|
208
208
|
amsdal_cli/commands/verify/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -215,13 +215,13 @@ amsdal_cli/commands/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
|
215
215
|
amsdal_cli/commands/worker/app.py,sha256=X0irXtvo7Gq2g-tsRTPxi9KkgM38DsIvtDMaeGnqZJY,148
|
|
216
216
|
amsdal_cli/commands/worker/command.py,sha256=e3uL38VYCp71-XsVYvE1xlt2FqhP54ujlhVFhK7_9Jw,186
|
|
217
217
|
amsdal_cli/commands/worker/sub_commands/__init__.py,sha256=5AVFexW1UpfPpfNfYoioA6Pix1uiRSEjVEa-_wP89j4,100
|
|
218
|
-
amsdal_cli/commands/worker/sub_commands/run.py,sha256=
|
|
218
|
+
amsdal_cli/commands/worker/sub_commands/run.py,sha256=vPtkgi-A9c-_-w4KLjwaUDFLmp-vPw-zm4c5smu_VdM,4359
|
|
219
219
|
amsdal_cli/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
220
220
|
amsdal_cli/config/main.py,sha256=leYnDJlzhzIAYWOH65QhPLu4zk3ii26ogMBWGYx3uqM,2874
|
|
221
221
|
amsdal_cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
222
222
|
amsdal_cli/utils/alias_group.py,sha256=v0ninrhZGtZFuJtUH6ZZZ97Irs96nkmIBFm2gY1NdmU,991
|
|
223
223
|
amsdal_cli/utils/check_versions.py,sha256=4Q3GwY_0xgP_RV_ITuFSDigXds-f1QhqCqkUkn-CSMI,1475
|
|
224
|
-
amsdal_cli/utils/cli_config.py,sha256=
|
|
224
|
+
amsdal_cli/utils/cli_config.py,sha256=V2Do7j0zI6_WScDQ55e2OB0kt-ZHXZPfRPe9yfeWhl0,2798
|
|
225
225
|
amsdal_cli/utils/copier.py,sha256=nKo0-P1AhWIb7IjbndYr3Vnvd_avCa566iIbXLK_5a0,5122
|
|
226
226
|
amsdal_cli/utils/markdown_patch.py,sha256=RW58pJhRoUYW1fhId70hw8MD2DF-UqXTYfv7JrSGz5I,1816
|
|
227
227
|
amsdal_cli/utils/render_template.py,sha256=wVjw6K4JZDKz0VElC76Dkgme8di4yfhHIb6hVju9el4,645
|
|
@@ -230,10 +230,10 @@ amsdal_cli/utils/text.py,sha256=oAC6H6nhuH_jSdKqbC3vRKpgzs2Qot7DluojWOwh9GU,2489
|
|
|
230
230
|
amsdal_cli/utils/vcs/__init__.py,sha256=WWxqfpYP5AK9zGj6_KzKfbQCX6H1FCLqHfQyVnRof9E,513
|
|
231
231
|
amsdal_cli/utils/vcs/base.py,sha256=jC05ExJZDnyHAsW7_4IDf8gQcYgK4dXq3zNlFIX66T4,422
|
|
232
232
|
amsdal_cli/utils/vcs/dummy.py,sha256=Lk8MT-b0YlHHUsiXsq5cvmPwcl4jTYdo8piN5_C8ORA,434
|
|
233
|
-
amsdal_cli/utils/vcs/enums.py,sha256=
|
|
233
|
+
amsdal_cli/utils/vcs/enums.py,sha256=Y18zEM77EGgjmmcO_3qzLHrALrTnXAXngoA0v60PhIw,70
|
|
234
234
|
amsdal_cli/utils/vcs/git.py,sha256=xHynbZcV6p2D3RFCwu1MGGpV9D7eK-pGUtO8kVexTQM,1269
|
|
235
|
-
amsdal_cli-0.
|
|
236
|
-
amsdal_cli-0.
|
|
237
|
-
amsdal_cli-0.
|
|
238
|
-
amsdal_cli-0.
|
|
239
|
-
amsdal_cli-0.
|
|
235
|
+
amsdal_cli-0.6.1.dist-info/METADATA,sha256=xFzCW9o14ZYSANwEZS9vYzkc7ofjkqZYKX5QVQ_faqk,57164
|
|
236
|
+
amsdal_cli-0.6.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
237
|
+
amsdal_cli-0.6.1.dist-info/entry_points.txt,sha256=GC-8LZsD3W--Pd9_gD4W3tw3ZZyPbSvkZ-qWc9Fx0NI,47
|
|
238
|
+
amsdal_cli-0.6.1.dist-info/licenses/LICENSE.txt,sha256=hG-541PFYfNJi9WRZi_hno91UyqNg7YLK8LR3vLblZA,27355
|
|
239
|
+
amsdal_cli-0.6.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|