arpakitlib 1.8.4__tar.gz → 1.8.5__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.
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/PKG-INFO +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/alembic/env.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/auth.py +31 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/event.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/exception_handler.py +2 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/main_router.py +0 -3
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/clear_log_file.py +4 -5
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/get_errors_info.py +10 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/get_log_file.py +4 -5
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/main_router.py +12 -20
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/raise_fake_error.py +4 -5
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/api/router/v1/reinit_sqlalchemy_db.py +33 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/v1/out.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/business_service/remove_operations.py +2 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/check_sqlalchemy_db.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/drop_sqlalchemy_db.py +2 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/init_sqlalchemy_db.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/reinit_sqlalchemy_db.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/remove_story_logs.py +2 -2
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_api_for_prod.py +19 -0
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_sync_operation_executor_worker.py → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_operation_executor_worker_for_not_prod.py +1 -1
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_sync_operation_executor_workers.py → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_operation_executor_workers_for_not_prod.py +1 -1
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_tg_bot_for_prod.py +11 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/const.py +3 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/settings.py +2 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/operation_executor_worker.py +2 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/scheduled_operation_creator_worker.py +2 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/scheduled_operations.py +1 -1
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/resource/static/helloworld +1 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sqladmin_/add_admin_in_app.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sqladmin_/model_view.py +1 -1
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db_}/sqlalchemy_db.py +1 -1
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db_}/sqlalchemy_model.py +1 -1
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/blank/blank.py +24 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/const.py +1 -1
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/event.py +77 -0
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/filter_.py +69 -0
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_/callback.py +37 -0
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_/common.py +15 -0
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_/common.py +14 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/init_user.py +0 -3
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/middleware.py +12 -0
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/router/arpakitlib_project_template_info.py +14 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/router/error.py +0 -3
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/router/healthcheck.py +2 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/router/main_router.py +7 -3
- arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/start_tg_bot.py +39 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/tg_bot_dispatcher.py +3 -2
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/util/read_arpakitlib_project_template_file.py +1 -1
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_aiogram_util.py +3 -123
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/pyproject.toml +1 -1
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_async_operation_executor_worker.py +0 -14
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_async_scheduled_operation_creator_worker.py +0 -14
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/blank/blank.py +0 -5
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/blank/util.py +0 -12
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/event.py +0 -51
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/filter/not_prod_mode.py +0 -8
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/filter/prod_mode.py +0 -8
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_/callback.py +0 -0
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_/common.py +0 -0
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_/common.py +0 -0
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware/middleware.py +0 -12
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/router/arpakitlib_.py +0 -10
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/start_tg_bot.py +0 -34
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/transmitted_tg_data.py +0 -58
- arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/util/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/LICENSE +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/README.md +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/.gitignore +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/.python-version +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/LICENSE +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/README.md +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/additional_model/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/additional_model/additional_model.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/alembic/README +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/alembic/script.py.mako +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/alembic.ini +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/asgi.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/const.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/create_api_app.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/exception.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/openapi_ui.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/response.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/__init__.py +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/api/router/v1/arpakitlib_project_template.py → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/api/router/v1/arpakitlib_project_template_info.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/check_auth.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/healthcheck.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/router/v1/now_utc_datetime.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/base_schema.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/common/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/common/in_.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/common/out.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/v1/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/schema/v1/in_.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/api/util.py +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/arpakitlib_project_template.json → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/arpakitlib_project_template_info.json +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/business_service/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/business_service/hello_world.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/celery_/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/alembic_history.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/alembic_revision_autogenerate.sh +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/alembic_upgrade_head .sh → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/alembic_upgrade_head.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/beautify_json.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/check_logging.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/docker_ps_a.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/docker_rm_postgres.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/docker_run_postgres.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/docker_start_postgres.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/docker_stop_postgres.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/drop_json_db.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/generate_settings_env_example.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_commit.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_push_arpakit_company_github_1.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_push_arpakit_company_gitlab_1.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_push_arpakit_github_1.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_push_arpakit_gitlab_1.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_remote_v.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_set_arpakit_company_origin.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_set_arpakit_origin.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_set_divarteam_origin.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/git_status.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/hello_world.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/init_json_db.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_check.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_clear_cache.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_config.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_install.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_lock.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_remove_and_add_arpakitlib.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_show.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_show_arpakitlib.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_update.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/poetry_update_arpakitlib.sh +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/reinit_json_db.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/remove_operations.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/rm_all_records_in_json_db.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/command/show_settings.py +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_api_with_reload.py → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_api_with_reload_for_not_prod.py +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_api_without_reload.py → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_api_without_reload_for_not_prod.py +0 -0
- /arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/command/start_sync_scheduled_operation_creator_worker.py → /arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/command/start_scheduled_operation_creator_worker_for_not_prod.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/cache_file_storage_in_dir.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/dump_file_storage_in_dir.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/jinja2_templates.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/media_file_storage_in_dir.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/example.env +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/json_db/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/json_db/json_db.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/resource/static → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/more}/helloworld +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/note_1.txt +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/note_2.txt +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/note_3.txt +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/note_4.txt +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/note/note_5.txt +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/const.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/operation_execution/util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/1 +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/healthcheck +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/openapi-favicon.png +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/redoc/redoc.standalone.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/favicon-16x16.png +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/favicon-32x32.png +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/index.css +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/index.html +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/oauth2-redirect.html +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-initializer.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-bundle.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-bundle.js.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle-core.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle-core.js.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-es-bundle.js.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-standalone-preset.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui-standalone-preset.js.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui.css +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui.css.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui.js +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/resource/static/swagger-ui/swagger-ui.js.map +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_1.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_2.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_3.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_4.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_5.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_6.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sandbox/sandbox_7.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/asgi.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/consts.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/create_site_app.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/event.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/exception_handler.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/router/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/site/router/main_router.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sqladmin_/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/sqladmin_/admin_auth.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db_}/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db_}/const.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/sqlalchemy_db_}/util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_1.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_2.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_3.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_4.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/test_data/make_test_data_5.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/blank/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/filter → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb}/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_}/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/inline_ → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_}/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/kb/static_ → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware}/__init__.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/middleware → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/tg_bot/router}/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/tg_bot.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/util.py +0 -0
- {arpakitlib-1.8.4/arpakitlib/_arpakit_project_template_v_1/tg_bot/router → arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/util}/__init__.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_additional_model_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_arpakit_lib_module_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_arpakit_project_template_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_arpakit_schedule_uust_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_arpakit_schedule_uust_site_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_arpakitlib_cli_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_base64_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_base_worker_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_blank_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_cache_file_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_class_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_cryptomus_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_datetime_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_dict_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_dream_ai_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_encrypt_decrypt_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_enumeration_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_exception_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_file_storage_in_dir_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_file_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_func_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_hash_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_http_request_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_ip_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_json_db_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_json_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_jwt_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_list_of_dicts_to_xlsx.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_list_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_logging_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_mongodb_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_need_type_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_openai_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_parse_command.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_postgresql_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_rat_func_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_retry_func_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_run_cmd_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_schedule_uust_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_settings_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_sleep_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_sqladmin_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_sqlalchemy_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_ssh_runner_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_steam_payment_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_str_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_type_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_wata_api_client.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_yookassa_api_client_util.py +0 -0
- {arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/ar_zabbix_api_client_util.py +0 -0
{arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/alembic/env.py
RENAMED
@@ -6,7 +6,7 @@ from sqlalchemy import pool
|
|
6
6
|
|
7
7
|
from arpakitlib.ar_type_util import raise_for_type
|
8
8
|
from core.settings import get_cached_settings
|
9
|
-
from
|
9
|
+
from sqlalchemy_db_.sqlalchemy_model import get_simple_dbm
|
10
10
|
|
11
11
|
# this is the Alembic Config object, which provides
|
12
12
|
# access to the values within the .ini file in use.
|
@@ -31,6 +31,10 @@ class APIAuthData(BaseModel):
|
|
31
31
|
is_token_correct: bool | None = None
|
32
32
|
is_api_key_correct: bool | None = None
|
33
33
|
|
34
|
+
require_mode_type: str | None = None
|
35
|
+
require_not_mode_type: str | None = None
|
36
|
+
current_mode_type: str | None = None
|
37
|
+
|
34
38
|
|
35
39
|
def api_auth(
|
36
40
|
*,
|
@@ -41,7 +45,9 @@ def api_auth(
|
|
41
45
|
correct_api_keys: str | list[str] | None = None,
|
42
46
|
correct_tokens: str | list[str] | None = None,
|
43
47
|
require_correct_api_key: bool = False,
|
44
|
-
require_correct_token: bool = False
|
48
|
+
require_correct_token: bool = False,
|
49
|
+
require_mode_type: str | None = None,
|
50
|
+
require_not_mode_type: str | None = None
|
45
51
|
) -> Callable:
|
46
52
|
if isinstance(correct_api_keys, str):
|
47
53
|
correct_api_keys = [correct_api_keys]
|
@@ -80,7 +86,10 @@ def api_auth(
|
|
80
86
|
require_api_key_string=require_api_key_string,
|
81
87
|
require_token_string=require_token_string,
|
82
88
|
require_correct_api_key=require_correct_api_key,
|
83
|
-
require_correct_token=require_correct_token
|
89
|
+
require_correct_token=require_correct_token,
|
90
|
+
require_mode_type=require_mode_type,
|
91
|
+
require_not_mode_type=require_not_mode_type,
|
92
|
+
current_mode_type=get_cached_settings().mode_type
|
84
93
|
)
|
85
94
|
|
86
95
|
# parse api_key
|
@@ -130,6 +139,26 @@ def api_auth(
|
|
130
139
|
if not api_auth_data.token_string:
|
131
140
|
api_auth_data.token_string = None
|
132
141
|
|
142
|
+
# require_mode_type
|
143
|
+
|
144
|
+
if require_mode_type is not None:
|
145
|
+
if get_cached_settings().mode_type != require_mode_type:
|
146
|
+
raise APIException(
|
147
|
+
status_code=fastapi.status.HTTP_401_UNAUTHORIZED,
|
148
|
+
error_code=APIErrorCodes.cannot_authorize,
|
149
|
+
error_data=safely_transfer_obj_to_json_str_to_json_obj(api_auth_data.model_dump())
|
150
|
+
)
|
151
|
+
|
152
|
+
# require_not_mode_type
|
153
|
+
|
154
|
+
if require_not_mode_type is not None:
|
155
|
+
if get_cached_settings().mode_type == require_not_mode_type:
|
156
|
+
raise APIException(
|
157
|
+
status_code=fastapi.status.HTTP_401_UNAUTHORIZED,
|
158
|
+
error_code=APIErrorCodes.cannot_authorize,
|
159
|
+
error_data=safely_transfer_obj_to_json_str_to_json_obj(api_auth_data.model_dump())
|
160
|
+
)
|
161
|
+
|
133
162
|
# require_api_key_string
|
134
163
|
|
135
164
|
if require_api_key_string and not api_auth_data.api_key_string:
|
@@ -9,7 +9,7 @@ from core.settings import get_cached_settings
|
|
9
9
|
from json_db.json_db import get_cached_json_db
|
10
10
|
from operation_execution.operation_executor_worker import create_operation_executor_worker
|
11
11
|
from operation_execution.scheduled_operation_creator_worker import create_scheduled_operation_creator_worker
|
12
|
-
from
|
12
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
13
13
|
|
14
14
|
_logger = logging.getLogger(__name__)
|
15
15
|
|
@@ -18,8 +18,8 @@ from arpakitlib.ar_func_util import raise_if_not_async_callable, is_async_callab
|
|
18
18
|
from arpakitlib.ar_json_util import safely_transfer_obj_to_json_str
|
19
19
|
from arpakitlib.ar_type_util import raise_for_type
|
20
20
|
from core.settings import get_cached_settings
|
21
|
-
from
|
22
|
-
from
|
21
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
22
|
+
from sqlalchemy_db_.sqlalchemy_model import StoryLogDBM
|
23
23
|
|
24
24
|
_logger = logging.getLogger(__name__)
|
25
25
|
|
@@ -1,8 +1,7 @@
|
|
1
1
|
import fastapi
|
2
2
|
from fastapi import APIRouter, Depends
|
3
3
|
|
4
|
-
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
5
|
-
correct_tokens_from_settings__validate_api_key_func
|
4
|
+
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
6
5
|
from api.schema.common.out import RawDataCommonSO, ErrorCommonSO
|
7
6
|
from arpakitlib.ar_logging_util import init_log_file
|
8
7
|
from core.settings import get_cached_settings
|
@@ -22,11 +21,11 @@ async def _(
|
|
22
21
|
response: fastapi.responses.Response,
|
23
22
|
api_auth_data: APIAuthData = Depends(api_auth(
|
24
23
|
require_api_key_string=True,
|
25
|
-
require_token_string=
|
24
|
+
require_token_string=False,
|
26
25
|
validate_api_key_func=correct_api_keys_from_settings__validate_api_key_func(),
|
27
|
-
validate_token_func=
|
26
|
+
validate_token_func=None,
|
28
27
|
require_correct_api_key=True,
|
29
|
-
require_correct_token=
|
28
|
+
require_correct_token=False,
|
30
29
|
))
|
31
30
|
):
|
32
31
|
init_log_file(log_filepath=get_cached_settings().log_filepath)
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import fastapi.requests
|
2
|
-
from fastapi import APIRouter
|
2
|
+
from fastapi import APIRouter, Depends
|
3
3
|
|
4
|
+
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
4
5
|
from api.const import APIErrorCodes, APIErrorSpecificationCodes
|
5
6
|
from api.schema.common.out import ErrorCommonSO, ErrorsInfoCommonSO
|
6
7
|
|
@@ -17,6 +18,14 @@ async def _(
|
|
17
18
|
*,
|
18
19
|
request: fastapi.requests.Request,
|
19
20
|
response: fastapi.responses.Response,
|
21
|
+
api_auth_data: APIAuthData = Depends(api_auth(
|
22
|
+
require_api_key_string=True,
|
23
|
+
require_token_string=False,
|
24
|
+
validate_api_key_func=correct_api_keys_from_settings__validate_api_key_func(),
|
25
|
+
validate_token_func=None,
|
26
|
+
require_correct_api_key=True,
|
27
|
+
require_correct_token=False,
|
28
|
+
))
|
20
29
|
):
|
21
30
|
return ErrorsInfoCommonSO(
|
22
31
|
api_error_codes=APIErrorCodes.values_list(),
|
@@ -2,8 +2,7 @@ import fastapi
|
|
2
2
|
from fastapi import APIRouter, Depends
|
3
3
|
from fastapi.responses import FileResponse
|
4
4
|
|
5
|
-
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
6
|
-
correct_tokens_from_settings__validate_api_key_func
|
5
|
+
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
7
6
|
from arpakitlib.ar_logging_util import init_log_file
|
8
7
|
from core.settings import get_cached_settings
|
9
8
|
|
@@ -22,11 +21,11 @@ async def _(
|
|
22
21
|
response: fastapi.responses.Response,
|
23
22
|
api_auth_data: APIAuthData = Depends(api_auth(
|
24
23
|
require_api_key_string=True,
|
25
|
-
require_token_string=
|
24
|
+
require_token_string=False,
|
26
25
|
validate_api_key_func=correct_api_keys_from_settings__validate_api_key_func(),
|
27
|
-
validate_token_func=
|
26
|
+
validate_token_func=None,
|
28
27
|
require_correct_api_key=True,
|
29
|
-
require_correct_token=
|
28
|
+
require_correct_token=False,
|
30
29
|
))
|
31
30
|
):
|
32
31
|
init_log_file(log_filepath=get_cached_settings().log_filepath)
|
@@ -1,68 +1,60 @@
|
|
1
1
|
from fastapi import APIRouter
|
2
2
|
|
3
3
|
from api.router.v1 import healthcheck, get_errors_info, now_utc_datetime, clear_log_file, get_log_file, \
|
4
|
-
|
4
|
+
arpakitlib_project_template_info, reinit_sqlalchemy_db
|
5
5
|
from api.router.v1 import raise_fake_error, check_auth
|
6
6
|
|
7
7
|
main_v1_api_router = APIRouter()
|
8
8
|
|
9
|
-
# Healthcheck
|
10
|
-
|
11
9
|
main_v1_api_router.include_router(
|
12
10
|
router=healthcheck.api_router,
|
13
11
|
prefix="/healthcheck",
|
14
12
|
tags=["Healthcheck"]
|
15
13
|
)
|
16
14
|
|
17
|
-
# arpakitlib_
|
18
|
-
|
19
15
|
main_v1_api_router.include_router(
|
20
|
-
router=
|
21
|
-
prefix="/
|
16
|
+
router=arpakitlib_project_template_info.api_router,
|
17
|
+
prefix="/arpakitlib_project_template_info",
|
22
18
|
tags=["arpakitlib"]
|
23
19
|
)
|
24
20
|
|
25
|
-
# Get errors info
|
26
|
-
|
27
21
|
main_v1_api_router.include_router(
|
28
22
|
router=get_errors_info.api_router,
|
29
23
|
prefix="/get_errors_info",
|
30
24
|
tags=["Errors info"]
|
31
25
|
)
|
32
26
|
|
33
|
-
# Check auth
|
34
|
-
|
35
27
|
main_v1_api_router.include_router(
|
36
28
|
router=check_auth.api_router,
|
37
29
|
prefix="/check_auth",
|
38
30
|
tags=["Check auth"]
|
39
31
|
)
|
40
32
|
|
41
|
-
# Raise fake error
|
42
|
-
|
43
33
|
main_v1_api_router.include_router(
|
44
34
|
router=raise_fake_error.api_router,
|
45
35
|
prefix="/raise_fake_error",
|
46
36
|
tags=["Fake error"]
|
47
37
|
)
|
48
38
|
|
49
|
-
# Now UTC Datetime
|
50
|
-
|
51
39
|
main_v1_api_router.include_router(
|
52
40
|
router=now_utc_datetime.api_router,
|
53
41
|
prefix="/now_utc_datetime",
|
54
42
|
tags=["Now UTC datetime"]
|
55
43
|
)
|
56
44
|
|
57
|
-
|
58
|
-
|
45
|
+
main_v1_api_router.include_router(
|
46
|
+
router=get_log_file.api_router,
|
47
|
+
prefix="/get_log_file",
|
48
|
+
tags=["Log file"]
|
49
|
+
)
|
59
50
|
main_v1_api_router.include_router(
|
60
51
|
router=clear_log_file.api_router,
|
61
52
|
prefix="/clear_log_file",
|
62
53
|
tags=["Log file"]
|
63
54
|
)
|
55
|
+
|
64
56
|
main_v1_api_router.include_router(
|
65
|
-
router=
|
66
|
-
prefix="/
|
67
|
-
tags=["
|
57
|
+
router=reinit_sqlalchemy_db.api_router,
|
58
|
+
prefix="/reinit_sqlalchemy_db",
|
59
|
+
tags=["Reinit SQLAlchemy db"]
|
68
60
|
)
|
@@ -2,8 +2,7 @@ import fastapi
|
|
2
2
|
import starlette.exceptions
|
3
3
|
from fastapi import APIRouter, Depends
|
4
4
|
|
5
|
-
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
6
|
-
correct_tokens_from_settings__validate_api_key_func
|
5
|
+
from api.auth import APIAuthData, api_auth, correct_api_keys_from_settings__validate_api_key_func
|
7
6
|
from api.schema.common.out import ErrorCommonSO
|
8
7
|
|
9
8
|
api_router = APIRouter()
|
@@ -22,11 +21,11 @@ async def _(
|
|
22
21
|
n: int | None = None,
|
23
22
|
api_auth_data: APIAuthData = Depends(api_auth(
|
24
23
|
require_api_key_string=True,
|
25
|
-
require_token_string=
|
24
|
+
require_token_string=False,
|
26
25
|
validate_api_key_func=correct_api_keys_from_settings__validate_api_key_func(),
|
27
|
-
validate_token_func=
|
26
|
+
validate_token_func=None,
|
28
27
|
require_correct_api_key=True,
|
29
|
-
require_correct_token=
|
28
|
+
require_correct_token=False,
|
30
29
|
))
|
31
30
|
):
|
32
31
|
if n == 1:
|
arpakitlib-1.8.5/arpakitlib/_arpakit_project_template_v_1/api/router/v1/reinit_sqlalchemy_db.py
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
import fastapi
|
2
|
+
from fastapi import APIRouter
|
3
|
+
|
4
|
+
from api.auth import APIAuthData, api_auth
|
5
|
+
from api.schema.common.out import ErrorCommonSO, RawDataCommonSO
|
6
|
+
from core.settings import ModeTypes
|
7
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
8
|
+
|
9
|
+
api_router = APIRouter()
|
10
|
+
|
11
|
+
|
12
|
+
@api_router.get(
|
13
|
+
"",
|
14
|
+
name="Reinit SQLAlchemy db",
|
15
|
+
status_code=fastapi.status.HTTP_200_OK,
|
16
|
+
response_model=RawDataCommonSO | ErrorCommonSO,
|
17
|
+
)
|
18
|
+
async def _(
|
19
|
+
*,
|
20
|
+
request: fastapi.requests.Request,
|
21
|
+
response: fastapi.responses.Response,
|
22
|
+
api_auth_data: APIAuthData = fastapi.Depends(api_auth(
|
23
|
+
require_api_key_string=True,
|
24
|
+
require_token_string=False,
|
25
|
+
validate_api_key_func=None,
|
26
|
+
validate_token_func=None,
|
27
|
+
require_correct_api_key=False,
|
28
|
+
require_correct_token=False,
|
29
|
+
require_not_mode_type=ModeTypes.prod
|
30
|
+
))
|
31
|
+
):
|
32
|
+
get_cached_sqlalchemy_db().reinit()
|
33
|
+
return RawDataCommonSO(data={"sqlalchemy_was_reinited": True})
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import asyncio
|
2
2
|
|
3
3
|
from arpakitlib.ar_type_util import raise_for_type
|
4
|
-
from
|
5
|
-
from
|
4
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
5
|
+
from sqlalchemy_db_.sqlalchemy_model import OperationDBM
|
6
6
|
|
7
7
|
|
8
8
|
def remove_operations(
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from core.settings import get_cached_settings
|
2
2
|
from core.util import setup_logging
|
3
|
-
from
|
3
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
4
4
|
|
5
5
|
|
6
6
|
def __command():
|
@@ -8,6 +8,7 @@ def __command():
|
|
8
8
|
get_cached_settings().raise_if_mode_type_prod()
|
9
9
|
get_cached_sqlalchemy_db().drop()
|
10
10
|
get_cached_sqlalchemy_db().drop_celery_tables()
|
11
|
+
get_cached_sqlalchemy_db().drop_alembic_tables()
|
11
12
|
|
12
13
|
|
13
14
|
if __name__ == '__main__':
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from core.settings import get_cached_settings
|
2
2
|
from core.util import setup_logging
|
3
|
-
from
|
4
|
-
from
|
3
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
4
|
+
from sqlalchemy_db_.sqlalchemy_model import StoryLogDBM
|
5
5
|
|
6
6
|
|
7
7
|
def __command():
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import uvicorn
|
2
|
+
|
3
|
+
from core.settings import get_cached_settings
|
4
|
+
from core.util import setup_logging
|
5
|
+
|
6
|
+
|
7
|
+
def __command():
|
8
|
+
setup_logging()
|
9
|
+
uvicorn.run(
|
10
|
+
app="api.asgi:app",
|
11
|
+
host="127.0.0.1",
|
12
|
+
port=get_cached_settings().api_port,
|
13
|
+
reload=False,
|
14
|
+
workers=4
|
15
|
+
)
|
16
|
+
|
17
|
+
|
18
|
+
if __name__ == '__main__':
|
19
|
+
__command()
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from core.util import setup_logging
|
2
2
|
from operation_execution.operation_executor_worker import OperationExecutorWorker
|
3
|
-
from
|
3
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
4
4
|
|
5
5
|
|
6
6
|
def __command():
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from arpakitlib.ar_base_worker_util import safe_run_workers_in_background, SafeRunInBackgroundModes
|
2
2
|
from core.util import setup_logging
|
3
3
|
from operation_execution.operation_executor_worker import OperationExecutorWorker
|
4
|
-
from
|
4
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
5
5
|
|
6
6
|
|
7
7
|
def __command():
|
{arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/const.py
RENAMED
@@ -17,7 +17,9 @@ class ProjectPaths(Enumeration):
|
|
17
17
|
|
18
18
|
templates_dirpath: str = os.path.join(resource_dirpath, "templates")
|
19
19
|
|
20
|
-
|
20
|
+
arpakit_lib_project_template_info_filepath: str = os.path.join(
|
21
|
+
base_dirpath, "arpakitlib_project_template_info.json"
|
22
|
+
)
|
21
23
|
|
22
24
|
|
23
25
|
def __example():
|
{arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/core/settings.py
RENAMED
@@ -45,7 +45,7 @@ class Settings(SimpleSettings):
|
|
45
45
|
if self.is_mode_type_prod:
|
46
46
|
raise ValueError(f"mode type = {self.mode_type}")
|
47
47
|
|
48
|
-
project_name: str | None =
|
48
|
+
project_name: str | None = "project"
|
49
49
|
|
50
50
|
sqlalchemy_db_user: str | None = project_name
|
51
51
|
|
@@ -99,7 +99,7 @@ class Settings(SimpleSettings):
|
|
99
99
|
|
100
100
|
sqlalchemy_db_echo: bool = False
|
101
101
|
|
102
|
-
api_port: int | None =
|
102
|
+
api_port: int | None = 8080
|
103
103
|
|
104
104
|
api_init_sqlalchemy_db: bool = False
|
105
105
|
|
@@ -13,8 +13,8 @@ from arpakitlib.ar_dict_util import combine_dicts
|
|
13
13
|
from arpakitlib.ar_exception_util import exception_to_traceback_str
|
14
14
|
from arpakitlib.ar_sqlalchemy_util import SQLAlchemyDb
|
15
15
|
from arpakitlib.ar_type_util import raise_for_type
|
16
|
-
from
|
17
|
-
from
|
16
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
17
|
+
from sqlalchemy_db_.sqlalchemy_model import OperationDBM, StoryLogDBM
|
18
18
|
|
19
19
|
|
20
20
|
class OperationExecutorWorker(BaseWorker):
|
@@ -6,8 +6,8 @@ from arpakitlib.ar_sleep_util import sync_safe_sleep, async_safe_sleep
|
|
6
6
|
from arpakitlib.ar_sqlalchemy_util import SQLAlchemyDb
|
7
7
|
from arpakitlib.ar_type_util import raise_for_type
|
8
8
|
from operation_execution.scheduled_operations import ScheduledOperation, get_scheduled_operations
|
9
|
-
from
|
10
|
-
from
|
9
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
10
|
+
from sqlalchemy_db_.sqlalchemy_model import OperationDBM
|
11
11
|
|
12
12
|
|
13
13
|
class ScheduledOperationCreatorWorker(BaseWorker):
|
@@ -5,7 +5,7 @@ from pydantic import ConfigDict
|
|
5
5
|
from pydantic.v1 import BaseModel
|
6
6
|
|
7
7
|
from operation_execution.util import every_timedelta_is_time_func
|
8
|
-
from
|
8
|
+
from sqlalchemy_db_.sqlalchemy_model import OperationDBM
|
9
9
|
|
10
10
|
|
11
11
|
class ScheduledOperation(BaseModel):
|
@@ -0,0 +1 @@
|
|
1
|
+
HELLO WORLD
|
@@ -4,7 +4,7 @@ from sqladmin import Admin
|
|
4
4
|
from core.settings import get_cached_settings
|
5
5
|
from sqladmin_.admin_auth import SQLAdminAuth
|
6
6
|
from sqladmin_.model_view import get_simple_mv
|
7
|
-
from
|
7
|
+
from sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
8
8
|
|
9
9
|
|
10
10
|
def add_sqladmin_in_app(*, app: FastAPI, base_url: str = "/sqladmin") -> FastAPI:
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from sqladmin import ModelView
|
2
2
|
|
3
3
|
from arpakitlib.ar_sqladmin_util import get_string_info_from_model_view
|
4
|
-
from
|
4
|
+
from sqlalchemy_db_.sqlalchemy_model import StoryLogDBM, OperationDBM
|
5
5
|
|
6
6
|
|
7
7
|
class SimpleMV(ModelView):
|
@@ -2,7 +2,7 @@ from functools import lru_cache
|
|
2
2
|
|
3
3
|
from arpakitlib.ar_sqlalchemy_util import SQLAlchemyDb
|
4
4
|
from core.settings import get_cached_settings
|
5
|
-
from
|
5
|
+
from sqlalchemy_db_.sqlalchemy_model import get_simple_dbm
|
6
6
|
|
7
7
|
|
8
8
|
def create_sqlalchemy_db() -> SQLAlchemyDb | None:
|
@@ -9,7 +9,7 @@ from sqlalchemy.orm import mapped_column, Mapped
|
|
9
9
|
from arpakitlib.ar_datetime_util import now_utc_dt
|
10
10
|
from arpakitlib.ar_enumeration_util import Enumeration
|
11
11
|
from arpakitlib.ar_sqlalchemy_util import get_string_info_from_declarative_base, BaseDBM
|
12
|
-
from
|
12
|
+
from sqlalchemy_db_.util import generate_default_long_id
|
13
13
|
|
14
14
|
|
15
15
|
class SimpleDBM(BaseDBM):
|
@@ -0,0 +1,24 @@
|
|
1
|
+
from functools import lru_cache
|
2
|
+
|
3
|
+
from emoji import emojize
|
4
|
+
|
5
|
+
from arpakitlib.ar_blank_util import BaseBlank
|
6
|
+
|
7
|
+
|
8
|
+
class TgBotBlank(BaseBlank):
|
9
|
+
def hello_world(self) -> str:
|
10
|
+
res = ":smile: Hello world :smile:"
|
11
|
+
return emojize(res.strip())
|
12
|
+
|
13
|
+
def healthcheck(self) -> str:
|
14
|
+
res = "healthcheck"
|
15
|
+
return emojize(res.strip())
|
16
|
+
|
17
|
+
|
18
|
+
def create_tg_bot_blank() -> TgBotBlank:
|
19
|
+
return TgBotBlank()
|
20
|
+
|
21
|
+
|
22
|
+
@lru_cache()
|
23
|
+
def get_cached_tg_bot_blank() -> TgBotBlank:
|
24
|
+
return create_tg_bot_blank()
|
{arpakitlib-1.8.4 → arpakitlib-1.8.5}/arpakitlib/_arpakit_project_template_v_1/tg_bot/const.py
RENAMED
@@ -4,7 +4,7 @@ from arpakitlib.ar_enumeration_util import Enumeration
|
|
4
4
|
class TgBotCommands(Enumeration):
|
5
5
|
# public
|
6
6
|
healthcheck = "healthcheck"
|
7
|
-
|
7
|
+
arpakitlib_project_template_info = "arpakitlib_project_template_info"
|
8
8
|
start = "start"
|
9
9
|
about = "about"
|
10
10
|
|