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.
Files changed (316) hide show
  1. zrb/__init__.py +24 -20
  2. zrb/__main__.py +5 -5
  3. zrb/action/runner.py +22 -30
  4. zrb/advertisement.py +10 -9
  5. zrb/builtin/__init__.py +18 -16
  6. zrb/builtin/base64.py +13 -18
  7. zrb/builtin/devtool/__init__.py +14 -3
  8. zrb/builtin/devtool/devtool_install.py +207 -221
  9. zrb/builtin/env.py +9 -12
  10. zrb/builtin/eval.py +9 -9
  11. zrb/builtin/explain.py +73 -74
  12. zrb/builtin/generator/__init__.py +7 -11
  13. zrb/builtin/generator/app_generator/add.py +86 -87
  14. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/add.py +78 -77
  15. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_checker.py +6 -6
  16. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/_common.py +14 -15
  17. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/container.py +32 -32
  18. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/deployment.py +29 -30
  19. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/image.py +1 -3
  20. zrb/builtin/generator/app_generator/template/base/_automate/generate_snake_zrb_meta_template_name/template/_automate/snake_zrb_app_name/local.py +5 -4
  21. 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
  22. zrb/builtin/generator/app_generator/template/build-custom-image/_automate/generate_snake_zrb_meta_template_name/add.py +89 -87
  23. 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
  24. 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
  25. 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
  26. 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
  27. 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
  28. 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
  29. 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
  30. 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
  31. zrb/builtin/generator/cmd_task/add.py +23 -25
  32. zrb/builtin/generator/cmd_task/template/_automate/snake_zrb_task_name.py +3 -5
  33. zrb/builtin/generator/common/helper.py +15 -20
  34. zrb/builtin/generator/common/task_factory.py +29 -26
  35. zrb/builtin/generator/common/task_input.py +97 -91
  36. zrb/builtin/generator/docker_compose_task/add.py +38 -39
  37. zrb/builtin/generator/docker_compose_task/template/_automate/snake_zrb_task_name.py +13 -19
  38. zrb/builtin/generator/docker_compose_task/template/src/kebab-zrb-task-name/image/main.py +18 -14
  39. zrb/builtin/generator/fastapp/add.py +94 -90
  40. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_checker.py +28 -27
  41. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_config.py +68 -39
  42. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_env.py +24 -22
  43. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_env_file.py +12 -12
  44. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_get_start_microservices.py +43 -41
  45. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_helper.py +23 -24
  46. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/_input.py +21 -20
  47. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-load-test.sh +1 -1
  48. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-start.sh +1 -1
  49. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/cmd/app-test.sh +2 -2
  50. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/container.py +46 -39
  51. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/deployment.py +28 -20
  52. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/frontend.py +21 -27
  53. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/image.py +23 -18
  54. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/load_test.py +35 -36
  55. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/local.py +68 -58
  56. zrb/builtin/generator/fastapp/template/_automate/snake_zrb_app_name/test.py +24 -38
  57. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/__main__.py +23 -21
  58. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/_common.py +72 -75
  59. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/app_helper.py +70 -75
  60. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_postgresql_helper.py +18 -21
  61. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_rabbitmq_helper.py +11 -19
  62. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_redpanda_helper.py +18 -15
  63. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/deployment/helm_signoz_helper.py +17 -21
  64. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/docker-compose.yml +12 -12
  65. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/loadtest/locustfile.py +10 -12
  66. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/Dockerfile +1 -0
  67. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app.py +35 -30
  68. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app_lifespan.py +21 -17
  69. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/app_state.py +3 -2
  70. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/db_connection.py +18 -20
  71. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/frontend_index.py +5 -6
  72. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/log.py +7 -15
  73. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/messagebus.py +38 -34
  74. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/component/rpc.py +19 -18
  75. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/config.py +68 -103
  76. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/error.py +11 -10
  77. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/__init__.py +2 -4
  78. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/admin.py +38 -35
  79. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/consumer.py +38 -45
  80. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/kafka/publisher.py +26 -29
  81. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/messagebus.py +8 -14
  82. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/mock.py +12 -8
  83. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/admin.py +37 -44
  84. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/consumer.py +42 -67
  85. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/messagebus/rabbitmq/publisher.py +32 -55
  86. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/model/repo_model.py +11 -10
  87. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/__init__.py +2 -2
  88. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/db_entity_mixin.py +3 -6
  89. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/db_repo.py +76 -83
  90. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/repo.py +5 -5
  91. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/repo/search_filter.py +1 -0
  92. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/__init__.py +1 -1
  93. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/messagebus/caller.py +17 -19
  94. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/messagebus/server.py +14 -18
  95. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/rpc/rpc.py +15 -28
  96. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/schema/__init__.py +1 -1
  97. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/schema/base_schema.py +6 -5
  98. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/serializer/__init__.py +1 -3
  99. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/core/serializer/serializer.py +3 -4
  100. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/async_task.py +3 -5
  101. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/conversion.py +10 -10
  102. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/helper/migration.py +6 -10
  103. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/migrate.py +3 -2
  104. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/api.py +7 -12
  105. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/__init__.py +4 -6
  106. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/access_token_scheme.py +9 -10
  107. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/access_token_util.py +6 -5
  108. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/authorizer.py +4 -4
  109. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/bearer_token_scheme.py +1 -1
  110. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/model/user_model.py +8 -10
  111. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/password_hasher.py +1 -1
  112. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/refresh_token_util.py +7 -6
  113. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/group_repo.py +3 -8
  114. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/permission_repo.py +3 -7
  115. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/repo/user_repo.py +3 -5
  116. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/component/user.py +12 -7
  117. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/__init__.py +7 -12
  118. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/access_token/scheme.py +7 -12
  119. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/access_token/util.py +20 -30
  120. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/authorizer/authorizer.py +1 -3
  121. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/authorizer/rpc_authorizer.py +5 -12
  122. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/password_hasher/bcrypt_password_hasher.py +3 -8
  123. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/password_hasher/password_hasher.py +0 -1
  124. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/core/refresh_token/util.py +15 -21
  125. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/api.py +42 -49
  126. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/model.py +3 -7
  127. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/repo.py +18 -16
  128. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/group/rpc.py +26 -41
  129. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/api.py +46 -51
  130. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/model.py +5 -7
  131. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/repo.py +11 -8
  132. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/permission/rpc.py +28 -45
  133. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/table.py +10 -10
  134. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/api.py +60 -72
  135. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/model.py +32 -61
  136. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/repo.py +33 -36
  137. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/entity/user/rpc.py +42 -61
  138. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/event.py +2 -4
  139. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/migrate.py +3 -5
  140. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/register_module.py +11 -12
  141. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/register_permission.py +19 -26
  142. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/rpc.py +5 -13
  143. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/group.py +6 -4
  144. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/permission.py +3 -1
  145. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/request.py +1 -0
  146. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/token.py +2 -2
  147. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/auth/schema/user.py +4 -3
  148. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/api.py +4 -5
  149. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/component/model/activity_model.py +3 -9
  150. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/component/repo/activity_repo.py +3 -7
  151. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/core/historical_repo_model.py +13 -13
  152. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/api.py +22 -23
  153. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/event.py +5 -7
  154. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/model.py +2 -6
  155. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/repo.py +8 -8
  156. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/activity/rpc.py +28 -45
  157. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/entity/table.py +3 -3
  158. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/event.py +4 -8
  159. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/migrate.py +2 -4
  160. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/register_module.py +10 -11
  161. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/rpc.py +3 -5
  162. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/module/log/schema/activity.py +3 -1
  163. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/src/requirements.txt +12 -12
  164. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_group_crud.py +76 -106
  165. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_permission_crud.py +73 -103
  166. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_user_crud.py +92 -122
  167. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/auth/test_user_login.py +107 -134
  168. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/conftest.py +2 -2
  169. zrb/builtin/generator/fastapp/template/src/kebab-zrb-app-name/test/test_liveness_and_readiness.py +8 -15
  170. zrb/builtin/generator/fastapp_crud/add.py +74 -79
  171. zrb/builtin/generator/fastapp_crud/helper.py +51 -48
  172. zrb/builtin/generator/fastapp_crud/task_factory.py +17 -14
  173. 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
  174. 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
  175. 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
  176. 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
  177. 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
  178. 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
  179. 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
  180. zrb/builtin/generator/fastapp_crud/template/src/kebab-zrb-app-name/test/snake_zrb_module_name/test_snake_zrb_entity_name.py +68 -98
  181. zrb/builtin/generator/fastapp_field/add.py +143 -85
  182. zrb/builtin/generator/fastapp_field/helper.py +184 -125
  183. zrb/builtin/generator/fastapp_module/add.py +90 -67
  184. zrb/builtin/generator/fastapp_module/helper.py +141 -155
  185. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/api.py +3 -2
  186. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/entity/table.py +3 -3
  187. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/event.py +3 -5
  188. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/migrate.py +2 -4
  189. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/register_module.py +10 -11
  190. zrb/builtin/generator/fastapp_module/template/src/kebab-zrb-app-name/src/module/snake_zrb_module_name/rpc.py +3 -5
  191. zrb/builtin/generator/pip_package/add.py +39 -40
  192. zrb/builtin/generator/pip_package/template/_automate/snake_zrb_package_name/local.py +30 -30
  193. zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/__init__.py +1 -0
  194. zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/__main__.py +1 -0
  195. zrb/builtin/generator/pip_package/template/src/kebab-zrb-package-name/src/snake_zrb_package_name/util.py +2 -2
  196. zrb/builtin/generator/plugin/create.py +39 -36
  197. zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/__init__.py +1 -1
  198. zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/__main__.py +1 -0
  199. zrb/builtin/generator/plugin/template/src/snake_zrb_package_name/task/example_task.py +6 -4
  200. zrb/builtin/generator/plugin/template/zrb_init.py +27 -27
  201. zrb/builtin/generator/project/create.py +38 -46
  202. zrb/builtin/generator/project/template/.flake8 +3 -0
  203. zrb/builtin/generator/project/template/project.sh +19 -10
  204. zrb/builtin/generator/project_task/task_factory.py +60 -61
  205. zrb/builtin/generator/project_task/template/_automate/_project/__init__.py +2 -2
  206. zrb/builtin/generator/project_task/template/_automate/_project/build_project_images.py +4 -4
  207. zrb/builtin/generator/project_task/template/_automate/_project/deploy_project.py +4 -4
  208. zrb/builtin/generator/project_task/template/_automate/_project/destroy_project.py +4 -4
  209. zrb/builtin/generator/project_task/template/_automate/_project/push_project_images.py +4 -4
  210. zrb/builtin/generator/project_task/template/_automate/_project/remove_project_containers.py +4 -4
  211. zrb/builtin/generator/project_task/template/_automate/_project/start_project.py +4 -4
  212. zrb/builtin/generator/project_task/template/_automate/_project/start_project_containers.py +4 -4
  213. zrb/builtin/generator/project_task/template/_automate/_project/stop_project_containers.py +4 -4
  214. zrb/builtin/generator/python_task/add.py +25 -33
  215. zrb/builtin/generator/python_task/template/_automate/snake_zrb_task_name.py +8 -7
  216. zrb/builtin/generator/simple_python_app/add.py +81 -75
  217. zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/_common.py +14 -15
  218. zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/container.py +46 -61
  219. zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/deployment.py +34 -32
  220. zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/image.py +19 -22
  221. zrb/builtin/generator/simple_python_app/template/_automate/snake_zrb_app_name/local.py +23 -25
  222. zrb/builtin/generator/simple_python_app/template/src/kebab-zrb-app-name/deployment/__main__.py +24 -32
  223. zrb/builtin/generator/simple_python_app/template/src/kebab-zrb-app-name/src/main.py +18 -14
  224. zrb/builtin/git.py +46 -46
  225. zrb/builtin/group.py +13 -34
  226. zrb/builtin/helper/reccuring_action.py +26 -29
  227. zrb/builtin/md5.py +17 -30
  228. zrb/builtin/process.py +19 -19
  229. zrb/builtin/project.py +13 -15
  230. zrb/builtin/say.py +69 -88
  231. zrb/builtin/schedule.py +15 -19
  232. zrb/builtin/ubuntu.py +44 -35
  233. zrb/builtin/update.py +5 -5
  234. zrb/builtin/version.py +3 -7
  235. zrb/builtin/watch_changes.py +24 -25
  236. zrb/config/config.py +19 -18
  237. zrb/helper/accessories/color.py +18 -6
  238. zrb/helper/accessories/icon.py +24 -3
  239. zrb/helper/accessories/name.py +120 -28
  240. zrb/helper/advertisement.py +9 -13
  241. zrb/helper/callable.py +2 -4
  242. zrb/helper/cli.py +27 -31
  243. zrb/helper/codemod/add_argument_to_function.py +3 -4
  244. zrb/helper/codemod/add_argument_to_function_call.py +4 -7
  245. zrb/helper/codemod/add_assert_resource.py +7 -7
  246. zrb/helper/codemod/add_function_call.py +3 -5
  247. zrb/helper/codemod/add_import_module.py +15 -26
  248. zrb/helper/codemod/add_key_value_to_dict.py +7 -10
  249. zrb/helper/codemod/add_property_to_class.py +10 -8
  250. zrb/helper/codemod/add_upstream_to_task.py +21 -33
  251. zrb/helper/codemod/append_code_to_function.py +6 -13
  252. zrb/helper/codemod/format_code.py +2 -1
  253. zrb/helper/default_env.py +25 -25
  254. zrb/helper/docker_compose/fetch_external_env.py +18 -18
  255. zrb/helper/docker_compose/file.py +5 -4
  256. zrb/helper/docstring.py +44 -47
  257. zrb/helper/env_map/fetch.py +7 -12
  258. zrb/helper/file/copy_tree.py +12 -17
  259. zrb/helper/file/match.py +6 -7
  260. zrb/helper/file/text.py +8 -6
  261. zrb/helper/git/detect_changes.py +9 -8
  262. zrb/helper/loader/load_module.py +14 -13
  263. zrb/helper/log.py +4 -3
  264. zrb/helper/map/conversion.py +4 -5
  265. zrb/helper/python_task.py +2 -4
  266. zrb/helper/render_data.py +25 -18
  267. zrb/helper/string/constant.py +2 -2
  268. zrb/helper/string/conversion.py +17 -16
  269. zrb/helper/string/jinja.py +2 -2
  270. zrb/helper/typecheck.py +6 -4
  271. zrb/helper/typing.py +10 -2
  272. zrb/helper/util.py +44 -40
  273. zrb/task/any_task.py +251 -251
  274. zrb/task/base_remote_cmd_task.py +76 -59
  275. zrb/task/base_task/base_task.py +95 -108
  276. zrb/task/base_task/component/base_task_model.py +73 -71
  277. zrb/task/base_task/component/common_task_model.py +42 -29
  278. zrb/task/base_task/component/pid_model.py +3 -5
  279. zrb/task/base_task/component/renderer.py +26 -36
  280. zrb/task/base_task/component/trackers.py +6 -9
  281. zrb/task/checker.py +14 -9
  282. zrb/task/cmd_task.py +102 -100
  283. zrb/task/decorator.py +19 -13
  284. zrb/task/docker_compose_task.py +127 -98
  285. zrb/task/flow_task.py +16 -19
  286. zrb/task/http_checker.py +40 -36
  287. zrb/task/notifier.py +50 -38
  288. zrb/task/parallel.py +3 -3
  289. zrb/task/path_checker.py +34 -27
  290. zrb/task/path_watcher.py +49 -40
  291. zrb/task/port_checker.py +33 -26
  292. zrb/task/recurring_task.py +36 -42
  293. zrb/task/remote_cmd_task.py +31 -28
  294. zrb/task/resource_maker.py +66 -52
  295. zrb/task/rsync_task.py +24 -21
  296. zrb/task/task.py +4 -3
  297. zrb/task/time_watcher.py +36 -31
  298. zrb/task_env/constant.py +1 -1
  299. zrb/task_env/env.py +33 -31
  300. zrb/task_env/env_file.py +24 -23
  301. zrb/task_group/group.py +27 -30
  302. zrb/task_input/any_input.py +18 -16
  303. zrb/task_input/base_input.py +26 -26
  304. zrb/task_input/bool_input.py +6 -6
  305. zrb/task_input/choice_input.py +11 -9
  306. zrb/task_input/constant.py +1 -1
  307. zrb/task_input/float_input.py +6 -5
  308. zrb/task_input/int_input.py +8 -8
  309. zrb/task_input/password_input.py +9 -9
  310. zrb/task_input/str_input.py +8 -8
  311. zrb/task_input/task_input.py +4 -2
  312. {zrb-0.6.0.dist-info โ†’ zrb-0.6.1.dist-info}/METADATA +3 -1
  313. {zrb-0.6.0.dist-info โ†’ zrb-0.6.1.dist-info}/RECORD +316 -315
  314. {zrb-0.6.0.dist-info โ†’ zrb-0.6.1.dist-info}/LICENSE +0 -0
  315. {zrb-0.6.0.dist-info โ†’ zrb-0.6.1.dist-info}/WHEEL +0 -0
  316. {zrb-0.6.0.dist-info โ†’ zrb-0.6.1.dist-info}/entry_points.txt +0 -0
