malevich-coretools 0.3.40__tar.gz → 0.3.42__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.

Potentially problematic release.


This version of malevich-coretools might be problematic. Click here for more details.

Files changed (38) hide show
  1. {malevich_coretools-0.3.40/malevich_coretools.egg-info → malevich_coretools-0.3.42}/PKG-INFO +1 -1
  2. malevich_coretools-0.3.42/VERSION +1 -0
  3. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/abstract/abstract.py +11 -0
  4. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/funcs/funcs.py +20 -0
  5. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/secondary/const.py +7 -1
  6. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/utils.py +81 -0
  7. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42/malevich_coretools.egg-info}/PKG-INFO +1 -1
  8. malevich_coretools-0.3.40/VERSION +0 -1
  9. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/LICENSE +0 -0
  10. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/MANIFEST.in +0 -0
  11. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/README.md +0 -0
  12. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/__init__.py +0 -0
  13. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/abstract/__init__.py +0 -0
  14. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/abstract/operations.py +0 -0
  15. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/abstract/pipeline.py +0 -0
  16. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/abstract/statuses.py +0 -0
  17. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/admin/__init__.py +0 -0
  18. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/admin/utils.py +0 -0
  19. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/batch/__init__.py +0 -0
  20. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/batch/utils.py +0 -0
  21. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/funcs/__init__.py +0 -0
  22. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/funcs/checks.py +0 -0
  23. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/funcs/helpers.py +0 -0
  24. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/secondary/__init__.py +0 -0
  25. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/secondary/config.py +0 -0
  26. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/secondary/helpers.py +0 -0
  27. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/secondary/kafka_utils.py +0 -0
  28. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/tools/__init__.py +0 -0
  29. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/tools/abstract.py +0 -0
  30. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools/tools/vast.py +0 -0
  31. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools.egg-info/SOURCES.txt +0 -0
  32. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools.egg-info/dependency_links.txt +0 -0
  33. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools.egg-info/requires.txt +0 -0
  34. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/malevich_coretools.egg-info/top_level.txt +0 -0
  35. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/pyproject.toml +0 -0
  36. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/requirements.txt +0 -0
  37. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/setup.cfg +0 -0
  38. {malevich_coretools-0.3.40 → malevich_coretools-0.3.42}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: malevich-coretools
3
- Version: 0.3.40
3
+ Version: 0.3.42
4
4
  Author: Andrew Pogrebnoj
5
5
  Author-email: andrew@onjulius.co
6
6
  License-File: LICENSE
@@ -0,0 +1 @@
1
+ 0.3.42
@@ -617,3 +617,14 @@ class UserAnalytics(BaseModel):
617
617
 
618
618
  class UserAnalyticsBatch(BaseModel):
619
619
  data: List[UserAnalytics]
620
+
621
+
622
+ class WSApp(BaseModel):
623
+ id: Alias.Id
624
+ secret: str
625
+ active: bool
626
+ dm: str
627
+
628
+
629
+ class WSApps(BaseModel):
630
+ data: List[WSApp]
@@ -824,6 +824,26 @@ def get_runsInfo_last_failed_operation_ids(count: int, *args, **kwargs) -> Resul
824
824
  return model_from_json(send_to_core_get(RUNS_INFO_LAST_FAILED(count), *args, **kwargs), ResultIds)
825
825
 
826
826
 
827
+ def get_ws_apps(only_active: bool = False, full: bool = False, *args, **kwargs) -> Union[ResultIds, WSApps]:
828
+ return model_from_json(send_to_core_get(WS_APPS(only_active, full), *args, **kwargs), WSApps if full else ResultIds)
829
+
830
+
831
+ def get_ws_apps_id(id: str, *args, **kwargs) -> WSApp:
832
+ return model_from_json(send_to_core_get(WS_APPS_ID(id, None), *args, **kwargs), WSApp)
833
+
834
+
835
+ def post_ws_apps(wait: bool, *args, **kwargs) -> WSApp:
836
+ return model_from_json(send_to_core_modify(WS_APPS_(None, wait), *args, **kwargs), WSApp)
837
+
838
+
839
+ def delete_ws_apps_id(id: str, wait: bool, *args, **kwargs) -> Alias.Info:
840
+ return send_to_core_modify(WS_APPS_ID(id, wait), *args, **kwargs)
841
+
842
+
843
+ def delete_ws_apps(only_not_active: bool, wait: bool, *args, **kwargs) -> Alias.Info:
844
+ return send_to_core_modify(WS_APPS_(only_not_active, wait), *args, **kwargs)
845
+
846
+
827
847
  async def kafka_send(data: KafkaMsg, *args, **kwargs) -> Union[Alias.Info, KafkaMsg]:
828
848
  result = await send_to_core_post_async(KAFKA_SEND, data, *args, **kwargs)
829
849
  try:
@@ -15,7 +15,7 @@ LONG_SLEEP_TIME = 1 # second
15
15
  WAIT_RESULT_TIMEOUT = 60 * 60 # hour
16
16
  AIOHTTP_TIMEOUT = aiohttp.ClientTimeout(total=60 * 10) # 10 min
17
17
  AIOHTTP_TIMEOUT_MINI = aiohttp.ClientTimeout(total=60 * 5) # 5 min
18
- POSSIBLE_APPS_PLATFORMS = {"base", "vast"}
18
+ POSSIBLE_APPS_PLATFORMS = {"base", "vast", "ws"}
19
19
  SCHEME_PATTERN = r"[a-zA-Z_]\w+"
