zrb 0.6.0__py3-none-any.whl → 0.6.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- zrb/__init__.py +24 -20
- zrb/__main__.py +5 -5
- zrb/action/runner.py +22 -30
- zrb/advertisement.py +10 -9
- zrb/builtin/__init__.py +18 -16
- zrb/builtin/base64.py +13 -18
- zrb/builtin/devtool/__init__.py +14 -3
- zrb/builtin/devtool/devtool_install.py +207 -221
- zrb/builtin/env.py +9 -12
- zrb/builtin/eval.py +9 -9
- zrb/builtin/explain.py +73 -74
- zrb/builtin/generator/__init__.py +7 -11
- zrb/builtin/generator/app_generator/add.py +86 -87
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/add.py +78 -77
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_checker.py +6 -6
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_common.py +14 -15
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/container.py +32 -32
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/deployment.py +29 -30
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/image.py +1 -3
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/local.py +5 -4
- zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/src/kebab-zrb-app-name/deployment/__main__.py +24 -32
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/add.py +89 -87
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_common.py +14 -15
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/container.py +42 -54
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/deployment.py +34 -32
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/image.py +19 -22
- zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/local.py +18 -18
- zrb/builtin/generator/app_generator/template/http-port/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_checker.py +10 -10
- zrb/builtin/generator/app_generator/template/http-port-build-custom-image/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/local.py +19 -19
- zrb/builtin/generator/app_generator/template/use-helm/_automate/generate_snake_zrb_meta_template_name/template/src/kebab-zrb-app-name/deployment/__main__.py +12 -14
- zrb/builtin/generator/cmd_task/add.py +23 -25
- zrb/builtin/generator/cmd_task/template/_automate/snake_zrb_task_name.py +3 -5
- zrb/builtin/generator/common/helper.py +15 -20
- zrb/builtin/generator/common/task_factory.py +29 -26
- zrb/builtin/generator/common/task_input.py +97 -91
- zrb/builtin/generator/docker_compose_task/add.py +38 -39
- zrb/builtin/generator/docker_compose_task/template/_automate/snake_zrb_task_name.py +13 -19
- zrb/builtin/generator/docker_compose_task/template/src/kebab-zrb-task-name/image/main.py +18 -14
- zrb/builtin/generator/fastapp/add.py +94 -90
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_checker.py +28 -27
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_config.py +68 -39
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_env.py +24 -22
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_env_file.py +12 -12
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_get_start_microservices.py +43 -41
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_helper.py +23 -24
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_input.py +21 -20
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-load-test.sh +1 -1
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-start.sh +1 -1
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-test.sh +2 -2
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/container.py +46 -39
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/deployment.py +28 -20
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/frontend.py +21 -27
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/image.py +23 -18
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/load_test.py +35 -36
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/local.py +68 -58
- zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/test.py +24 -38
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/__main__.py +23 -21
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/_common.py +72 -75
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/app_helper.py +70 -75
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_postgresql_helper.py +18 -21
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_rabbitmq_helper.py +11 -19
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_redpanda_helper.py +18 -15
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_signoz_helper.py +17 -21
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/docker-compose.yml +12 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/loadtest/locustfile.py +10 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/Dockerfile +1 -0
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app.py +35 -30
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app_lifespan.py +21 -17
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app_state.py +3 -2
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/db_connection.py +18 -20
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/frontend_index.py +5 -6
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/log.py +7 -15
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/messagebus.py +38 -34
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/rpc.py +19 -18
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/config.py +68 -103
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/error.py +11 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/__init__.py +2 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/admin.py +38 -35
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/consumer.py +38 -45
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/publisher.py +26 -29
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/messagebus.py +8 -14
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/mock.py +12 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/admin.py +37 -44
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/consumer.py +42 -67
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/publisher.py +32 -55
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/model/repo_model.py +11 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/__init__.py +2 -2
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/db_entity_mixin.py +3 -6
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/db_repo.py +76 -83
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/repo.py +5 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/search_filter.py +1 -0
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/__init__.py +1 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/messagebus/caller.py +17 -19
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/messagebus/server.py +14 -18
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/rpc.py +15 -28
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/schema/__init__.py +1 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/schema/base_schema.py +6 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/serializer/__init__.py +1 -3
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/serializer/serializer.py +3 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/async_task.py +3 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/conversion.py +10 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/migration.py +6 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/migrate.py +3 -2
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/api.py +7 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/__init__.py +4 -6
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/access_token_scheme.py +9 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/access_token_util.py +6 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/authorizer.py +4 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/bearer_token_scheme.py +1 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/model/user_model.py +8 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/password_hasher.py +1 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/refresh_token_util.py +7 -6
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/group_repo.py +3 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/permission_repo.py +3 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/user_repo.py +3 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/user.py +12 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/__init__.py +7 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/access_token/scheme.py +7 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/access_token/util.py +20 -30
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/authorizer/authorizer.py +1 -3
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/authorizer/rpc_authorizer.py +5 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/password_hasher/bcrypt_password_hasher.py +3 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/password_hasher/password_hasher.py +0 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/refresh_token/util.py +15 -21
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/api.py +42 -49
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/model.py +3 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/repo.py +18 -16
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/rpc.py +26 -41
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/api.py +46 -51
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/model.py +5 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/repo.py +11 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/rpc.py +28 -45
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/table.py +10 -10
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/api.py +60 -72
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/model.py +32 -61
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/repo.py +33 -36
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/rpc.py +42 -61
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/event.py +2 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/migrate.py +3 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/register_module.py +11 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/register_permission.py +19 -26
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/rpc.py +5 -13
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/group.py +6 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/permission.py +3 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/request.py +1 -0
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/token.py +2 -2
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/user.py +4 -3
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/api.py +4 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/component/model/activity_model.py +3 -9
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/component/repo/activity_repo.py +3 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/core/historical_repo_model.py +13 -13
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/api.py +22 -23
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/event.py +5 -7
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/model.py +2 -6
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/repo.py +8 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/rpc.py +28 -45
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/table.py +3 -3
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/event.py +4 -8
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/migrate.py +2 -4
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/register_module.py +10 -11
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/rpc.py +3 -5
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/schema/activity.py +3 -1
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/requirements.txt +12 -12
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_group_crud.py +76 -106
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_permission_crud.py +73 -103
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_user_crud.py +92 -122
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_user_login.py +107 -134
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/conftest.py +2 -2
- zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/test_liveness_and_readiness.py +8 -15
- zrb/builtin/generator/fastapp_crud/add.py +74 -79
- zrb/builtin/generator/fastapp_crud/helper.py +51 -48
- zrb/builtin/generator/fastapp_crud/task_factory.py +17 -14
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/component/model/snake_zrb_entity_name_model.py +2 -2
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/component/repo/snake_zrb_entity_name_repo.py +3 -2
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/snake_zrb_entity_name/api.py +58 -40
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/snake_zrb_entity_name/model.py +7 -3
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/snake_zrb_entity_name/repo.py +9 -4
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/snake_zrb_entity_name/rpc.py +32 -39
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/schema/snake_zrb_entity_name.py +3 -1
- zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/test/snake_zrb_module_name/test_snake_zrb_entity_name.py +68 -98
- zrb/builtin/generator/fastapp_field/add.py +143 -85
- zrb/builtin/generator/fastapp_field/helper.py +184 -125
- zrb/builtin/generator/fastapp_module/add.py +90 -67
- zrb/builtin/generator/fastapp_module/helper.py +141 -155
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/api.py +3 -2
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/table.py +3 -3
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/event.py +3 -5
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/migrate.py +2 -4
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/register_module.py +10 -11
- zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/rpc.py +3 -5
- zrb/builtin/generator/pip_package/add.py +39 -40
- zrb/builtin/generator/pip_package/template/_automate/snake_zrb_package_name/local.py +30 -30
- zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/__init__.py +1 -0
- zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/__main__.py +1 -0
- zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/util.py +2 -2
- zrb/builtin/generator/plugin/create.py +39 -36
- zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/__init__.py +1 -1
- zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/__main__.py +1 -0
- zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/task/example_task.py +6 -4
- zrb/builtin/generator/plugin/template/zrb_init.py +27 -27
- zrb/builtin/generator/project/create.py +38 -46
- zrb/builtin/generator/project/template/.flake8 +3 -0
- zrb/builtin/generator/project/template/project.sh +19 -10
- zrb/builtin/generator/project_task/task_factory.py +60 -61
- zrb/builtin/generator/project_task/template/_automate/_project/__init__.py +2 -2
- zrb/builtin/generator/project_task/template/_automate/_project/build_project_images.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/deploy_project.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/destroy_project.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/push_project_images.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/remove_project_containers.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/start_project.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/start_project_containers.py +4 -4
- zrb/builtin/generator/project_task/template/_automate/_project/stop_project_containers.py +4 -4
- zrb/builtin/generator/python_task/add.py +25 -33
- zrb/builtin/generator/python_task/template/_automate/snake_zrb_task_name.py +8 -7
- zrb/builtin/generator/simple_python_app/add.py +81 -75
- zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/_common.py +14 -15
- zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/container.py +46 -61
- zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/deployment.py +34 -32
- zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/image.py +19 -22
- zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/local.py +23 -25
- zrb/builtin/generator/simple_python_app/template/src/kebab-zrb-app-name/deployment/__main__.py +24 -32
- zrb/builtin/generator/simple_python_app/template/src/kebab-zrb-app-name/src/main.py +18 -14
- zrb/builtin/git.py +46 -46
- zrb/builtin/group.py +13 -34
- zrb/builtin/helper/reccuring_action.py +26 -29
- zrb/builtin/md5.py +17 -30
- zrb/builtin/process.py +19 -19
- zrb/builtin/project.py +13 -15
- zrb/builtin/say.py +69 -88
- zrb/builtin/schedule.py +15 -19
- zrb/builtin/ubuntu.py +44 -35
- zrb/builtin/update.py +5 -5
- zrb/builtin/version.py +3 -7
- zrb/builtin/watch_changes.py +24 -25
- zrb/config/config.py +19 -18
- zrb/helper/accessories/color.py +18 -6
- zrb/helper/accessories/icon.py +24 -3
- zrb/helper/accessories/name.py +120 -28
- zrb/helper/advertisement.py +9 -13
- zrb/helper/callable.py +2 -4
- zrb/helper/cli.py +27 -31
- zrb/helper/codemod/add_argument_to_function.py +3 -4
- zrb/helper/codemod/add_argument_to_function_call.py +4 -7
- zrb/helper/codemod/add_assert_resource.py +7 -7
- zrb/helper/codemod/add_function_call.py +3 -5
- zrb/helper/codemod/add_import_module.py +15 -26
- zrb/helper/codemod/add_key_value_to_dict.py +7 -10
- zrb/helper/codemod/add_property_to_class.py +10 -8
- zrb/helper/codemod/add_upstream_to_task.py +21 -33
- zrb/helper/codemod/append_code_to_function.py +6 -13
- zrb/helper/codemod/format_code.py +2 -1
- zrb/helper/default_env.py +25 -25
- zrb/helper/docker_compose/fetch_external_env.py +18 -18
- zrb/helper/docker_compose/file.py +5 -4
- zrb/helper/docstring.py +44 -47
- zrb/helper/env_map/fetch.py +7 -12
- zrb/helper/file/copy_tree.py +12 -17
- zrb/helper/file/match.py +6 -7
- zrb/helper/file/text.py +8 -6
- zrb/helper/git/detect_changes.py +9 -8
- zrb/helper/loader/load_module.py +14 -13
- zrb/helper/log.py +4 -3
- zrb/helper/map/conversion.py +4 -5
- zrb/helper/python_task.py +2 -4
- zrb/helper/render_data.py +25 -18
- zrb/helper/string/constant.py +2 -2
- zrb/helper/string/conversion.py +17 -16
- zrb/helper/string/jinja.py +2 -2
- zrb/helper/typecheck.py +6 -4
- zrb/helper/typing.py +10 -2
- zrb/helper/util.py +44 -40
- zrb/task/any_task.py +251 -251
- zrb/task/base_remote_cmd_task.py +76 -59
- zrb/task/base_task/base_task.py +95 -108
- zrb/task/base_task/component/base_task_model.py +73 -71
- zrb/task/base_task/component/common_task_model.py +42 -29
- zrb/task/base_task/component/pid_model.py +3 -5
- zrb/task/base_task/component/renderer.py +26 -36
- zrb/task/base_task/component/trackers.py +6 -9
- zrb/task/checker.py +14 -9
- zrb/task/cmd_task.py +102 -100
- zrb/task/decorator.py +19 -13
- zrb/task/docker_compose_task.py +127 -98
- zrb/task/flow_task.py +16 -19
- zrb/task/http_checker.py +40 -36
- zrb/task/notifier.py +50 -38
- zrb/task/parallel.py +3 -3
- zrb/task/path_checker.py +34 -27
- zrb/task/path_watcher.py +49 -40
- zrb/task/port_checker.py +33 -26
- zrb/task/recurring_task.py +36 -42
- zrb/task/remote_cmd_task.py +31 -28
- zrb/task/resource_maker.py +66 -52
- zrb/task/rsync_task.py +24 -21
- zrb/task/task.py +4 -3
- zrb/task/time_watcher.py +36 -31
- zrb/task_env/constant.py +1 -1
- zrb/task_env/env.py +33 -31
- zrb/task_env/env_file.py +24 -23
- zrb/task_group/group.py +27 -30
- zrb/task_input/any_input.py +18 -16
- zrb/task_input/base_input.py +26 -26
- zrb/task_input/bool_input.py +6 -6
- zrb/task_input/choice_input.py +11 -9
- zrb/task_input/constant.py +1 -1
- zrb/task_input/float_input.py +6 -5
- zrb/task_input/int_input.py +8 -8
- zrb/task_input/password_input.py +9 -9
- zrb/task_input/str_input.py +8 -8
- zrb/task_input/task_input.py +4 -2
- {zrb-0.6.0.dist-info → zrb-0.6.1.dist-info}/METADATA +3 -1
- {zrb-0.6.0.dist-info → zrb-0.6.1.dist-info}/RECORD +316 -315
- {zrb-0.6.0.dist-info → zrb-0.6.1.dist-info}/LICENSE +0 -0
- {zrb-0.6.0.dist-info → zrb-0.6.1.dist-info}/WHEEL +0 -0
- {zrb-0.6.0.dist-info → zrb-0.6.1.dist-info}/entry_points.txt +0 -0
zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_get_start_microservices.py
CHANGED
@@ -1,14 +1,19 @@
|
|
1
|
+
import os
|
1
2
|
from typing import List
|
2
|
-
|
3
|
-
from zrb
|
3
|
+
|
4
|
+
from zrb import CmdTask, Env, EnvFile, HTTPChecker, Task
|
5
|
+
from zrb.helper.util import to_kebab_case, to_snake_case
|
6
|
+
|
7
|
+
from ._config import APP_DIR, APP_TEMPLATE_ENV_FILE_NAME, CURRENT_DIR, MODULES
|
8
|
+
from ._env import app_enable_otel_env
|
4
9
|
from ._helper import should_start_local_microservices
|
5
10
|
from ._input import (
|
6
|
-
|
7
|
-
|
11
|
+
enable_monitoring_input,
|
12
|
+
host_input,
|
13
|
+
https_input,
|
14
|
+
local_input,
|
15
|
+
run_mode_input,
|
8
16
|
)
|
9
|
-
from ._env import app_enable_otel_env
|
10
|
-
from ._config import CURRENT_DIR, APP_DIR, APP_TEMPLATE_ENV_FILE_NAME, MODULES
|
11
|
-
import os
|
12
17
|
|
13
18
|
|
14
19
|
def get_start_microservices(upstreams: List[Task]) -> List[Task]:
|
@@ -18,7 +23,7 @@ def get_start_microservices(upstreams: List[Task]) -> List[Task]:
|
|
18
23
|
kebab_module_name = to_kebab_case(module_name)
|
19
24
|
# Define start service task
|
20
25
|
start_service = CmdTask(
|
21
|
-
name=f
|
26
|
+
name=f"start-kebab-zrb-app-name-{kebab_module_name}-service",
|
22
27
|
inputs=[
|
23
28
|
local_input,
|
24
29
|
run_mode_input,
|
@@ -30,54 +35,49 @@ def get_start_microservices(upstreams: List[Task]) -> List[Task]:
|
|
30
35
|
upstreams=upstreams,
|
31
36
|
cwd=APP_DIR,
|
32
37
|
env_files=[_get_service_env_file(module_name)],
|
33
|
-
envs=disable_all_module_envs
|
34
|
-
|
35
|
-
),
|
38
|
+
envs=disable_all_module_envs
|
39
|
+
+ _get_service_envs(zrbAppHttpPort, module_index, module_name),
|
36
40
|
cmd_path=[
|
37
|
-
os.path.join(CURRENT_DIR,
|
38
|
-
os.path.join(CURRENT_DIR,
|
41
|
+
os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
|
42
|
+
os.path.join(CURRENT_DIR, "cmd", "app-start.sh"),
|
39
43
|
],
|
40
44
|
checkers=[
|
41
45
|
HTTPChecker(
|
42
|
-
name=f
|
43
|
-
host=
|
44
|
-
url=
|
45
|
-
port=
|
46
|
-
is_https=
|
47
|
-
should_execute=should_start_local_microservices
|
46
|
+
name=f"check-kebab-zrb-app-name-{kebab_module_name}-service",
|
47
|
+
host="{{input.snake_zrb_app_name_host}}",
|
48
|
+
url="/readiness",
|
49
|
+
port="{{env.APP_PORT}}",
|
50
|
+
is_https="{{input.snake_zrb_app_name_https}}",
|
51
|
+
should_execute=should_start_local_microservices,
|
48
52
|
)
|
49
|
-
]
|
53
|
+
],
|
50
54
|
)
|
51
55
|
start_microservices.append(start_service)
|
52
56
|
return start_microservices
|
53
57
|
|
54
58
|
|
55
|
-
def _get_service_envs(
|
56
|
-
base_port: int, module_index: int, module_name: str
|
57
|
-
) -> List[Env]:
|
59
|
+
def _get_service_envs(base_port: int, module_index: int, module_name: str) -> List[Env]:
|
58
60
|
kebab_module_name = to_kebab_case(module_name)
|
59
61
|
snake_module_name = to_snake_case(module_name)
|
60
62
|
upper_snake_module_name = snake_module_name.upper()
|
61
63
|
# Define service env
|
62
64
|
app_broker_type_env = Env(
|
63
|
-
name=
|
64
|
-
os_name=f
|
65
|
-
default=
|
65
|
+
name="APP_BROKER_TYPE",
|
66
|
+
os_name=f"ZRB_ENV_PREFIX_{upper_snake_module_name}_APP_BROKER_TYPE",
|
67
|
+
default="rabbitmq",
|
66
68
|
)
|
67
69
|
app_port_env = Env(
|
68
|
-
name=
|
69
|
-
os_name=f
|
70
|
-
default=str(base_port + module_index + 1)
|
70
|
+
name="APP_PORT",
|
71
|
+
os_name=f"ZRB_ENV_PREFIX_{upper_snake_module_name}_APP_PORT",
|
72
|
+
default=str(base_port + module_index + 1),
|
71
73
|
)
|
72
74
|
enable_module_env = Env(
|
73
|
-
name=f
|
74
|
-
os_name='',
|
75
|
-
default='true'
|
75
|
+
name=f"APP_ENABLE_{upper_snake_module_name}_MODULE", os_name="", default="true"
|
76
76
|
)
|
77
77
|
zrb_app_name_env = Env(
|
78
|
-
name=
|
79
|
-
os_name=f
|
80
|
-
default=f
|
78
|
+
name="APP_NAME",
|
79
|
+
os_name=f"ZRB_ENV_PREFIX_{upper_snake_module_name}_APP_NAME",
|
80
|
+
default=f"kebab-zrb-app-name-{kebab_module_name}-service",
|
81
81
|
)
|
82
82
|
return [
|
83
83
|
app_broker_type_env,
|
@@ -93,7 +93,7 @@ def _get_service_env_file(module_name: str) -> EnvFile:
|
|
93
93
|
upper_snake_module_name = snake_module_name.upper()
|
94
94
|
return EnvFile(
|
95
95
|
path=APP_TEMPLATE_ENV_FILE_NAME,
|
96
|
-
prefix=f
|
96
|
+
prefix=f"ZRB_ENV_PREFIX_{upper_snake_module_name}",
|
97
97
|
)
|
98
98
|
|
99
99
|
|
@@ -102,9 +102,11 @@ def _get_disable_all_module_envs() -> List[Env]:
|
|
102
102
|
for module in MODULES:
|
103
103
|
snake_module_name = to_snake_case(module)
|
104
104
|
upper_snake_module_name = snake_module_name.upper()
|
105
|
-
disable_all_module_envs.append(
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
105
|
+
disable_all_module_envs.append(
|
106
|
+
Env(
|
107
|
+
name=f"APP_ENABLE_{upper_snake_module_name}_MODULE",
|
108
|
+
os_name="",
|
109
|
+
default="false",
|
110
|
+
)
|
111
|
+
)
|
110
112
|
return disable_all_module_envs
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from typing import Any, List
|
2
|
+
|
2
3
|
from zrb import Task
|
3
4
|
|
4
5
|
###############################################################################
|
@@ -7,65 +8,63 @@ from zrb import Task
|
|
7
8
|
|
8
9
|
|
9
10
|
def should_start_local_microservices(*args: Any, **kwargs: Any) -> bool:
|
10
|
-
if not kwargs.get(
|
11
|
+
if not kwargs.get("local_snake_zrb_app_name", True):
|
11
12
|
return False
|
12
|
-
run_mode = kwargs.get(
|
13
|
-
return run_mode ==
|
13
|
+
run_mode = kwargs.get("snake_zrb_app_name_run_mode", "monolith")
|
14
|
+
return run_mode == "microservices"
|
14
15
|
|
15
16
|
|
16
|
-
def get_support_container_compose_profiles(
|
17
|
-
|
18
|
-
) -> List[str]:
|
19
|
-
task: Task = kwargs.get('_task')
|
17
|
+
def get_support_container_compose_profiles(*args: Any, **kwargs: Any) -> List[str]:
|
18
|
+
task: Task = kwargs.get("_task")
|
20
19
|
env_map = task.get_env_map()
|
21
20
|
compose_profiles: List[str] = []
|
22
|
-
broker_type = env_map.get(
|
23
|
-
if broker_type in [
|
21
|
+
broker_type = env_map.get("APP_BROKER_TYPE", "rabbitmq")
|
22
|
+
if broker_type in ["rabbitmq", "kafka"]:
|
24
23
|
compose_profiles.append(broker_type)
|
25
|
-
if kwargs.get(
|
26
|
-
compose_profiles.append(
|
24
|
+
if kwargs.get("enable_snake_zrb_app_name_monitoring", False):
|
25
|
+
compose_profiles.append("monitoring")
|
27
26
|
return compose_profiles
|
28
27
|
|
29
28
|
|
30
29
|
def get_container_compose_profiles(*args: Any, **kwargs: Any) -> str:
|
31
30
|
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
32
31
|
compose_profiles.append(
|
33
|
-
kwargs.get(
|
32
|
+
kwargs.get("snake_zrb_app_name_run_mode", "monolith"),
|
34
33
|
)
|
35
34
|
return compose_profiles
|
36
35
|
|
37
36
|
|
38
37
|
def activate_support_compose_profile(*args: Any, **kwargs: Any) -> str:
|
39
38
|
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
40
|
-
compose_profile_str =
|
41
|
-
return f
|
39
|
+
compose_profile_str = ",".join(compose_profiles)
|
40
|
+
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
42
41
|
|
43
42
|
|
44
43
|
def should_start_support_container(*args: Any, **kwargs: Any) -> bool:
|
45
|
-
if not kwargs.get(
|
44
|
+
if not kwargs.get("local_snake_zrb_app_name", True):
|
46
45
|
return False
|
47
46
|
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
48
47
|
return len(compose_profiles) > 0
|
49
48
|
|
50
49
|
|
51
50
|
def should_start_local_monolith(*args: Any, **kwargs: Any) -> bool:
|
52
|
-
if not kwargs.get(
|
51
|
+
if not kwargs.get("local_snake_zrb_app_name", True):
|
53
52
|
return False
|
54
|
-
return kwargs.get(
|
53
|
+
return kwargs.get("snake_zrb_app_name_run_mode", "monolith") == "monolith"
|
55
54
|
|
56
55
|
|
57
56
|
def activate_selected_compose_profile(*args: Any, **kwargs: Any) -> str:
|
58
57
|
compose_profiles = get_container_compose_profiles(*args, **kwargs)
|
59
|
-
compose_profile_str =
|
60
|
-
return f
|
58
|
+
compose_profile_str = ",".join(compose_profiles)
|
59
|
+
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
61
60
|
|
62
61
|
|
63
62
|
def activate_all_compose_profile(*args: Any, **kwargs: Any) -> str:
|
64
|
-
compose_profile_str =
|
65
|
-
|
66
|
-
|
67
|
-
return f
|
63
|
+
compose_profile_str = ",".join(
|
64
|
+
["monitoring", "monolith", "microservices", "kafka", "rabbitmq"]
|
65
|
+
)
|
66
|
+
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
68
67
|
|
69
68
|
|
70
69
|
def should_start_container(*args: Any, **kwargs: Any) -> bool:
|
71
|
-
return kwargs.get(
|
70
|
+
return kwargs.get("local_snake_zrb_app_name", True)
|
@@ -1,60 +1,61 @@
|
|
1
|
-
from zrb import BoolInput, ChoiceInput, StrInput
|
2
1
|
import os
|
3
2
|
|
3
|
+
from zrb import BoolInput, ChoiceInput, StrInput
|
4
|
+
|
4
5
|
enable_monitoring_input = BoolInput(
|
5
|
-
name=
|
6
|
+
name="enable-kebab-zrb-app-name-monitoring",
|
6
7
|
description='Enable "kebab-zrb-app-name" monitoring',
|
7
8
|
prompt='Enable "kebab-zrb-app-name" monitoring?',
|
8
|
-
default=False
|
9
|
+
default=False,
|
9
10
|
)
|
10
11
|
|
11
12
|
local_input = BoolInput(
|
12
|
-
name=
|
13
|
+
name="local-kebab-zrb-app-name",
|
13
14
|
description='Use "kebab-zrb-app-name" on local machine',
|
14
15
|
prompt='Use "kebab-zrb-app-name" on local machine?',
|
15
|
-
default=True
|
16
|
+
default=True,
|
16
17
|
)
|
17
18
|
|
18
19
|
run_mode_input = ChoiceInput(
|
19
|
-
name=
|
20
|
+
name="kebab-zrb-app-name-run-mode",
|
20
21
|
description='"kebab-zrb-app-name" run mode (monolith/microservices)',
|
21
22
|
prompt='Run "kebab-zrb-app-name" as a monolith or microservices?',
|
22
|
-
choices=[
|
23
|
-
default=
|
23
|
+
choices=["monolith", "microservices"],
|
24
|
+
default="monolith",
|
24
25
|
)
|
25
26
|
|
26
27
|
https_input = BoolInput(
|
27
|
-
name=
|
28
|
+
name="kebab-zrb-app-name-https",
|
28
29
|
description='Whether "kebab-zrb-app-name" run on HTTPS',
|
29
30
|
prompt='Is "kebab-zrb-app-name" run on HTTPS?',
|
30
|
-
default=False
|
31
|
+
default=False,
|
31
32
|
)
|
32
33
|
|
33
34
|
host_input = StrInput(
|
34
|
-
name=
|
35
|
+
name="kebab-zrb-app-name-host",
|
35
36
|
description='Hostname of "kebab-zrb-app-name"',
|
36
37
|
prompt='Hostname of "kebab-zrb-app-name"',
|
37
|
-
default=
|
38
|
+
default="localhost",
|
38
39
|
)
|
39
40
|
|
40
41
|
image_input = StrInput(
|
41
|
-
name=
|
42
|
+
name="kebab-zrb-app-name-image",
|
42
43
|
description='Image name of "kebab-zrb-app-name"',
|
43
44
|
prompt='Image name of "kebab-zrb-app-name"',
|
44
|
-
default=
|
45
|
+
default="zrb-app-image-name:latest",
|
45
46
|
)
|
46
47
|
|
47
48
|
deploy_mode_input = ChoiceInput(
|
48
|
-
name=
|
49
|
+
name="kebab-zrb-app-name-deploy-mode",
|
49
50
|
description='"kebab-zrb-app-name" deploy mode (monolith/microservices)',
|
50
51
|
prompt='Deploy "kebab-zrb-app-name" as a monolith or microservices?',
|
51
|
-
choices=[
|
52
|
-
default=
|
52
|
+
choices=["monolith", "microservices"],
|
53
|
+
default="monolith",
|
53
54
|
)
|
54
55
|
|
55
56
|
pulumi_stack_input = StrInput(
|
56
|
-
name=
|
57
|
+
name="kebab-zrb-app-name-pulumi-stack",
|
57
58
|
description='Pulumi stack name for "kebab-zrb-app-name"',
|
58
59
|
prompt='Pulumi stack name for "kebab-zrb-app-name"',
|
59
|
-
default=os.getenv(
|
60
|
-
)
|
60
|
+
default=os.getenv("ZRB_ENV", "dev"),
|
61
|
+
)
|
@@ -1,40 +1,50 @@
|
|
1
1
|
from zrb import DockerComposeTask, runner
|
2
2
|
from zrb.builtin.group import project_group
|
3
|
+
|
3
4
|
from ._checker import (
|
4
|
-
app_container_checker,
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
5
|
+
app_container_checker,
|
6
|
+
kafka_outside_checker,
|
7
|
+
kafka_plaintext_checker,
|
8
|
+
pandaproxy_outside_checker,
|
9
|
+
pandaproxy_plaintext_checker,
|
10
|
+
rabbitmq_checker,
|
11
|
+
rabbitmq_management_checker,
|
12
|
+
redpanda_console_checker,
|
11
13
|
)
|
14
|
+
from ._config import RESOURCE_DIR, SERVICE_CONFIGS
|
12
15
|
from ._env import app_enable_otel_env, image_env
|
13
16
|
from ._env_file import compose_env_file
|
14
17
|
from ._helper import (
|
15
|
-
|
16
|
-
|
18
|
+
activate_all_compose_profile,
|
19
|
+
activate_selected_compose_profile,
|
20
|
+
should_start_container,
|
21
|
+
)
|
22
|
+
from ._input import (
|
23
|
+
enable_monitoring_input,
|
24
|
+
host_input,
|
25
|
+
https_input,
|
26
|
+
image_input,
|
27
|
+
local_input,
|
28
|
+
run_mode_input,
|
17
29
|
)
|
18
|
-
from ._config import RESOURCE_DIR, SERVICE_CONFIGS
|
19
30
|
from .image import build_snake_zrb_app_name_image
|
20
31
|
|
21
|
-
|
22
32
|
###############################################################################
|
23
33
|
# ⚙️ remove-kebab-zrb-task-name-container
|
24
34
|
###############################################################################
|
25
35
|
|
26
36
|
remove_snake_zrb_app_name_container = DockerComposeTask(
|
27
|
-
icon=
|
28
|
-
name=
|
29
|
-
description=
|
37
|
+
icon="💨",
|
38
|
+
name="remove-kebab-zrb-app-name-container",
|
39
|
+
description="Remove human readable zrb app name container",
|
30
40
|
group=project_group,
|
31
41
|
cwd=RESOURCE_DIR,
|
32
42
|
setup_cmd=activate_all_compose_profile,
|
33
|
-
compose_cmd=
|
34
|
-
compose_env_prefix=
|
43
|
+
compose_cmd="down",
|
44
|
+
compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
|
35
45
|
compose_service_configs=SERVICE_CONFIGS,
|
36
46
|
envs=[image_env],
|
37
|
-
env_files=[compose_env_file]
|
47
|
+
env_files=[compose_env_file],
|
38
48
|
)
|
39
49
|
runner.register(remove_snake_zrb_app_name_container)
|
40
50
|
|
@@ -43,8 +53,8 @@ runner.register(remove_snake_zrb_app_name_container)
|
|
43
53
|
###############################################################################
|
44
54
|
|
45
55
|
init_snake_zrb_app_name_container = DockerComposeTask(
|
46
|
-
icon=
|
47
|
-
name=
|
56
|
+
icon="🔥",
|
57
|
+
name="init-kebab-zrb-app-name-container",
|
48
58
|
group=project_group,
|
49
59
|
inputs=[
|
50
60
|
local_input,
|
@@ -54,15 +64,12 @@ init_snake_zrb_app_name_container = DockerComposeTask(
|
|
54
64
|
image_input,
|
55
65
|
],
|
56
66
|
should_execute=should_start_container,
|
57
|
-
upstreams=[
|
58
|
-
build_snake_zrb_app_name_image,
|
59
|
-
remove_snake_zrb_app_name_container
|
60
|
-
],
|
67
|
+
upstreams=[build_snake_zrb_app_name_image, remove_snake_zrb_app_name_container],
|
61
68
|
cwd=RESOURCE_DIR,
|
62
69
|
setup_cmd=activate_selected_compose_profile,
|
63
|
-
compose_cmd=
|
64
|
-
compose_flags=[
|
65
|
-
compose_env_prefix=
|
70
|
+
compose_cmd="up",
|
71
|
+
compose_flags=["-d"],
|
72
|
+
compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
|
66
73
|
compose_service_configs=SERVICE_CONFIGS,
|
67
74
|
envs=[
|
68
75
|
image_env,
|
@@ -76,9 +83,9 @@ init_snake_zrb_app_name_container = DockerComposeTask(
|
|
76
83
|
###############################################################################
|
77
84
|
|
78
85
|
start_snake_zrb_app_name_container = DockerComposeTask(
|
79
|
-
icon=
|
80
|
-
name=
|
81
|
-
description=
|
86
|
+
icon="🐳",
|
87
|
+
name="start-kebab-zrb-app-name-container",
|
88
|
+
description="Start human readable zrb app name container",
|
82
89
|
group=project_group,
|
83
90
|
inputs=[
|
84
91
|
local_input,
|
@@ -91,9 +98,9 @@ start_snake_zrb_app_name_container = DockerComposeTask(
|
|
91
98
|
upstreams=[init_snake_zrb_app_name_container],
|
92
99
|
cwd=RESOURCE_DIR,
|
93
100
|
setup_cmd=activate_selected_compose_profile,
|
94
|
-
compose_cmd=
|
95
|
-
compose_flags=[
|
96
|
-
compose_env_prefix=
|
101
|
+
compose_cmd="logs",
|
102
|
+
compose_flags=["-f"],
|
103
|
+
compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
|
97
104
|
compose_service_configs=SERVICE_CONFIGS,
|
98
105
|
envs=[image_env],
|
99
106
|
env_files=[compose_env_file],
|
@@ -106,7 +113,7 @@ start_snake_zrb_app_name_container = DockerComposeTask(
|
|
106
113
|
redpanda_console_checker,
|
107
114
|
pandaproxy_outside_checker,
|
108
115
|
pandaproxy_plaintext_checker,
|
109
|
-
]
|
116
|
+
],
|
110
117
|
)
|
111
118
|
runner.register(start_snake_zrb_app_name_container)
|
112
119
|
|
@@ -115,16 +122,16 @@ runner.register(start_snake_zrb_app_name_container)
|
|
115
122
|
###############################################################################
|
116
123
|
|
117
124
|
stop_snake_zrb_app_name_container = DockerComposeTask(
|
118
|
-
icon=
|
119
|
-
name=
|
120
|
-
description=
|
125
|
+
icon="⛔",
|
126
|
+
name="stop-kebab-zrb-app-name-container",
|
127
|
+
description="Stop human readable zrb app name container",
|
121
128
|
group=project_group,
|
122
129
|
cwd=RESOURCE_DIR,
|
123
130
|
setup_cmd=activate_all_compose_profile,
|
124
|
-
compose_cmd=
|
125
|
-
compose_env_prefix=
|
131
|
+
compose_cmd="stop",
|
132
|
+
compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
|
126
133
|
compose_service_configs=SERVICE_CONFIGS,
|
127
134
|
envs=[image_env],
|
128
|
-
env_files=[compose_env_file]
|
135
|
+
env_files=[compose_env_file],
|
129
136
|
)
|
130
137
|
runner.register(stop_snake_zrb_app_name_container)
|
@@ -1,26 +1,34 @@
|
|
1
|
+
import os
|
2
|
+
|
1
3
|
from zrb import CmdTask, runner
|
2
4
|
from zrb.builtin.group import project_group
|
3
|
-
|
5
|
+
|
4
6
|
from ._config import CURRENT_DIR, DEPLOYMENT_DIR
|
5
|
-
from ._input import (
|
6
|
-
enable_monitoring_input, image_input, deploy_mode_input, pulumi_stack_input
|
7
|
-
)
|
8
7
|
from ._env import (
|
9
|
-
|
10
|
-
|
11
|
-
|
8
|
+
deployment_enable_monitoring_env,
|
9
|
+
deployment_mode_env,
|
10
|
+
deployment_modules_env,
|
11
|
+
image_env,
|
12
|
+
pulumi_backend_url_env,
|
13
|
+
pulumi_config_passphrase_env,
|
12
14
|
)
|
13
15
|
from ._env_file import deployment_app_env_file, deployment_config_env_file
|
14
|
-
import
|
16
|
+
from ._input import (
|
17
|
+
deploy_mode_input,
|
18
|
+
enable_monitoring_input,
|
19
|
+
image_input,
|
20
|
+
pulumi_stack_input,
|
21
|
+
)
|
22
|
+
from .image import push_snake_zrb_app_name_image
|
15
23
|
|
16
24
|
###############################################################################
|
17
25
|
# ⚙️ deploy-kebab-zrb-task-name
|
18
26
|
###############################################################################
|
19
27
|
|
20
28
|
deploy_snake_zrb_app_name = CmdTask(
|
21
|
-
icon=
|
22
|
-
name=
|
23
|
-
description=
|
29
|
+
icon="🚧",
|
30
|
+
name="deploy-kebab-zrb-app-name",
|
31
|
+
description="Deploy human readable zrb app name",
|
24
32
|
group=project_group,
|
25
33
|
inputs=[
|
26
34
|
image_input,
|
@@ -43,9 +51,9 @@ deploy_snake_zrb_app_name = CmdTask(
|
|
43
51
|
deployment_enable_monitoring_env,
|
44
52
|
],
|
45
53
|
cmd_path=[
|
46
|
-
os.path.join(CURRENT_DIR,
|
47
|
-
os.path.join(CURRENT_DIR,
|
48
|
-
]
|
54
|
+
os.path.join(CURRENT_DIR, "cmd", "pulumi-init-stack.sh"),
|
55
|
+
os.path.join(CURRENT_DIR, "cmd", "pulumi-up.sh"),
|
56
|
+
],
|
49
57
|
)
|
50
58
|
runner.register(deploy_snake_zrb_app_name)
|
51
59
|
|
@@ -54,9 +62,9 @@ runner.register(deploy_snake_zrb_app_name)
|
|
54
62
|
###############################################################################
|
55
63
|
|
56
64
|
destroy_snake_zrb_app_name = CmdTask(
|
57
|
-
icon=
|
58
|
-
name=
|
59
|
-
description=
|
65
|
+
icon="💨",
|
66
|
+
name="destroy-kebab-zrb-app-name",
|
67
|
+
description="Remove human readable zrb app name deployment",
|
60
68
|
group=project_group,
|
61
69
|
inputs=[
|
62
70
|
pulumi_stack_input,
|
@@ -73,8 +81,8 @@ destroy_snake_zrb_app_name = CmdTask(
|
|
73
81
|
deployment_modules_env,
|
74
82
|
],
|
75
83
|
cmd_path=[
|
76
|
-
os.path.join(CURRENT_DIR,
|
77
|
-
os.path.join(CURRENT_DIR,
|
78
|
-
]
|
84
|
+
os.path.join(CURRENT_DIR, "cmd", "pulumi-init-stack.sh"),
|
85
|
+
os.path.join(CURRENT_DIR, "cmd", "pulumi-destroy.sh"),
|
86
|
+
],
|
79
87
|
)
|
80
88
|
runner.register(destroy_snake_zrb_app_name)
|
@@ -1,36 +1,35 @@
|
|
1
|
+
import os
|
2
|
+
|
1
3
|
from zrb import CmdTask, Env, EnvFile, PathChecker, runner
|
2
4
|
from zrb.builtin.group import project_group
|
5
|
+
|
3
6
|
from ._config import (
|
4
|
-
|
5
|
-
|
7
|
+
APP_FRONTEND_BUILD_DIR,
|
8
|
+
APP_FRONTEND_DIR,
|
9
|
+
APP_TEMPLATE_ENV_FILE_NAME,
|
10
|
+
CURRENT_DIR,
|
6
11
|
)
|
7
|
-
import os
|
8
12
|
|
9
13
|
###############################################################################
|
10
14
|
# ⚙️ build-kebab-zrb-task-name-frontend
|
11
15
|
###############################################################################
|
12
16
|
|
13
17
|
build_snake_zrb_app_name_frontend = CmdTask(
|
14
|
-
icon=
|
15
|
-
name=
|
16
|
-
description=
|
18
|
+
icon="🚤",
|
19
|
+
name="build-kebab-zrb-app-name-frontend",
|
20
|
+
description="Build frontend for human readable zrb app name",
|
17
21
|
group=project_group,
|
18
22
|
cwd=APP_FRONTEND_DIR,
|
19
|
-
cmd_path=os.path.join(CURRENT_DIR,
|
23
|
+
cmd_path=os.path.join(CURRENT_DIR, "cmd", "app-build-frontend.sh"),
|
20
24
|
checkers=[
|
21
25
|
PathChecker(
|
22
|
-
name=
|
23
|
-
path=APP_FRONTEND_BUILD_DIR
|
26
|
+
name="check-kebab-zrb-app-name-frontend-build", path=APP_FRONTEND_BUILD_DIR
|
24
27
|
)
|
25
28
|
],
|
26
29
|
env_files=[
|
27
|
-
EnvFile(
|
28
|
-
path=APP_TEMPLATE_ENV_FILE_NAME, prefix='ZRB_ENV_PREFIX'
|
29
|
-
),
|
30
|
+
EnvFile(path=APP_TEMPLATE_ENV_FILE_NAME, prefix="ZRB_ENV_PREFIX"),
|
30
31
|
],
|
31
|
-
envs=[
|
32
|
-
Env(name='WATCH', os_name='', default='1')
|
33
|
-
]
|
32
|
+
envs=[Env(name="WATCH", os_name="", default="1")],
|
34
33
|
)
|
35
34
|
runner.register(build_snake_zrb_app_name_frontend)
|
36
35
|
|
@@ -39,23 +38,18 @@ runner.register(build_snake_zrb_app_name_frontend)
|
|
39
38
|
###############################################################################
|
40
39
|
|
41
40
|
build_snake_zrb_app_name_frontend_once = CmdTask(
|
42
|
-
icon=
|
43
|
-
name=
|
44
|
-
description=
|
41
|
+
icon="🚤",
|
42
|
+
name="build-kebab-zrb-app-name-frontend_once",
|
43
|
+
description="Build frontend for human readable zrb app name",
|
45
44
|
cwd=APP_FRONTEND_DIR,
|
46
|
-
cmd_path=os.path.join(CURRENT_DIR,
|
45
|
+
cmd_path=os.path.join(CURRENT_DIR, "cmd", "app-build-frontend.sh"),
|
47
46
|
checkers=[
|
48
47
|
PathChecker(
|
49
|
-
name=
|
50
|
-
path=APP_FRONTEND_BUILD_DIR
|
48
|
+
name="check-kebab-zrb-app-name-frontend-build", path=APP_FRONTEND_BUILD_DIR
|
51
49
|
)
|
52
50
|
],
|
53
51
|
env_files=[
|
54
|
-
EnvFile(
|
55
|
-
path=APP_TEMPLATE_ENV_FILE_NAME, prefix='ZRB_ENV_PREFIX'
|
56
|
-
),
|
52
|
+
EnvFile(path=APP_TEMPLATE_ENV_FILE_NAME, prefix="ZRB_ENV_PREFIX"),
|
57
53
|
],
|
58
|
-
envs=[
|
59
|
-
Env(name='WATCH', os_name='', default='0')
|
60
|
-
]
|
54
|
+
envs=[Env(name="WATCH", os_name="", default="0")],
|
61
55
|
)
|