@@ -1,30 +1,37 @@
1
- from zrb import DockerComposeTask, runner
1
+ from zrb import BoolInput, DockerComposeTask, runner
2
2
  from zrb.builtin.group import project_group
3
+
3
4
  from ._config import RESOURCE_DIR
4
- from ._input import local_input, image_input
5
5
  from ._env import image_env
6
+ from ._input import image_input, local_input
6
7
 
7
8
  ###############################################################################
8
9
  # โš™๏ธ build-kebab-zrb-task-name-image
9
10
  ###############################################################################
10
11
 
11
12
  build_snake_zrb_app_name_image = DockerComposeTask(
12
- icon='๐Ÿญ',
13
- name='build-kebab-zrb-app-name-image',
14
- description='Build human readable zrb app name image',
13
+ icon="๐Ÿญ",
14
+ name="build-kebab-zrb-app-name-image",
15
+ description="Build human readable zrb app name image",
15
16
  group=project_group,
16
17
  inputs=[
17
18
  local_input,
18
19
  image_input,
20
+ BoolInput(
21
+ name="build-kebab-zrb-app-name-with-cache",
22
+ prompt="Build human readable zrb app name image with Cache",
23
+ default=True,
24
+ ),
19
25
  ],
20
26
  envs=[image_env],
21
- should_execute='{{ input.local_snake_zrb_app_name}}',
27
+ should_execute="{{ input.local_snake_zrb_app_name}}",
22
28
  cwd=RESOURCE_DIR,
23
- compose_cmd='build',
24
- compose_args=[
25
- 'kebab-zrb-app-name'
29
+ compose_cmd="build",
30
+ compose_args=["kebab-zrb-app-name"],
31
+ compose_flags=[
32
+ "{{ '--no-cache' if not input.build_snake_zrb_app_name_with_cache else '' }}"
26
33
  ],
27
- compose_env_prefix='CONTAINER_ZRB_ENV_PREFIX',
34
+ compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
28
35
  )
29
36
  runner.register(build_snake_zrb_app_name_image)
30
37
 
@@ -33,9 +40,9 @@ runner.register(build_snake_zrb_app_name_image)
33
40
  ###############################################################################
34
41
 
35
42
  push_snake_zrb_app_name_image = DockerComposeTask(
36
- icon='๐Ÿ“ฐ',
37
- name='push-kebab-zrb-app-name-image',
38
- description='Push human readable zrb app name image',
43
+ icon="๐Ÿ“ฐ",
44
+ name="push-kebab-zrb-app-name-image",
45
+ description="Push human readable zrb app name image",
39
46
  group=project_group,
40
47
  inputs=[
41
48
  local_input,
@@ -44,10 +51,8 @@ push_snake_zrb_app_name_image = DockerComposeTask(
44
51
  envs=[image_env],
45
52
  upstreams=[build_snake_zrb_app_name_image],
46
53
  cwd=RESOURCE_DIR,
47
- compose_cmd='push',
48
- compose_args=[
49
- 'kebab-zrb-app-name'
50
- ],
51
- compose_env_prefix='CONTAINER_ZRB_ENV_PREFIX',
54
+ compose_cmd="push",
55
+ compose_args=["kebab-zrb-app-name"],
56
+ compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
52
57
  )
53
58
  runner.register(push_snake_zrb_app_name_image)
@@ -1,24 +1,24 @@
1
- from zrb import CmdTask, EnvFile, BoolInput, StrInput, IntInput, runner
2
- from zrb.builtin.group import project_group
3
- from ._config import (
4
- CURRENT_DIR, LOAD_TEST_DIR, LOAD_TEST_TEMPLATE_ENV_FILE_NAME
5
- )
6
1
  import os
7
2
 
3
+ from zrb import BoolInput, CmdTask, EnvFile, IntInput, StrInput, runner
4
+ from zrb.builtin.group import project_group
5
+
6
+ from ._config import CURRENT_DIR, LOAD_TEST_DIR, LOAD_TEST_TEMPLATE_ENV_FILE_NAME
7
+
8
8
  ###############################################################################
9
9
  # โš™๏ธ prepare-kebab-zrb-task-name-load-test
10
10
  ###############################################################################
11
11
 
12
12
  prepare_snake_zrb_app_name_load_test = CmdTask(
13
- icon='๐Ÿšค',
14
- name='prepare-kebab-zrb-app-name-load-test',
15
- description='Prepare load test for human readable zrb app name',
13
+ icon="๐Ÿšค",
14
+ name="prepare-kebab-zrb-app-name-load-test",
15
+ description="Prepare load test for human readable zrb app name",
16
16
  group=project_group,
17
17
  cwd=LOAD_TEST_DIR,
18
18
  cmd_path=[
19
- os.path.join(CURRENT_DIR, 'cmd', 'activate-venv.sh'),
20
- os.path.join(CURRENT_DIR, 'cmd', 'app-prepare-load-test.sh'),
21
- ]
19
+ os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
20
+ os.path.join(CURRENT_DIR, "cmd", "app-prepare-load-test.sh"),
21
+ ],
22
22
  )
23
23
  runner.register(prepare_snake_zrb_app_name_load_test)
24
24
 
@@ -27,53 +27,52 @@ runner.register(prepare_snake_zrb_app_name_load_test)
27
27
  ###############################################################################
28
28
 
29
29
  load_test_snake_zrb_app_name_load_test = CmdTask(
30
- icon='๐Ÿงช',
31
- name='load-test-kebab-zrb-app-name',
32
- description='Load test human readable zrb app name',
30
+ icon="๐Ÿงช",
31
+ name="load-test-kebab-zrb-app-name",
32
+ description="Load test human readable zrb app name",
33
33
  group=project_group,
34
34
  upstreams=[prepare_snake_zrb_app_name_load_test],
35
35
  inputs=[
36
36
  BoolInput(
37
- name='kebab-zrb-app-name-load-test-headless',
37
+ name="kebab-zrb-app-name-load-test-headless",
38
38
  default=True,
39
- description='Load test UI headless',
40
- prompt='Load test UI headless (if True, there will be no UI)',
39
+ description="Load test UI headless",
40
+ prompt="Load test UI headless (if True, there will be no UI)",
41
41
  ),
42
42
  IntInput(
43
- name='kebab-zrb-app-name-load-test-port',
43
+ name="kebab-zrb-app-name-load-test-port",
44
44
  default=8089,
45
- description='Load test UI web port',
46
- prompt='Load test UI web port (Only works if headless is False)',
45
+ description="Load test UI web port",
46
+ prompt="Load test UI web port (Only works if headless is False)",
47
47
  ),
48
48
  IntInput(
49
- name='kebab-zrb-app-name-load-test-users',
49
+ name="kebab-zrb-app-name-load-test-users",
50
50
  default=200,
51
- description='Load test users',
52
- prompt='Load test users',
51
+ description="Load test users",
52
+ prompt="Load test users",
53
53
  ),
54
54
  IntInput(
55
- name='kebab-zrb-app-name-load-test-spawn-rate',
55
+ name="kebab-zrb-app-name-load-test-spawn-rate",
56
56
  default=10,
57
- description='Load test spawn rate',
58
- prompt='Load test spawn rate',
57
+ description="Load test spawn rate",
58
+ prompt="Load test spawn rate",
59
59
  ),
60
60
  StrInput(
61
- name='kebab-zrb-app-name-load-test-url',
62
- default='http://localhost:zrbAppHttpPort',
63
- description='Load test url',
64
- prompt='Load test url',
65
- )
61
+ name="kebab-zrb-app-name-load-test-url",
62
+ default="http://localhost:zrbAppHttpPort",
63
+ description="Load test url",
64
+ prompt="Load test url",
65
+ ),
66
66
  ],
67
67
  cwd=LOAD_TEST_DIR,
68
68
  env_files=[
69
69
  EnvFile(
70
- path=LOAD_TEST_TEMPLATE_ENV_FILE_NAME,
71
- prefix='LOAD_TEST_ZRB_ENV_PREFIX'
70
+ path=LOAD_TEST_TEMPLATE_ENV_FILE_NAME, prefix="LOAD_TEST_ZRB_ENV_PREFIX"
72
71
  )
73
72
  ],
74
73
  cmd_path=[
75
- os.path.join(CURRENT_DIR, 'cmd', 'activate-venv.sh'),
76
- os.path.join(CURRENT_DIR, 'cmd', 'app-load-test.sh'),
77
- ]
74
+ os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
75
+ os.path.join(CURRENT_DIR, "cmd", "app-load-test.sh"),
76
+ ],
78
77
  )