20
20
 
21
21
  # endpoints
@@ -210,6 +210,12 @@ RUNS_INFO_MAIN = f"{API_VERSION}/runsInfo"
210
210
  RUNS_INFO_LAST = lambda count: with_key_values(f"{RUNS_INFO_MAIN}/lastOperationsIds", {"count": count})
211
211
  RUNS_INFO_LAST_FAILED = lambda count: with_key_values(f"{RUNS_INFO_MAIN}/lastFailedOperationsIds", {"count": count})
212
212
 
213
+ ## WSAppsController
214
+ WS_APPS_MAIN = f"{API_VERSION}/ws/apps"
215
+ WS_APPS = lambda only_active, full: with_key_values(f"{WS_APPS_MAIN}/", {"onlyActive": only_active, "full": full})
216
+ WS_APPS_ = lambda only_not_active, wait: with_key_values(f"{WS_APPS_MAIN}/", {"onlyNotActive": only_not_active, "wait": wait})
217
+ WS_APPS_ID = lambda id, wait: with_wait(f"{WS_APPS_MAIN}/{id}", wait)
218
+
213
219
  ### Kafka
214
220
  KAFKA_SEND = f"{MANAGER_MAIN}/kafkaMsg"
215
221
 
@@ -3553,6 +3553,87 @@ def get_last_failed_runs(
3553
3553
  return f.get_runsInfo_last_failed_operation_ids(count, auth=auth, conn_url=conn_url)
3554
3554
 
3555
3555
 
3556
+ # WSApp
3557
+
3558
+
3559
+ def get_ws_apps(
3560
+ only_active: bool = False,
3561
+ full: bool = False,
3562
+ *,
3563
+ auth: Optional[AUTH] = None,
3564
+ conn_url: Optional[str] = None,
3565
+ batcher: Optional[Batcher] = None,
3566
+ ) -> Union[ResultIds, WSApps]:
3567
+ """return list ids or list ws apps structure"""
3568
+ if batcher is None:
3569
+ batcher = Config.BATCHER
3570
+ if batcher is not None:
3571
+ return batcher.add("getWSApps", vars={"onlyActive": only_active, "full": full}, result_model=WSApps if full else ResultIds)
3572
+ return f.get_ws_apps(only_active, full, auth=auth, conn_url=conn_url)
3573
+
3574
+
3575
+ def get_ws_app(
3576
+ id: str,
3577
+ *,
3578
+ auth: Optional[AUTH] = None,
3579
+ conn_url: Optional[str] = None,
3580
+ batcher: Optional[Batcher] = None,
3581
+ ) -> WSApp:
3582
+ """return ws app struct by `id` """
3583
+ if batcher is None:
3584
+ batcher = Config.BATCHER
3585
+ if batcher is not None:
3586
+ return batcher.add("getWSAppById", vars={"id": id}, result_model=WSApp)
3587
+ return f.get_ws_apps_id(id, auth=auth, conn_url=conn_url)
3588
+
3589
+
3590
+ def create_ws_app(
3591
+ wait: bool = True,
3592
+ *,
3593
+ auth: Optional[AUTH] = None,
3594
+ conn_url: Optional[str] = None,
3595
+ batcher: Optional[Batcher] = None,
3596
+ ) -> WSApp:
3597
+ """save ws app, return ws app struct"""
3598
+ if batcher is None:
3599
+ batcher = Config.BATCHER
3600
+ if batcher is not None:
3601
+ return batcher.add("postWSApp")
3602
+ return f.post_ws_apps(wait=wait, auth=auth, conn_url=conn_url)
3603
+
3604
+
3605
+ def delete_ws_app(
3606
+ id: str,
3607
+ wait: bool = True,
3608
+ *,
3609
+ auth: Optional[AUTH] = None,
3610
+ conn_url: Optional[str] = None,
3611
+ batcher: Optional[Batcher] = None,
3612
+ ) -> Alias.Info:
3613
+ """delete ws app by `id` """
3614
+ if batcher is None:
3615
+ batcher = Config.BATCHER
3616
+ if batcher is not None:
3617
+ return batcher.add("deleteWSAppById", vars={"id": id})
3618
+ return f.delete_ws_apps_id(id, wait=wait, auth=auth, conn_url=conn_url)
3619
+
3620
+
3621
+ def delete_ws_apps(
3622
+ only_not_active: bool = False,
3623
+ wait: bool = True,
3624
+ *,
3625
+ auth: Optional[AUTH] = None,
3626
+ conn_url: Optional[str] = None,
3627
+ batcher: Optional[Batcher] = None,
3628
+ ) -> Alias.Info:
3629
+ """delete all ws apps (only not active if `only_not_active`)"""
3630
+ if batcher is None:
3631
+ batcher = Config.BATCHER
3632
+ if batcher is not None:
3633
+ return batcher.add("deleteWSApps", vars={"onlyNotActive": only_not_active})
3634
+ return f.delete_ws_apps(only_not_active, wait=wait, auth=auth, conn_url=conn_url)
3635
+
3636
+
3556
3637
  # kafka
3557
3638
 
3558
3639
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: malevich-coretools
3
- Version: 0.3.40
3
+ Version: 0.3.42
4
4
  Author: Andrew Pogrebnoj
5
5
  Author-email: andrew@onjulius.co
6
6
  License-File: LICENSE
@@ -1 +0,0 @@
1
- 0.3.40