vortex-cli 4.19.1__tar.gz → 4.19.2__tar.gz
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.
- {vortex_cli-4.19.1/vortex_cli.egg-info → vortex_cli-4.19.2}/PKG-INFO +1 -1
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/pyproject.toml +1 -1
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/cli.py +7 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/clone.py +10 -3
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/main.py +1 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/models.py +2 -1
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/soap.py +2 -1
- {vortex_cli-4.19.1 → vortex_cli-4.19.2/vortex_cli.egg-info}/PKG-INFO +1 -1
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/LICENSE +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/README.md +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/setup.cfg +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/__init__.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/__main__.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/colour.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/__init__.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/clean.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/code.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/config.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/copy.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/db.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/delete.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/docs.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/execute.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/export.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/find.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/grep.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/import_.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/list.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/log.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/new.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/commands/watch.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/constants.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/docs/Blackbook.pdf +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/lib/puakma-6.0.40.jar +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/logging.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/spinner.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/util.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex/workspace.py +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex_cli.egg-info/SOURCES.txt +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex_cli.egg-info/dependency_links.txt +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex_cli.egg-info/entry_points.txt +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex_cli.egg-info/requires.txt +0 -0
- {vortex_cli-4.19.1 → vortex_cli-4.19.2}/vortex_cli.egg-info/top_level.txt +0 -0
|
@@ -265,6 +265,13 @@ def add_clone_parser(
|
|
|
265
265
|
help="Open the application and webdesign URLs after cloning",
|
|
266
266
|
action="store_true",
|
|
267
267
|
)
|
|
268
|
+
clone_parser.add_argument(
|
|
269
|
+
"--timeout",
|
|
270
|
+
"-t",
|
|
271
|
+
type=int,
|
|
272
|
+
default=300,
|
|
273
|
+
help="Set the timeout duration in seconds for SOAP requests. Default is %(default)s.",
|
|
274
|
+
)
|
|
268
275
|
_add_server_option(clone_parser)
|
|
269
276
|
return clone_parser
|
|
270
277
|
|
|
@@ -162,6 +162,7 @@ async def _aclone_app(
|
|
|
162
162
|
server: PuakmaServer,
|
|
163
163
|
app_id: int,
|
|
164
164
|
get_resources: bool,
|
|
165
|
+
timeout: int = 300, # noqa: ASYNC109
|
|
165
166
|
) -> tuple[PuakmaApplication | None, int]:
|
|
166
167
|
"""Clone a Puakma Application into a newly created directory"""
|
|
167
168
|
|
|
@@ -169,7 +170,7 @@ async def _aclone_app(
|
|
|
169
170
|
app_xml, _obj_rows = await asyncio.gather(
|
|
170
171
|
server.app_designer.aget_application_xml(app_id),
|
|
171
172
|
PuakmaApplication.afetch_design_objects(
|
|
172
|
-
server, app_id, get_resources, resources_ext_only
|
|
173
|
+
server, app_id, get_resources, resources_ext_only, timeout=timeout
|
|
173
174
|
),
|
|
174
175
|
)
|
|
175
176
|
|
|
@@ -207,12 +208,15 @@ async def _aclone_apps(
|
|
|
207
208
|
app_ids: set[int],
|
|
208
209
|
get_resources: bool,
|
|
209
210
|
open_urls: bool,
|
|
211
|
+
timeout: int = 300, # noqa: ASYNC109
|
|
210
212
|
) -> int:
|
|
211
213
|
tasks = []
|
|
212
214
|
async with server as s:
|
|
213
215
|
await s.server_designer.ainitiate_connection()
|
|
214
216
|
for app_id in app_ids:
|
|
215
|
-
task = asyncio.create_task(
|
|
217
|
+
task = asyncio.create_task(
|
|
218
|
+
_aclone_app(workspace, s, app_id, get_resources, timeout)
|
|
219
|
+
)
|
|
216
220
|
tasks.append(task)
|
|
217
221
|
|
|
218
222
|
ret = 0
|
|
@@ -245,6 +249,7 @@ def clone(
|
|
|
245
249
|
get_resources: bool = False,
|
|
246
250
|
open_urls: bool = False,
|
|
247
251
|
reclone: bool = False,
|
|
252
|
+
timeout: int = 300,
|
|
248
253
|
) -> int:
|
|
249
254
|
if reclone:
|
|
250
255
|
app_ids.extend(app.id for app in workspace.listapps(server))
|
|
@@ -255,5 +260,7 @@ def clone(
|
|
|
255
260
|
Spinner(f"Cloning {len(unique_app_ids)} application(s)..."),
|
|
256
261
|
):
|
|
257
262
|
return asyncio.run(
|
|
258
|
-
_aclone_apps(
|
|
263
|
+
_aclone_apps(
|
|
264
|
+
workspace, server, unique_app_ids, get_resources, open_urls, timeout
|
|
265
|
+
)
|
|
259
266
|
)
|
|
@@ -389,6 +389,7 @@ class PuakmaApplication:
|
|
|
389
389
|
app_id: int,
|
|
390
390
|
get_resources: bool = False,
|
|
391
391
|
resources_ext_only: list[str] | None = None,
|
|
392
|
+
timeout: int = 20, # noqa: ASYNC109
|
|
392
393
|
) -> list[dict[str, Any]]:
|
|
393
394
|
resources_where = ""
|
|
394
395
|
|
|
@@ -412,7 +413,7 @@ class PuakmaApplication:
|
|
|
412
413
|
query = f"{_DESIGN_OBJECT_QUERY}{resources_where}" % app_id
|
|
413
414
|
logger.debug(f"Fetching Design Objects [{app_id}]...")
|
|
414
415
|
return await server.database_designer.aexecute_query(
|
|
415
|
-
server.puakma_db_conn_id, query
|
|
416
|
+
server.puakma_db_conn_id, query, timeout=timeout
|
|
416
417
|
)
|
|
417
418
|
|
|
418
419
|
def lookup_design_obj(
|
|
@@ -331,6 +331,7 @@ class DatabaseDesigner(_PuakmaSOAPService):
|
|
|
331
331
|
db_conn_id: int,
|
|
332
332
|
query: str,
|
|
333
333
|
is_update: bool = False,
|
|
334
|
+
timeout: int = 20, # noqa: ASYNC109
|
|
334
335
|
) -> list[dict[str, Any]]:
|
|
335
336
|
"""Returns a list of dicts representing a return row"""
|
|
336
337
|
operation = "executeQuery"
|
|
@@ -341,7 +342,7 @@ class DatabaseDesigner(_PuakmaSOAPService):
|
|
|
341
342
|
]
|
|
342
343
|
logger.debug("Executing query")
|
|
343
344
|
logger.debug(query)
|
|
344
|
-
resp = await self._apost(operation, params)
|
|
345
|
+
resp = await self._apost(operation, params, timeout=timeout)
|
|
345
346
|
col_lookup = [
|
|
346
347
|
meta_row.attrib["name"] for meta_row in resp.findall(".//metadata")
|
|
347
348
|
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|