79
78
  runner.register(load_test_snake_zrb_app_name_load_test)
@@ -1,49 +1,59 @@
1
- from zrb import CmdTask, DockerComposeTask, Task, Env, runner
1
+ import os
2
+
3
+ from zrb import CmdTask, DockerComposeTask, Env, Task, runner
2
4
  from zrb.builtin.group import project_group
3
- from ._config import CURRENT_DIR, APP_DIR, RESOURCE_DIR
4
- from ._helper import (
5
- activate_support_compose_profile, should_start_support_container,
6
- should_start_local_microservices, should_start_local_monolith
7
- )
5
+
8
6
  from ._checker import (
9
- rabbitmq_checker, rabbitmq_management_checker, redpanda_console_checker,
10
- kafka_outside_checker, kafka_plaintext_checker, pandaproxy_outside_checker,
11
- pandaproxy_plaintext_checker, app_local_checker
12
- )
13
- from ._input import (
14
- local_input, https_input, run_mode_input, enable_monitoring_input,
15
- host_input, image_input
7
+ app_local_checker,
8
+ kafka_outside_checker,
9
+ kafka_plaintext_checker,
10
+ pandaproxy_outside_checker,
11
+ pandaproxy_plaintext_checker,
12
+ rabbitmq_checker,
13
+ rabbitmq_management_checker,
14
+ redpanda_console_checker,
16
15
  )
