arpakitlib 1.7.257__py3-none-any.whl → 1.8.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.
Files changed (294) hide show
  1. arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/README.md +1 -1
  2. arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/alembic/env.py +3 -3
  3. arpakitlib/_arpakit_project_template_v_1/api/asgi.py +3 -0
  4. arpakitlib/_arpakit_project_template_v_1/api/auth.py +235 -0
  5. arpakitlib/_arpakit_project_template_v_1/api/const.py +18 -0
  6. arpakitlib/_arpakit_project_template_v_1/api/create_api_app.py +71 -0
  7. arpakitlib/_arpakit_project_template_v_1/api/event.py +74 -0
  8. arpakitlib/_arpakit_project_template_v_1/api/exception.py +38 -0
  9. arpakitlib/_arpakit_project_template_v_1/api/exception_handler.py +308 -0
  10. arpakitlib/_arpakit_project_template_v_1/api/openapi_ui.py +28 -0
  11. arpakitlib/_arpakit_project_template_v_1/api/response.py +31 -0
  12. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/api/router/main_router.py +4 -3
  13. arpakitlib/_arpakit_project_template_v_1/api/router/v1/arpakit_project_template.py +22 -0
  14. arpakitlib/_arpakit_project_template_v_1/api/router/v1/check_auth.py +30 -0
  15. arpakitlib/_arpakit_project_template_v_1/api/router/v1/clear_log_file.py +25 -0
  16. arpakitlib/_arpakit_project_template_v_1/api/router/v1/get_errors_info.py +24 -0
  17. arpakitlib/_arpakit_project_template_v_1/api/router/v1/get_log_file.py +23 -0
  18. arpakitlib/_arpakit_project_template_v_1/api/router/v1/healthcheck.py +21 -0
  19. arpakitlib/_arpakit_project_template_v_1/api/router/v1/main_router.py +67 -0
  20. arpakitlib/_arpakit_project_template_v_1/api/router/v1/now_utc_datetime.py +21 -0
  21. arpakitlib/_arpakit_project_template_v_1/api/router/v1/raise_fake_error.py +35 -0
  22. arpakitlib/_arpakit_project_template_v_1/api/schema/base_schema.py +26 -0
  23. arpakitlib/_arpakit_project_template_v_1/api/schema/common/in_.py +5 -0
  24. arpakitlib/_arpakit_project_template_v_1/api/schema/common/out.py +60 -0
  25. arpakitlib/_arpakit_project_template_v_1/api/schema/v1/in_.py +5 -0
  26. arpakitlib/_arpakit_project_template_v_1/api/schema/v1/out.py +47 -0
  27. arpakitlib/_arpakit_project_template_v_1/arpakitlib_project_template.json +3 -0
  28. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/business_service/hello_world.py +1 -1
  29. arpakitlib/_arpakit_project_template_v_1/business_service/remove_operations.py +51 -0
  30. arpakitlib/_arpakit_project_template_v_1/command/alembic_history.sh +2 -0
  31. arpakitlib/_arpakit_project_template_v_1/command/alembic_revision_autogenerate.sh +2 -0
  32. arpakitlib/{_arpakit_project_template/manage/json_beautify.py → _arpakit_project_template_v_1/command/beautify_json.py} +2 -2
  33. arpakitlib/{_arpakit_project_template/src/core/_check_logging.py → _arpakit_project_template_v_1/command/check_logging.py} +3 -3
  34. arpakitlib/_arpakit_project_template_v_1/command/check_sqlalchemy_db.py +11 -0
  35. arpakitlib/_arpakit_project_template_v_1/command/drop_json_db.py +13 -0
  36. arpakitlib/_arpakit_project_template_v_1/command/drop_sqlalchemy_db.py +14 -0
  37. arpakitlib/{_arpakit_project_template/src/core/_generate_settings_env_example.py → _arpakit_project_template_v_1/command/generate_settings_env_example.py} +4 -4
  38. arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/hello_world.py +2 -2
  39. arpakitlib/_arpakit_project_template_v_1/command/init_json_db.py +11 -0
  40. arpakitlib/_arpakit_project_template_v_1/command/init_sqlalchemy_db.py +11 -0
  41. arpakitlib/_arpakit_project_template_v_1/command/reinit_json_db.py +13 -0
  42. arpakitlib/_arpakit_project_template_v_1/command/reinit_sqlalchemy_db.py +13 -0
  43. arpakitlib/_arpakit_project_template_v_1/command/remove_operations.py +13 -0
  44. arpakitlib/_arpakit_project_template_v_1/command/remove_story_logs.py +16 -0
  45. arpakitlib/_arpakit_project_template_v_1/command/rm_all_records_in_json_db.py +13 -0
  46. arpakitlib/{_arpakit_project_template/src/core/_show_settings.py → _arpakit_project_template_v_1/command/show_settings.py} +3 -3
  47. arpakitlib/{_arpakit_project_template/src/api/_start_api_with_reload.py → _arpakit_project_template_v_1/command/start_api_with_reload.py} +5 -5
  48. arpakitlib/{_arpakit_project_template/src/api/_start_api_without_reload.py → _arpakit_project_template_v_1/command/start_api_without_reload.py} +5 -5
  49. arpakitlib/_arpakit_project_template_v_1/command/start_async_operation_executor_worker.py +14 -0
  50. arpakitlib/_arpakit_project_template_v_1/command/start_async_scheduled_operation_creator_worker.py +14 -0
  51. arpakitlib/_arpakit_project_template_v_1/command/start_sync_operation_executor_worker.py +15 -0
  52. arpakitlib/_arpakit_project_template_v_1/command/start_sync_operation_executor_workers.py +22 -0
  53. arpakitlib/_arpakit_project_template_v_1/command/start_sync_scheduled_operation_creator_worker.py +12 -0
  54. arpakitlib/_arpakit_project_template_v_1/core/cache_file_storage_in_dir.py +23 -0
  55. arpakitlib/_arpakit_project_template_v_1/core/const.py +33 -0
  56. arpakitlib/_arpakit_project_template_v_1/core/dump_file_storage_in_dir.py +23 -0
  57. arpakitlib/_arpakit_project_template_v_1/core/jinja2_templates.py +14 -0
  58. arpakitlib/_arpakit_project_template_v_1/core/media_file_storage_in_dir.py +23 -0
  59. arpakitlib/_arpakit_project_template_v_1/core/settings.py +195 -0
  60. arpakitlib/_arpakit_project_template_v_1/core/util.py +29 -0
  61. arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/example.env +13 -7
  62. arpakitlib/_arpakit_project_template_v_1/json_db/json_db.py +28 -0
  63. arpakitlib/_arpakit_project_template_v_1/operation_execution/operation_executor_worker.py +256 -0
  64. arpakitlib/_arpakit_project_template_v_1/operation_execution/scheduled_operation_creator_worker.py +106 -0
  65. arpakitlib/_arpakit_project_template_v_1/operation_execution/scheduled_operations.py +49 -0
  66. arpakitlib/_arpakit_project_template_v_1/operation_execution/util.py +29 -0
  67. arpakitlib/_arpakit_project_template_v_1/resource/static/openapi-favicon.png +0 -0
  68. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/index.html +19 -0
  69. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-bundle.js +2 -0
  70. arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui-es-bundle-core.js +1 -1
  71. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle-core.js.map +1 -0
  72. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle.js +2 -0
  73. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-standalone-preset.js +2 -0
  74. arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui.js +1 -1
  75. arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui.js.map +1 -0
  76. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_1.py +14 -0
  77. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_2.py +14 -0
  78. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_3.py +14 -0
  79. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_4.py +14 -0
  80. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_5.py +14 -0
  81. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_6.py +14 -0
  82. arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_7.py +14 -0
  83. arpakitlib/_arpakit_project_template_v_1/site/router/main_router.py +3 -0
  84. arpakitlib/_arpakit_project_template_v_1/sqladmin_/add_admin_in_app.py +24 -0
  85. arpakitlib/_arpakit_project_template_v_1/sqladmin_/admin_auth.py +54 -0
  86. arpakitlib/_arpakit_project_template_v_1/sqladmin_/model_view.py +95 -0
  87. arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db/sqlalchemy_db.py +22 -0
  88. arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db/sqlalchemy_model.py +129 -0
  89. arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db/util.py +28 -0
  90. arpakitlib/{_arpakit_project_template/src/sandbox/sandbox_3.py → _arpakit_project_template_v_1/test_data/make_test_data_1.py} +8 -3
  91. arpakitlib/{_arpakit_project_template/src/sandbox/sandbox_4.py → _arpakit_project_template_v_1/test_data/make_test_data_2.py} +8 -3
  92. arpakitlib/{_arpakit_project_template/src/sandbox/sandbox_1.py → _arpakit_project_template_v_1/test_data/make_test_data_3.py} +8 -3
  93. arpakitlib/{_arpakit_project_template/src/sandbox/sandbox_2.py → _arpakit_project_template_v_1/test_data/make_test_data_4.py} +8 -3
  94. arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_5.py +22 -0
  95. arpakitlib/_arpakit_project_template_v_1/tg_bot/blank/blank.py +5 -0
  96. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/tg_bot/blank/util.py +1 -1
  97. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/tg_bot/const.py +6 -3
  98. arpakitlib/_arpakit_project_template_v_1/tg_bot/event.py +51 -0
  99. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/tg_bot/filter/not_prod_mode.py +1 -1
  100. arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/tg_bot/filter/prod_mode.py +1 -1
  101. arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_/__init__.py +0 -0
  102. arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_/common.py +0 -0
  103. arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/__init__.py +0 -0
  104. arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/init_user.py +24 -0
  105. arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/middleware.py +12 -0
  106. arpakitlib/_arpakit_project_template_v_1/tg_bot/router/__init__.py +0 -0
  107. arpakitlib/_arpakit_project_template_v_1/tg_bot/router/arpakitlib_.py +10 -0
  108. arpakitlib/_arpakit_project_template_v_1/tg_bot/router/error.py +15 -0
  109. arpakitlib/_arpakit_project_template_v_1/tg_bot/router/healthcheck.py +10 -0
  110. arpakitlib/_arpakit_project_template_v_1/tg_bot/router/main_router.py +14 -0
  111. arpakitlib/_arpakit_project_template_v_1/tg_bot/start_tg_bot.py +34 -0
  112. arpakitlib/_arpakit_project_template_v_1/tg_bot/tg_bot.py +24 -0
  113. arpakitlib/_arpakit_project_template_v_1/tg_bot/tg_bot_dispatcher.py +19 -0
  114. arpakitlib/_arpakit_project_template_v_1/tg_bot/transmitted_tg_data.py +58 -0
  115. arpakitlib/_arpakit_project_template_v_1/tg_bot/util.py +0 -0
  116. arpakitlib/_arpakit_project_template_v_1/util/__init__.py +0 -0
  117. arpakitlib/_arpakit_project_template_v_1/util/read_arpakitlib_project_template_file.py +17 -0
  118. arpakitlib/ar_aiogram_util.py +41 -52
  119. arpakitlib/ar_arpakit_project_template_util.py +5 -11
  120. arpakitlib/ar_arpakitlib_cli_util.py +8 -2
  121. arpakitlib/ar_base_worker_util.py +35 -17
  122. arpakitlib/ar_class_util.py +11 -0
  123. arpakitlib/ar_func_util.py +19 -29
  124. arpakitlib/ar_http_request_util.py +10 -2
  125. arpakitlib/ar_rat_func_util.py +1 -1
  126. arpakitlib/ar_retry_func_util.py +4 -4
  127. arpakitlib/ar_schedule_uust_api_client_util.py +1 -1
  128. arpakitlib/ar_settings_util.py +3 -204
  129. arpakitlib/ar_sqladmin_util.py +7 -102
  130. arpakitlib/ar_sqlalchemy_util.py +65 -13
  131. arpakitlib/ar_type_util.py +0 -2
  132. {arpakitlib-1.7.257.dist-info → arpakitlib-1.8.1.dist-info}/METADATA +5 -3
  133. arpakitlib-1.8.1.dist-info/RECORD +261 -0
  134. {arpakitlib-1.7.257.dist-info → arpakitlib-1.8.1.dist-info}/WHEEL +1 -1
  135. arpakitlib/_arpakit_project_template/ARPAKITLIB +0 -1
  136. arpakitlib/_arpakit_project_template/manage/docker_ps.sh +0 -2
  137. arpakitlib/_arpakit_project_template/manage/git_branch.sh +0 -2
  138. arpakitlib/_arpakit_project_template/manage/poetry_add_plugin_export.sh +0 -2
  139. arpakitlib/_arpakit_project_template/manage/poetry_config_virtualenvs_in_project_true.sh +0 -2
  140. arpakitlib/_arpakit_project_template/manage/poetry_self_add_plugin_export.sh +0 -2
  141. arpakitlib/_arpakit_project_template/src/admin1/add_admin_in_app.py +0 -32
  142. arpakitlib/_arpakit_project_template/src/admin1/admin_auth.py +0 -29
  143. arpakitlib/_arpakit_project_template/src/admin1/model_view.py +0 -1
  144. arpakitlib/_arpakit_project_template/src/api/asgi.py +0 -3
  145. arpakitlib/_arpakit_project_template/src/api/auth.py +0 -53
  146. arpakitlib/_arpakit_project_template/src/api/const.py +0 -13
  147. arpakitlib/_arpakit_project_template/src/api/create_api_app.py +0 -43
  148. arpakitlib/_arpakit_project_template/src/api/create_handle_exception_.py +0 -59
  149. arpakitlib/_arpakit_project_template/src/api/event.py +0 -83
  150. arpakitlib/_arpakit_project_template/src/api/router/v1/get_api_error_info.py +0 -27
  151. arpakitlib/_arpakit_project_template/src/api/router/v1/main_router.py +0 -15
  152. arpakitlib/_arpakit_project_template/src/api/schema/v1/in_.py +0 -1
  153. arpakitlib/_arpakit_project_template/src/api/schema/v1/out.py +0 -1
  154. arpakitlib/_arpakit_project_template/src/api/transmitted_api_data.py +0 -7
  155. arpakitlib/_arpakit_project_template/src/api/util.py +0 -44
  156. arpakitlib/_arpakit_project_template/src/core/const.py +0 -41
  157. arpakitlib/_arpakit_project_template/src/core/settings.py +0 -21
  158. arpakitlib/_arpakit_project_template/src/core/util.py +0 -61
  159. arpakitlib/_arpakit_project_template/src/json_db/_drop_json_db.py +0 -13
  160. arpakitlib/_arpakit_project_template/src/json_db/_init_json_db.py +0 -11
  161. arpakitlib/_arpakit_project_template/src/json_db/_reinit_json_db.py +0 -13
  162. arpakitlib/_arpakit_project_template/src/json_db/_rm_all_records_in_json_db.py +0 -13
  163. arpakitlib/_arpakit_project_template/src/json_db/json_db.py +0 -11
  164. arpakitlib/_arpakit_project_template/src/json_db/util.py +0 -17
  165. arpakitlib/_arpakit_project_template/src/just_script/example.py +0 -16
  166. arpakitlib/_arpakit_project_template/src/operation_execution/_start_operation_executor_worker.py +0 -17
  167. arpakitlib/_arpakit_project_template/src/operation_execution/_start_scheduled_operation_creator_worker.py +0 -17
  168. arpakitlib/_arpakit_project_template/src/operation_execution/const.py +0 -9
  169. arpakitlib/_arpakit_project_template/src/operation_execution/operation_executor.py +0 -16
  170. arpakitlib/_arpakit_project_template/src/operation_execution/scheduled_operations.py +0 -29
  171. arpakitlib/_arpakit_project_template/src/operation_execution/util.py +0 -1
  172. arpakitlib/_arpakit_project_template/src/sandbox/sandbox_5.py +0 -17
  173. arpakitlib/_arpakit_project_template/src/sandbox/sandbox_6.py +0 -17
  174. arpakitlib/_arpakit_project_template/src/sandbox/sandbox_7.py +0 -17
  175. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_check_conn_sqlalchemy_db.py +0 -11
  176. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_drop_sqlalchemy_db.py +0 -13
  177. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_init_sqlalchemy_db.py +0 -11
  178. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_reinit_sqlalchemy_db.py +0 -13
  179. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_remove_operations.py +0 -15
  180. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/_remove_story_logs.py +0 -16
  181. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/sqlalchemy_model.py +0 -13
  182. arpakitlib/_arpakit_project_template/src/sqlalchemy_db/util.py +0 -27
  183. arpakitlib/_arpakit_project_template/src/test_data/make_test_data_1.py +0 -8
  184. arpakitlib/_arpakit_project_template/src/test_data/make_test_data_2.py +0 -8
  185. arpakitlib/_arpakit_project_template/src/test_data/make_test_data_3.py +0 -8
  186. arpakitlib/_arpakit_project_template/src/test_data/make_test_data_4.py +0 -8
  187. arpakitlib/_arpakit_project_template/src/test_data/make_test_data_5.py +0 -8
  188. arpakitlib/_arpakit_project_template/src/tg_bot/blank/blank.py +0 -10
  189. arpakitlib/_arpakit_project_template/src/tg_bot/event.py +0 -39
  190. arpakitlib/_arpakit_project_template/src/tg_bot/router/error.py +0 -3
  191. arpakitlib/_arpakit_project_template/src/tg_bot/router/router.py +0 -7
  192. arpakitlib/_arpakit_project_template/src/tg_bot/start_tg_bot.py +0 -11
  193. arpakitlib/_arpakit_project_template/src/tg_bot/transmitted_tg_data.py +0 -6
  194. arpakitlib/_arpakit_project_template/src/tg_bot/util.py +0 -44
  195. arpakitlib/ar_api_key_util.py +0 -21
  196. arpakitlib/ar_fastapi_static/swagger-ui/index.html +0 -19
  197. arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-bundle.js +0 -2
  198. arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle-core.js.map +0 -1
  199. arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle.js +0 -2
  200. arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-standalone-preset.js +0 -2
  201. arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.js.map +0 -1
  202. arpakitlib/ar_fastapi_util.py +0 -862
  203. arpakitlib/ar_operation_execution_util.py +0 -504
  204. arpakitlib/ar_sqlalchemy_model_util.py +0 -183
  205. arpakitlib-1.7.257.dist-info/RECORD +0 -236
  206. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/.gitignore +0 -0
  207. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/.python-version +0 -0
  208. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/LICENSE +0 -0
  209. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/additional_model}/__init__.py +0 -0
  210. /arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/additional_model/additional_model.py +0 -0
  211. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/alembic/README +0 -0
  212. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/alembic/script.py.mako +0 -0
  213. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/alembic.ini +0 -0
  214. /arpakitlib/{_arpakit_project_template/manage/note → _arpakit_project_template_v_1/api}/__init__.py +0 -0
  215. /arpakitlib/{_arpakit_project_template/resource → _arpakit_project_template_v_1/api/router}/__init__.py +0 -0
  216. /arpakitlib/{_arpakit_project_template/resource/static → _arpakit_project_template_v_1/api/router/v1}/__init__.py +0 -0
  217. /arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1/api/schema}/__init__.py +0 -0
  218. /arpakitlib/{_arpakit_project_template/src/additional_model → _arpakit_project_template_v_1/api/schema/common}/__init__.py +0 -0
  219. /arpakitlib/{_arpakit_project_template/src/admin1 → _arpakit_project_template_v_1/api/schema/v1}/__init__.py +0 -0
  220. /arpakitlib/{_arpakit_project_template/manage/note/note_1.txt → _arpakit_project_template_v_1/api/util.py} +0 -0
  221. /arpakitlib/{_arpakit_project_template/src/api → _arpakit_project_template_v_1/business_service}/__init__.py +0 -0
  222. /arpakitlib/{_arpakit_project_template/src/api/router → _arpakit_project_template_v_1/celery_}/__init__.py +0 -0
  223. /arpakitlib/{_arpakit_project_template/src/api/router/v1 → _arpakit_project_template_v_1/command}/__init__.py +0 -0
  224. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/alembic_upgrade_head .sh +0 -0
  225. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/docker_ps_a.sh +0 -0
  226. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/docker_rm_postgres.sh +0 -0
  227. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/docker_run_postgres.sh +0 -0
  228. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/docker_start_postgres.sh +0 -0
  229. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/docker_stop_postgres.sh +0 -0
  230. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_commit.sh +0 -0
  231. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_push_arpakit_company_github_1.sh +0 -0
  232. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_push_arpakit_company_gitlab_1.sh +0 -0
  233. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_push_arpakit_github_1.sh +0 -0
  234. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_push_arpakit_gitlab_1.sh +0 -0
  235. /arpakitlib/{_arpakit_project_template/manage/git_remote_v.sh → _arpakit_project_template_v_1/command/git_remote.sh} +0 -0
  236. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_set_arpakit_company_origin.sh +0 -0
  237. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_set_arpakit_origin.sh +0 -0
  238. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/git_status.sh +0 -0
  239. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_check.sh +0 -0
  240. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_clear_cache.sh +0 -0
  241. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_config.sh +0 -0
  242. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_install.sh +0 -0
  243. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_lock.sh +0 -0
  244. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_remove_and_add_arpakitlib.sh +0 -0
  245. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_show.sh +0 -0
  246. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_show_arpakitlib.sh +0 -0
  247. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_update.sh +0 -0
  248. /arpakitlib/{_arpakit_project_template/manage → _arpakit_project_template_v_1/command}/poetry_update_arpakitlib.sh +0 -0
  249. /arpakitlib/{_arpakit_project_template/src/api/schema → _arpakit_project_template_v_1/core}/__init__.py +0 -0
  250. /arpakitlib/{_arpakit_project_template/src/api/schema/v1 → _arpakit_project_template_v_1/json_db}/__init__.py +0 -0
  251. /arpakitlib/{_arpakit_project_template/src/business_service → _arpakit_project_template_v_1/note}/__init__.py +0 -0
  252. /arpakitlib/{_arpakit_project_template/manage/note/note_2.txt → _arpakit_project_template_v_1/note/note_1.txt} +0 -0
  253. /arpakitlib/{_arpakit_project_template/manage/note/note_3.txt → _arpakit_project_template_v_1/note/note_2.txt} +0 -0
  254. /arpakitlib/{_arpakit_project_template/manage/note/note_4.txt → _arpakit_project_template_v_1/note/note_3.txt} +0 -0
  255. /arpakitlib/{_arpakit_project_template/manage/note/note_5.txt → _arpakit_project_template_v_1/note/note_4.txt} +0 -0
  256. /arpakitlib/{_arpakit_project_template/src/core/__init__.py → _arpakit_project_template_v_1/note/note_5.txt} +0 -0
  257. /arpakitlib/{_arpakit_project_template/src/json_db → _arpakit_project_template_v_1/operation_execution}/__init__.py +0 -0
  258. /arpakitlib/{_arpakit_project_template/src/just_script/__init__.py → _arpakit_project_template_v_1/operation_execution/const.py} +0 -0
  259. /arpakitlib/{_arpakit_project_template/src/operation_execution → _arpakit_project_template_v_1/resource}/__init__.py +0 -0
  260. /arpakitlib/{_arpakit_project_template/resource/static/healthcheck → _arpakit_project_template_v_1/resource/static/1} +0 -0
  261. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/healthcheck +0 -0
  262. /arpakitlib/{_arpakit_project_template → _arpakit_project_template_v_1}/resource/static/helloworld +0 -0
  263. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/redoc/redoc.standalone.js +0 -0
  264. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/favicon-16x16.png +0 -0
  265. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/favicon-32x32.png +0 -0
  266. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/index.css +0 -0
  267. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/oauth2-redirect.html +0 -0
  268. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-initializer.js +0 -0
  269. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui-bundle.js.map +0 -0
  270. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui-es-bundle.js.map +0 -0
  271. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui-standalone-preset.js.map +0 -0
  272. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui.css +0 -0
  273. /arpakitlib/{ar_fastapi_static → _arpakit_project_template_v_1/resource/static}/swagger-ui/swagger-ui.css.map +0 -0
  274. /arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/sandbox/__init__.py +0 -0
  275. /arpakitlib/{_arpakit_project_template/src/sqlalchemy_db → _arpakit_project_template_v_1/site}/__init__.py +0 -0
  276. /arpakitlib/{_arpakit_project_template/src/test_data/__init__.py → _arpakit_project_template_v_1/site/asgi.py} +0 -0
  277. /arpakitlib/{_arpakit_project_template/src/tg_bot/__init__.py → _arpakit_project_template_v_1/site/consts.py} +0 -0
  278. /arpakitlib/{_arpakit_project_template/src/tg_bot/blank/__init__.py → _arpakit_project_template_v_1/site/create_site_app.py} +0 -0
  279. /arpakitlib/{_arpakit_project_template/src/tg_bot/filter/__init__.py → _arpakit_project_template_v_1/site/event.py} +0 -0
  280. /arpakitlib/{_arpakit_project_template/src/tg_bot/handler/__init__.py → _arpakit_project_template_v_1/site/exception_handler.py} +0 -0
  281. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb → _arpakit_project_template_v_1/site/router}/__init__.py +0 -0
  282. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb/inline_ → _arpakit_project_template_v_1/sqladmin_}/__init__.py +0 -0
  283. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb/static_ → _arpakit_project_template_v_1/sqlalchemy_db}/__init__.py +0 -0
  284. /arpakitlib/{_arpakit_project_template/src → _arpakit_project_template_v_1}/sqlalchemy_db/const.py +0 -0
  285. /arpakitlib/{_arpakit_project_template/src/tg_bot/middleware → _arpakit_project_template_v_1/test_data}/__init__.py +0 -0
  286. /arpakitlib/{_arpakit_project_template/src/tg_bot/router → _arpakit_project_template_v_1/tg_bot}/__init__.py +0 -0
  287. /arpakitlib/{_arpakit_project_template/src/util → _arpakit_project_template_v_1/tg_bot/blank}/__init__.py +0 -0
  288. /arpakitlib/{_arpakit_project_template/src/tg_bot/handler/cmd_arpakitlib.py → _arpakit_project_template_v_1/tg_bot/filter/__init__.py} +0 -0
  289. /arpakitlib/{_arpakit_project_template/src/tg_bot/handler/cmd_healthcheck.py → _arpakit_project_template_v_1/tg_bot/kb/__init__.py} +0 -0
  290. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb/inline_/callback.py → _arpakit_project_template_v_1/tg_bot/kb/inline_/__init__.py} +0 -0
  291. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb/inline_/common.py → _arpakit_project_template_v_1/tg_bot/kb/inline_/callback.py} +0 -0
  292. /arpakitlib/{_arpakit_project_template/src/tg_bot/kb/static_ → _arpakit_project_template_v_1/tg_bot/kb/inline_}/common.py +0 -0
  293. {arpakitlib-1.7.257.dist-info → arpakitlib-1.8.1.dist-info}/LICENSE +0 -0
  294. {arpakitlib-1.7.257.dist-info → arpakitlib-1.8.1.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,5 @@
1
+ from api.schema.base_schema import BaseSI
2
+
3
+
4
+ class BaseCommonSI(BaseSI):
5
+ pass
@@ -0,0 +1,60 @@
1
+ import datetime as dt
2
+ from typing import Any
3
+
4
+ from api.schema.base_schema import BaseSO
5
+
6
+
7
+ class BaseCommonSO(BaseSO):
8
+ pass
9
+
10
+
11
+ class ErrorCommonSO(BaseCommonSO):
12
+ has_error: bool = True
13
+ error_code: str | None = None
14
+ error_specification_code: str | None = None
15
+ error_description: str | None = None
16
+ error_data: dict[str, Any] = {}
17
+
18
+
19
+ class DatetimeCommonSO(BaseCommonSO):
20
+ date: dt.date
21
+ datetime: dt.datetime | None = None
22
+ year: int
23
+ month: int
24
+ day: int
25
+ hour: int | None = None
26
+ minute: int | None = None
27
+ second: int | None = None
28
+ microsecond: int | None = None
29
+
30
+ @classmethod
31
+ def from_datetime(cls, datetime_: dt.datetime):
32
+ return cls(
33
+ date=datetime_.date(),
34
+ datetime=datetime_,
35
+ year=datetime_.year,
36
+ month=datetime_.month,
37
+ day=datetime_.day,
38
+ hour=datetime_.hour,
39
+ minute=datetime_.minute,
40
+ second=datetime_.second,
41
+ microsecond=datetime_.microsecond
42
+ )
43
+
44
+ @classmethod
45
+ def from_date(cls, date_: dt.date):
46
+ return cls(
47
+ date=date_,
48
+ year=date_.year,
49
+ month=date_.month,
50
+ day=date_.day
51
+ )
52
+
53
+
54
+ class RawDataCommonSO(BaseCommonSO):
55
+ data: dict[str, Any] = {}
56
+
57
+
58
+ class ErrorsInfoCommonSO(BaseCommonSO):
59
+ api_error_codes: list[str] = []
60
+ api_error_specification_codes: list[str] = []
@@ -0,0 +1,5 @@
1
+ from api.schema.base_schema import BaseSI
2
+
3
+
4
+ class BaseV1SI(BaseSI):
5
+ pass
@@ -0,0 +1,47 @@
1
+ from __future__ import annotations
2
+
3
+ import datetime as dt
4
+ from typing import Any
5
+
6
+ from api.schema.base_schema import BaseSO
7
+ from sqlalchemy_db.sqlalchemy_model import OperationDBM, StoryLogDBM
8
+
9
+
10
+ class BaseV1SO(BaseSO):
11
+ pass
12
+
13
+
14
+ class HealthcheckV1SO(BaseV1SO):
15
+ is_ok: bool = True
16
+
17
+
18
+ class _SimpleDBMV1SO(BaseV1SO):
19
+ id: int
20
+ long_id: str
21
+ creation_dt: dt.datetime
22
+
23
+
24
+ class StoryLogV1SO(_SimpleDBMV1SO):
25
+ level: str
26
+ type: str | None = None
27
+ title: str | None = None
28
+ data: dict[str, Any] = {}
29
+
30
+ @classmethod
31
+ def from_story_log_dbm(cls, *, story_log_dbm: StoryLogDBM) -> StoryLogV1SO:
32
+ return cls.model_validate(story_log_dbm.simple_dict_with_sd_properties())
33
+
34
+
35
+ class OperationV1SO(_SimpleDBMV1SO):
36
+ execution_start_dt: dt.datetime | None = None
37
+ execution_finish_dt: dt.datetime | None = None
38
+ status: str
39
+ type: str
40
+ input_data: dict[str, Any] = {}
41
+ output_data: dict[str, Any] = {}
42
+ error_data: dict[str, Any] = {}
43
+ duration_total_seconds: float | None = None
44
+
45
+ @classmethod
46
+ def from_operation_dbm(cls, *, operation_dbm: OperationDBM) -> OperationV1SO:
47
+ return cls.model_validate(operation_dbm.simple_dict_with_sd_properties())
@@ -0,0 +1,3 @@
1
+ {
2
+ "arpakitlib_project_template_version": "1"
3
+ }
@@ -1,6 +1,6 @@
1
1
  import logging
2
2
 
3
- from src.core.util import setup_logging
3
+ from core.util import setup_logging
4
4
 
5
5
  _logger = logging.getLogger(__name__)
6
6
 
@@ -0,0 +1,51 @@
1
+ import asyncio
2
+
3
+ from arpakitlib.ar_type_util import raise_for_type
4
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
5
+ from sqlalchemy_db.sqlalchemy_model import OperationDBM
6
+
7
+
8
+ def remove_operations(
9
+ *,
10
+ filter_operation_ids: list[int] | int | None = None,
11
+ filter_operation_statuses: list[str] | str | None = None,
12
+ filter_operation_types: list[str] | str | None = None,
13
+ ):
14
+ if isinstance(filter_operation_ids, int):
15
+ filter_operation_ids = [filter_operation_ids]
16
+ if filter_operation_ids is not None:
17
+ raise_for_type(filter_operation_ids, list)
18
+
19
+ if isinstance(filter_operation_statuses, str):
20
+ filter_operation_statuses = [filter_operation_statuses]
21
+ if filter_operation_statuses is not None:
22
+ raise_for_type(filter_operation_statuses, list)
23
+
24
+ if isinstance(filter_operation_types, str):
25
+ filter_operation_types = [filter_operation_types]
26
+ if filter_operation_types is not None:
27
+ raise_for_type(filter_operation_types, list)
28
+
29
+ with get_cached_sqlalchemy_db().new_session() as session:
30
+ query = session.query(OperationDBM)
31
+ if filter_operation_ids is not None:
32
+ query = query.filter(OperationDBM.id.in_(filter_operation_ids))
33
+ if filter_operation_statuses is not None:
34
+ query = query.filter(OperationDBM.status.in_(filter_operation_statuses))
35
+ if filter_operation_types is not None:
36
+ query = query.filter(OperationDBM.type.in_(filter_operation_types))
37
+ query.delete()
38
+ session.commit()
39
+
40
+
41
+ def __example():
42
+ remove_operations(filter_operation_statuses="123")
43
+
44
+
45
+ async def __async_example():
46
+ pass
47
+
48
+
49
+ if __name__ == '__main__':
50
+ __example()
51
+ asyncio.run(__async_example())
@@ -0,0 +1,2 @@
1
+ cd ..
2
+ alembic history
@@ -0,0 +1,2 @@
1
+ cd ..
2
+ alembic revision --autogenerate -m "no_message"
@@ -1,10 +1,10 @@
1
1
  from arpakitlib.ar_json_util import safely_transfer_str_to_json_obj_to_json_str
2
2
 
3
3
 
4
- def __json_beautify():
4
+ def __command():
5
5
  s = input("JSON:\n")
6
6
  print(safely_transfer_str_to_json_obj_to_json_str(s))
7
7
 
8
8
 
9
9
  if __name__ == '__main__':
10
- __json_beautify()
10
+ __command()
@@ -1,14 +1,14 @@
1
1
  import logging
2
2
 
3
- from src.core.util import setup_logging
3
+ from core.util import setup_logging
4
4
 
5
5
  _logger = logging.getLogger(__name__)
6
6
 
7
7
 
8
- def _check_logging():
8
+ def __command():
9
9
  setup_logging()
10
10
  _logger.info("logging is good")
11
11
 
12
12
 
13
13
  if __name__ == '__main__':
14
- _check_logging()
14
+ __command()
@@ -0,0 +1,11 @@
1
+ from core.util import setup_logging
2
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
3
+
4
+
5
+ def __command():
6
+ setup_logging()
7
+ get_cached_sqlalchemy_db().check_conn()
8
+
9
+
10
+ if __name__ == '__main__':
11
+ __command()
@@ -0,0 +1,13 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from json_db.json_db import get_cached_json_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ get_cached_json_db().drop()
10
+
11
+
12
+ if __name__ == '__main__':
13
+ __command()
@@ -0,0 +1,14 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ get_cached_sqlalchemy_db().drop()
10
+ get_cached_sqlalchemy_db().drop_celery_tables()
11
+
12
+
13
+ if __name__ == '__main__':
14
+ __command()
@@ -1,14 +1,14 @@
1
1
  import os.path
2
2
 
3
3
  from arpakitlib.ar_json_util import safely_transfer_obj_to_json_str
4
- from src.core.const import ProjectPaths
5
- from src.core.settings import Settings, get_cached_settings
4
+ from core.const import ProjectPaths
5
+ from core.settings import Settings, get_cached_settings
6
6
 
7
7
 
8
- def _generate_settings_env_example():
8
+ def __command():
9
9
  print(safely_transfer_obj_to_json_str(get_cached_settings().model_dump(mode="json")))
10
10
  Settings.save_env_example_to_file(filepath=os.path.join(ProjectPaths.base_dirpath, "example.env"))
11
11
 
12
12
 
13
13
  if __name__ == '__main__':
14
- _generate_settings_env_example()
14
+ __command()
@@ -1,6 +1,6 @@
1
- def __hello_world():
1
+ def __command():
2
2
  print("Hello world")
3
3
 
4
4
 
5
5
  if __name__ == '__main__':
6
- __hello_world()
6
+ __command()
@@ -0,0 +1,11 @@
1
+ from core.util import setup_logging
2
+ from json_db.json_db import get_cached_json_db
3
+
4
+
5
+ def __command():
6
+ setup_logging()
7
+ get_cached_json_db().init()
8
+
9
+
10
+ if __name__ == '__main__':
11
+ __command()
@@ -0,0 +1,11 @@
1
+ from core.util import setup_logging
2
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
3
+
4
+
5
+ def __command():
6
+ setup_logging()
7
+ get_cached_sqlalchemy_db().init()
8
+
9
+
10
+ if __name__ == '__main__':
11
+ __command()
@@ -0,0 +1,13 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from json_db.json_db import get_cached_json_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ get_cached_json_db().reinit()
10
+
11
+
12
+ if __name__ == '__main__':
13
+ __command()
@@ -0,0 +1,13 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ get_cached_sqlalchemy_db().reinit()
10
+
11
+
12
+ if __name__ == '__main__':
13
+ __command()
@@ -0,0 +1,13 @@
1
+ from business_service.remove_operations import remove_operations
2
+ from core.settings import get_cached_settings
3
+ from core.util import setup_logging
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ remove_operations()
10
+
11
+
12
+ if __name__ == '__main__':
13
+ __command()
@@ -0,0 +1,16 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
4
+ from sqlalchemy_db.sqlalchemy_model import StoryLogDBM
5
+
6
+
7
+ def __command():
8
+ setup_logging()
9
+ get_cached_settings().raise_if_mode_type_prod()
10
+ with get_cached_sqlalchemy_db().new_session() as session:
11
+ session.query(StoryLogDBM).delete()
12
+ session.commit()
13
+
14
+
15
+ if __name__ == '__main__':
16
+ __command()
@@ -0,0 +1,13 @@
1
+ from core.settings import get_cached_settings
2
+ from core.util import setup_logging
3
+ from json_db.json_db import get_cached_json_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ get_cached_settings().raise_if_mode_type_prod()
9
+ get_cached_json_db().rm_all_records()
10
+
11
+
12
+ if __name__ == '__main__':
13
+ __command()
@@ -1,10 +1,10 @@
1
1
  from arpakitlib.ar_json_util import safely_transfer_obj_to_json_str
2
- from src.core.settings import get_cached_settings
2
+ from core.settings import get_cached_settings
3
3
 
4
4
 
5
- def _check_settings():
5
+ def __command():
6
6
  print(safely_transfer_obj_to_json_str(get_cached_settings().model_dump(mode="json")))
7
7
 
8
8
 
9
9
  if __name__ == '__main__':
10
- _check_settings()
10
+ __command()
@@ -1,13 +1,13 @@
1
1
  import uvicorn
2
2
 
3
- from src.core.settings import get_cached_settings
4
- from src.core.util import setup_logging
3
+ from core.settings import get_cached_settings
4
+ from core.util import setup_logging
5
5
 
6
6
 
7
- def _start_api_for_dev_with_reload():
7
+ def __command():
8
8
  setup_logging()
9
9
  uvicorn.run(
10
- "src.api.asgi:app",
10
+ "api.asgi:app",
11
11
  port=get_cached_settings().api_port,
12
12
  host="localhost",
13
13
  workers=1,
@@ -16,4 +16,4 @@ def _start_api_for_dev_with_reload():
16
16
 
17
17
 
18
18
  if __name__ == '__main__':
19
- _start_api_for_dev_with_reload()
19
+ __command()
@@ -1,13 +1,13 @@
1
1
  import uvicorn
2
2
 
3
- from src.core.settings import get_cached_settings
4
- from src.core.util import setup_logging
3
+ from core.settings import get_cached_settings
4
+ from core.util import setup_logging
5
5
 
6
6
 
7
- def _start_api_for_dev_without_reload():
7
+ def __command():
8
8
  setup_logging()
9
9
  uvicorn.run(
10
- "src.api.asgi:app",
10
+ "api.asgi:app",
11
11
  port=get_cached_settings().api_port,
12
12
  host="localhost",
13
13
  workers=1,
@@ -16,4 +16,4 @@ def _start_api_for_dev_without_reload():
16
16
 
17
17
 
18
18
  if __name__ == '__main__':
19
- _start_api_for_dev_without_reload()
19
+ __command()
@@ -0,0 +1,14 @@
1
+ import asyncio
2
+
3
+ from core.util import setup_logging
4
+ from operation_execution.operation_executor_worker import create_operation_executor_worker
5
+
6
+
7
+ def __command():
8
+ setup_logging()
9
+ worker = create_operation_executor_worker()
10
+ asyncio.run(worker.async_safe_run())
11
+
12
+
13
+ if __name__ == '__main__':
14
+ __command()
@@ -0,0 +1,14 @@
1
+ import asyncio
2
+
3
+ from core.util import setup_logging
4
+ from operation_execution.scheduled_operation_creator_worker import create_scheduled_operation_creator_worker
5
+
6
+
7
+ async def __command():
8
+ setup_logging()
9
+ worker = create_scheduled_operation_creator_worker()
10
+ await worker.async_safe_run()
11
+
12
+
13
+ if __name__ == '__main__':
14
+ asyncio.run(__command())
@@ -0,0 +1,15 @@
1
+ from core.util import setup_logging
2
+ from operation_execution.operation_executor_worker import OperationExecutorWorker
3
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
4
+
5
+
6
+ def __command():
7
+ setup_logging()
8
+ worker = OperationExecutorWorker(
9
+ sqlalchemy_db=get_cached_sqlalchemy_db(),
10
+ )
11
+ worker.sync_safe_run()
12
+
13
+
14
+ if __name__ == '__main__':
15
+ __command()
@@ -0,0 +1,22 @@
1
+ from arpakitlib.ar_base_worker_util import safe_run_workers_in_background, SafeRunInBackgroundModes
2
+ from core.util import setup_logging
3
+ from operation_execution.operation_executor_worker import OperationExecutorWorker
4
+ from sqlalchemy_db.sqlalchemy_db import get_cached_sqlalchemy_db
5
+
6
+
7
+ def __command():
8
+ setup_logging()
9
+ workers = []
10
+ for i in range(int(input("amount of workers: "))):
11
+ workers.append(OperationExecutorWorker(
12
+ sqlalchemy_db=get_cached_sqlalchemy_db(),
13
+ ))
14
+ safe_run_workers_in_background(
15
+ workers=workers,
16
+ mode=SafeRunInBackgroundModes.thread
17
+ )
18
+ input("press to close")
19
+
20
+
21
+ if __name__ == '__main__':
22
+ __command()
@@ -0,0 +1,12 @@
1
+ from core.util import setup_logging
2
+ from operation_execution.scheduled_operation_creator_worker import create_scheduled_operation_creator_worker
3
+
4
+
5
+ def __command():
6
+ setup_logging()
7
+ worker = create_scheduled_operation_creator_worker()
8
+ worker.sync_safe_run()
9
+
10
+
11
+ if __name__ == '__main__':
12
+ __command()
@@ -0,0 +1,23 @@
1
+ from functools import lru_cache
2
+
3
+ from arpakitlib.ar_file_storage_in_dir_util import FileStorageInDir
4
+ from core.settings import get_cached_settings
5
+
6
+
7
+ def create_cache_file_storage_in_dir() -> FileStorageInDir | None:
8
+ if get_cached_settings().cache_dirpath is None:
9
+ return None
10
+ return FileStorageInDir(dirpath=get_cached_settings().cache_dirpath)
11
+
12
+
13
+ @lru_cache()
14
+ def get_cached_cache_file_storage_in_dir() -> FileStorageInDir | None:
15
+ return create_cache_file_storage_in_dir()
16
+
17
+
18
+ def __example():
19
+ print(get_cached_cache_file_storage_in_dir().dirpath)
20
+
21
+
22
+ if __name__ == '__main__':
23
+ __example()
@@ -0,0 +1,33 @@
1
+ import asyncio
2
+ import os
3
+ import pathlib
4
+
5
+ from arpakitlib.ar_enumeration_util import Enumeration
6
+ from arpakitlib.ar_json_util import safely_transfer_obj_to_json_str
7
+
8
+
9
+ class ProjectPaths(Enumeration):
10
+ base_dirpath: str = str(pathlib.Path(__file__).parent.parent)
11
+
12
+ env_filepath: str = os.path.join(base_dirpath, ".env")
13
+
14
+ resource_dirpath: str = os.path.join(base_dirpath, "resource")
15
+
16
+ static_dirpath: str = os.path.join(resource_dirpath, "static")
17
+
18
+ templates_dirpath: str = os.path.join(resource_dirpath, "templates")
19
+
20
+ arpakit_lib_project_template_filepath: str = os.path.join(base_dirpath, "arpakitlib_project_template.json")
21
+
22
+
23
+ def __example():
24
+ print(safely_transfer_obj_to_json_str(ProjectPaths.key_to_value()))
25
+
26
+
27
+ async def __async_example():
28
+ pass
29
+
30
+
31
+ if __name__ == '__main__':
32
+ __example()
33
+ asyncio.run(__async_example())
@@ -0,0 +1,23 @@
1
+ from functools import lru_cache
2
+
3
+ from arpakitlib.ar_file_storage_in_dir_util import FileStorageInDir
4
+ from core.settings import get_cached_settings
5
+
6
+
7
+ def create_dump_file_storage_in_dir() -> FileStorageInDir | None:
8
+ if get_cached_settings().dump_dirpath is None:
9
+ return None
10
+ return FileStorageInDir(dirpath=get_cached_settings().dump_dirpath)
11
+
12
+
13
+ @lru_cache()
14
+ def get_cached_dump_file_storage_in_dir() -> FileStorageInDir | None:
15
+ return create_dump_file_storage_in_dir()
16
+
17
+
18
+ def __example():
19
+ print(get_cached_dump_file_storage_in_dir().dirpath)
20
+
21
+
22
+ if __name__ == '__main__':
23
+ __example()
@@ -0,0 +1,14 @@
1
+ from functools import lru_cache
2
+
3
+ from fastapi.templating import Jinja2Templates
4
+
5
+ from core.const import ProjectPaths
6
+
7
+
8
+ def create_jinja2_templates() -> Jinja2Templates:
9
+ return Jinja2Templates(directory=ProjectPaths.templates_dirpath)
10
+
11
+
12
+ @lru_cache()
13
+ def get_cached_jinja2_templates() -> Jinja2Templates:
14
+ return create_jinja2_templates()