16
+ from ._config import APP_DIR, CURRENT_DIR, RESOURCE_DIR
17
17
  from ._env import app_enable_otel_env
18
18
  from ._env_file import app_env_file
19
19
  from ._get_start_microservices import get_start_microservices
20
+ from ._helper import (
21
+ activate_support_compose_profile,
22
+ should_start_local_microservices,
23
+ should_start_local_monolith,
24
+ should_start_support_container,
25
+ )
26
+ from ._input import (
27
+ enable_monitoring_input,
28
+ host_input,
29
+ https_input,
30
+ image_input,
31
+ local_input,
32
+ run_mode_input,
33
+ )
34
+ from .container import compose_env_file, remove_snake_zrb_app_name_container
20
35
  from .frontend import build_snake_zrb_app_name_frontend
21
- from .container import remove_snake_zrb_app_name_container, compose_env_file
22
- import os
23
-
24
36
 
25
37
  ###############################################################################
26
38
  # โš™๏ธ init-kebab-zrb-task-name-support-container
27
39
  ###############################################################################
28
40
 
29
41
  init_snake_zrb_app_name_support_container = DockerComposeTask(
30
- icon='๐Ÿ”ฅ',
31
- name='init-kebab-zrb-app-name-support-container',
42
+ icon="๐Ÿ”ฅ",
43
+ name="init-kebab-zrb-app-name-support-container",
32
44
  inputs=[
33
45
  local_input,
34
46
  host_input,
35
47
  image_input,
36
48
  ],
37
49
  should_execute=should_start_support_container,
38
- upstreams=[
39
- remove_snake_zrb_app_name_container
40
- ],
50
+ upstreams=[remove_snake_zrb_app_name_container],
41
51
  cwd=RESOURCE_DIR,
42
52
  setup_cmd=activate_support_compose_profile,
43
- compose_cmd='up',
44
- compose_flags=['-d'],
45
- compose_env_prefix='CONTAINER_ZRB_ENV_PREFIX',
46
- env_files=[compose_env_file]
53
+ compose_cmd="up",
54
+ compose_flags=["-d"],
55
+ compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
56
+ env_files=[compose_env_file],
47
57
  )
48
58
 
49
59
  ###############################################################################
@@ -51,9 +61,9 @@ init_snake_zrb_app_name_support_container = DockerComposeTask(
51
61
  ###############################################################################
52
62
 
53
63
  start_snake_zrb_app_name_support_container = DockerComposeTask(
54
- icon='๐Ÿณ',
55
- name='start-kebab-zrb-app-name-support-container',
56
- description='Start human readable zrb app name container',
64
+ icon="๐Ÿณ",
65
+ name="start-kebab-zrb-app-name-support-container",
66
+ description="Start human readable zrb app name container",
57
67
  inputs=[
58
68
  local_input,
59
69
  enable_monitoring_input,
@@ -65,9 +75,9 @@ start_snake_zrb_app_name_support_container = DockerComposeTask(
65
75
  upstreams=[init_snake_zrb_app_name_support_container],
66
76
  cwd=RESOURCE_DIR,
67
77
  setup_cmd=activate_support_compose_profile,
68
- compose_cmd='logs',
69
- compose_flags=['-f'],
70
- compose_env_prefix='CONTAINER_ZRB_ENV_PREFIX',
78
+ compose_cmd="logs",
79
+ compose_flags=["-f"],
80
+ compose_env_prefix="CONTAINER_ZRB_ENV_PREFIX",
71
81
  env_files=[compose_env_file],
72
82
  checkers=[
73
83
  rabbitmq_checker,
@@ -77,7 +87,7 @@ start_snake_zrb_app_name_support_container = DockerComposeTask(
77
87
  redpanda_console_checker,
78
88
  pandaproxy_outside_checker,
79
89
  pandaproxy_plaintext_checker,
80
- ]
90
+ ],
81
91
  )
82
92
 
83
93
  ###############################################################################
@@ -85,15 +95,15 @@ start_snake_zrb_app_name_support_container = DockerComposeTask(
85
95
  ###############################################################################
86
96
 
87
97
  prepare_snake_zrb_app_name_backend = CmdTask(
88
- icon='๐Ÿšค',
89
- name='prepare-kebab-zrb-app-name-backend',
90
- description='Prepare backend for human readable zrb app name',
98
+ icon="๐Ÿšค",
99
+ name="prepare-kebab-zrb-app-name-backend",
100
+ description="Prepare backend for human readable zrb app name",
91
101
  group=project_group,
92
102
  cwd=APP_DIR,
93
103
  cmd_path=[
94
- os.path.join(CURRENT_DIR, 'cmd', 'activate-venv.sh'),
95
- os.path.join(CURRENT_DIR, 'cmd', 'app-prepare-backend.sh'),
96
- ]
104
+ os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
105
+ os.path.join(CURRENT_DIR, "cmd", "app-prepare-backend.sh"),
106
+ ],
97
107
  )
98
108
  runner.register(prepare_snake_zrb_app_name_backend)
99
109
 
@@ -102,14 +112,14 @@ runner.register(prepare_snake_zrb_app_name_backend)
102
112
  ###############################################################################
103
113
 
104
114
  start_monolith_snake_zrb_app_name = CmdTask(
105
- icon='๐Ÿšค',
106
- name='start-monolith-kebab-zrb-app-name',
115
+ icon="๐Ÿšค",
116
+ name="start-monolith-kebab-zrb-app-name",
107
117
  inputs=[
108
118
  local_input,
109
119
  enable_monitoring_input,
110
120
  run_mode_input,
111
121
  host_input,
112
- https_input
122
+ https_input,
113
123
  ],
114
124
  should_execute=should_start_local_monolith,
115
125
  upstreams=[
@@ -121,12 +131,12 @@ start_monolith_snake_zrb_app_name = CmdTask(
121
131
  env_files=[app_env_file],
122
132
  envs=[app_enable_otel_env],
123
133
  cmd_path=[
124
- os.path.join(CURRENT_DIR, 'cmd', 'activate-venv.sh'),
125
- os.path.join(CURRENT_DIR, 'cmd', 'app-start.sh'),
134
+ os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
135
+ os.path.join(CURRENT_DIR, "cmd", "app-start.sh"),
126
136
  ],
127
137
  checkers=[
128
138
  app_local_checker,
129
- ]
139
+ ],
130
140
  )
131
141
 
132
142
  ###############################################################################
@@ -134,14 +144,14 @@ start_monolith_snake_zrb_app_name = CmdTask(
134
144
  ###############################################################################
135
145
 
136
146
  start_snake_zrb_app_name_gateway = CmdTask(
137
- icon='๐Ÿšช',
138
- name='start-kebab-zrb-app-name-gateway',
147
+ icon="๐Ÿšช",
148
+ name="start-kebab-zrb-app-name-gateway",
139
149
  inputs=[
140
150
  local_input,
141
151
  enable_monitoring_input,
142
152
  run_mode_input,
143
153
  host_input,
144
- https_input
154
+ https_input,
145
155
  ],
146
156
  should_execute=should_start_local_microservices,
147
157
  upstreams=[
@@ -154,18 +164,18 @@ start_snake_zrb_app_name_gateway = CmdTask(
154
164
  app_env_file,
155
165
  ],
156
166
  envs=[
157
- Env(name='APP_DB_AUTO_MIGRATE', default='false', os_name=''),
158
- Env(name='APP_ENABLE_EVENT_HANDLER', default='false', os_name=''),
159
- Env(name='APP_ENABLE_RPC_SERVER', default='false', os_name=''),
167
+ Env(name="APP_DB_AUTO_MIGRATE", default="false", os_name=""),
168
+ Env(name="APP_ENABLE_EVENT_HANDLER", default="false", os_name=""),
169
+ Env(name="APP_ENABLE_RPC_SERVER", default="false", os_name=""),
160
170
  app_enable_otel_env,
161
171
  ],
162
172
  cmd_path=[
163
- os.path.join(CURRENT_DIR, 'cmd', 'activate-venv.sh'),
164
- os.path.join(CURRENT_DIR, 'cmd', 'app-start.sh'),
173
+ os.path.join(CURRENT_DIR, "cmd", "activate-venv.sh"),
174
+ os.path.join(CURRENT_DIR, "cmd", "app-start.sh"),
165
175
  ],
166
176
  checkers=[
167
177
  app_local_checker,
168
- ]
178
+ ],
169
179
  )
170
180
 
171
181
  ###############################################################################
@@ -173,9 +183,9 @@ start_snake_zrb_app_name_gateway = CmdTask(
173
183
  ###############################################################################
174
184
 
175
185
  start_snake_zrb_app_name = Task(
176
- icon='๐Ÿšค',
177
- name='start-kebab-zrb-app-name',
178
- description='Start human readable zrb app name',
186
+ icon="๐Ÿšค",
187
+ name="start-kebab-zrb-app-name",
188
+ description="Start human readable zrb app name",
179
189
  group=project_group,
180
190
  upstreams=[
181
191
  start_monolith_snake_zrb_app_name,
@@ -186,8 +196,8 @@ start_snake_zrb_app_name = Task(
186
196
  build_snake_zrb_app_name_frontend,
187
197
  prepare_snake_zrb_app_name_backend,
188
198
  ]
189
- )
199
+ ),
190
200
  ],
191
- run=lambda *args, **kwargs: kwargs.get('_task').print_out('๐Ÿ†—')
201
+ run=lambda *args, **kwargs: kwargs.get("_task").print_out("๐Ÿ†—"),
192
202
  )
193
203
  runner.register(start_snake_zrb_app_name)
@@ -1,9 +1,11 @@
1
- from zrb import CmdTask, StrInput, Env, EnvFile, runner, python_task
1
+ import os
2
+
3
+ from zrb import CmdTask, Env, EnvFile, StrInput, python_task, runner
2
4
  from zrb.builtin.group import project_group
3
- from ._config import CURRENT_DIR, RESOURCE_DIR, APP_TEMPLATE_ENV_FILE_NAME
5
+
6
+ from ._config import APP_TEMPLATE_ENV_FILE_NAME, CURRENT_DIR, RESOURCE_DIR
4
7
  from .frontend import build_snake_zrb_app_name_frontend_once
5
8
  from .local import prepare_snake_zrb_app_name_backend
6
- import os
7
9
 
8
10
  ###############################################################################
9
11
  # โš™๏ธ remove-kebab-zrb-task-name-test-db
@@ -11,13 +13,13 @@ import os
11
13
 
12
14
 
13
15
  @python_task(
14
- icon='๐Ÿงช',
15
- name='remove-kebab-zrb-app-name-test-db',
16
+ icon="๐Ÿงช",
17
+ name="remove-kebab-zrb-app-name-test-db",
16
18
  group=project_group,
17
- runner=runner
19
+ runner=runner,
18
20
  )
19
21
  def remove_snake_zrb_app_name_test_db(*args, **kwargs):
20
- test_db_file_path = os.path.join(RESOURCE_DIR, 'test.db')
22
+ test_db_file_path = os.path.join(RESOURCE_DIR, "test.db")
21
23
  if os.path.isfile(test_db_file_path):
22
24
  os.remove(test_db_file_path)
23
25
 
@@ -27,15 +29,15 @@ def remove_snake_zrb_app_name_test_db(*args, **kwargs):
27
29
  ###############################################################################
28
30
 
29
31
  test_snake_zrb_app_name = CmdTask(
30
- icon='๐Ÿšค',
31
- name='test-kebab-zrb-app-name',
32
+ icon="๐Ÿšค",
33
+ name="test-kebab-zrb-app-name",
32
34
  group=project_group,
33
35
  inputs=[
34
36
  StrInput(
35
- name='kebab-zrb-app-name-test',
36
- description='Specific test case (i.e., test/file.py::test_name)',
37
- prompt='Test (i.e., test/file.py::test_name)',
38
- default=''
37
+ name="kebab-zrb-app-name-test",
38
+ description="Specific test case (i.e., test/file.py::test_name)",
39
+ prompt="Test (i.e., test/file.py::test_name)",
40
+ default="",
39
41
  )
40
42
  ],
41
43
  upstreams=[
@@ -44,34 +46,18 @@ test_snake_zrb_app_name = CmdTask(
44
46
  remove_snake_zrb_app_name_test_db,
45
47
  ],
46
48
  cwd=RESOURCE_DIR,
47
- env_files=[
48
- EnvFile(
49
- path=APP_TEMPLATE_ENV_FILE_NAME, prefix='TEST_ZRB_ENV_PREFIX'
50
- )
51
- ],
49
+ env_files=[EnvFile(path=APP_TEMPLATE_ENV_FILE_NAME, prefix="TEST_ZRB_ENV_PREFIX")],
52
50
  envs=[
51
+ Env(name="APP_BROKER_TYPE", os_name="TEST_APP_BROKER_TYPE", default="mock"),
53
52
  Env(
54
- name='APP_BROKER_TYPE',
55
- os_name='TEST_APP_BROKER_TYPE',
56
- default='mock'
57
- ),
58
- Env(
59
- name='APP_DB_CONNECTION',
60
- os_name='TEST_APP_DB_CONNECTION',
61
- default='sqlite:///test.db'
62
- ),
63
- Env(
64
- name='APP_AUTH_ADMIN_ACTIVE',
65
- os_name='',
66
- default='true'
67
- ),
68
- Env(
69
- name='APP',
70
- os_name='APP_ENABLE_OTEL',
71
- default='false'
53
+ name="APP_DB_CONNECTION",
54
+ os_name="TEST_APP_DB_CONNECTION",
55
+ default="sqlite:///test.db",
72
56
  ),
57
+ Env(name="APP_AUTH_ADMIN_ACTIVE", os_name="", default="true"),
58
+ Env(name="APP", os_name="APP_ENABLE_OTEL", default="false"),
73
59
  ],
74
- cmd_path=os.path.join(CURRENT_DIR, 'cmd', 'app-test.sh'),
75
- retry=0
60
+ cmd_path=os.path.join(CURRENT_DIR, "cmd", "app-test.sh"),
61
+ retry=0,
76
62
  )
77
63
  runner.register(test_snake_zrb_app_name)
@@ -1,42 +1,44 @@
1
- '''A Kubernetes Python Pulumi program to deploy kebab-zrb-app-name'''
1
+ """A Kubernetes Python Pulumi program to deploy kebab-zrb-app-name"""
2
2
 
3
- from _common import MODE, BROKER_TYPE, ENABLE_MONITORING
3
+ import pulumi
4
+ from _common import BROKER_TYPE, ENABLE_MONITORING, MODE
4
5
  from app_helper import (
5
- create_app_monolith_deployment, create_app_monolith_service,
6
- create_app_microservices_deployments, create_app_microservices_services
6
+ create_app_microservices_deployments,
7
+ create_app_microservices_services,
8
+ create_app_monolith_deployment,
9
+ create_app_monolith_service,
7
10
  )
8
11
  from helm_postgresql_helper import create_postgresql
9
12
  from helm_rabbitmq_helper import create_rabbitmq
10
13
  from helm_redpanda_helper import create_redpanda
11
14
  from helm_signoz_helper import create_signoz
12
15
 
13
- import pulumi
14
-
15
16
  postgresql = create_postgresql()
16
- pulumi.export('db', postgresql.resources)
17
+ pulumi.export("db", postgresql.resources)
17
18
 
18
- if BROKER_TYPE == 'rabbitmq':
19
+ if BROKER_TYPE == "rabbitmq":
19
20
  rabbitmq = create_rabbitmq()
20
- pulumi.export('broker', rabbitmq.resources)
21
- elif BROKER_TYPE == 'kafka':
21
+ pulumi.export("broker", rabbitmq.resources)
22
+ elif BROKER_TYPE == "kafka":
22
23
  redpanda = create_redpanda()
23
- pulumi.export('broker', redpanda.resources)
24
+ pulumi.export("broker", redpanda.resources)
24
25
 
25
26
  if ENABLE_MONITORING:
26
27
  signoz = create_signoz()
27
- pulumi.export('signoz', signoz.resources)
28
+ pulumi.export("signoz", signoz.resources)
28
29
 
29
- if MODE == 'microservices':
30
+ if MODE == "microservices":
30
31
  deployments = create_app_microservices_deployments()
31
- pulumi.export('app-deployment-names', [
32
- deployment.metadata['name'] for deployment in deployments
33
- ])
32
+ pulumi.export(
33
+ "app-deployment-names",
34
+ [deployment.metadata["name"] for deployment in deployments],
35
+ )
34
36
  services = create_app_microservices_services()
35
- pulumi.export('app-service-names', [
36
- service.metadata['name'] for service in services
37
- ])
37
+ pulumi.export(
38
+ "app-service-names", [service.metadata["name"] for service in services]
39
+ )
38
40
  else:
39
41
  deployment = create_app_monolith_deployment()
40
- pulumi.export('app-deployment-names', [deployment.metadata['name']])
42
+ pulumi.export("app-deployment-names", [deployment.metadata["name"]])
41
43
  service = create_app_monolith_service()
42
- pulumi.export('app-service-names', [service.metadata['name']])
44
+ pulumi.export("app-service-names", [service.metadata["name"]])