zenml-nightly 0.66.0.dev20240930__py3-none-any.whl → 0.68.0.dev20241026__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 (531) hide show
  1. README.md +2 -2
  2. RELEASE_NOTES.md +227 -0
  3. zenml/VERSION +1 -1
  4. zenml/__init__.py +4 -9
  5. zenml/analytics/enums.py +0 -13
  6. zenml/artifact_stores/base_artifact_store.py +11 -0
  7. zenml/artifacts/artifact_config.py +19 -65
  8. zenml/artifacts/external_artifact.py +7 -53
  9. zenml/artifacts/external_artifact_config.py +21 -40
  10. zenml/artifacts/load_directory_materializer.py +91 -0
  11. zenml/artifacts/utils.py +320 -85
  12. zenml/cli/__init__.py +1 -39
  13. zenml/cli/base.py +5 -5
  14. zenml/cli/integration.py +0 -9
  15. zenml/cli/pipeline.py +1 -1
  16. zenml/cli/served_model.py +8 -1
  17. zenml/cli/server.py +8 -232
  18. zenml/cli/stack.py +1 -567
  19. zenml/cli/stack_components.py +0 -578
  20. zenml/cli/utils.py +0 -65
  21. zenml/client.py +11 -26
  22. zenml/client_lazy_loader.py +29 -12
  23. zenml/config/compiler.py +6 -11
  24. zenml/config/server_config.py +7 -5
  25. zenml/config/step_configurations.py +2 -0
  26. zenml/constants.py +3 -33
  27. zenml/enums.py +0 -3
  28. zenml/environment.py +1 -315
  29. zenml/exceptions.py +1 -41
  30. zenml/hooks/hook_validators.py +1 -8
  31. zenml/integrations/airflow/orchestrators/airflow_orchestrator.py +2 -3
  32. zenml/integrations/argilla/__init__.py +1 -1
  33. zenml/integrations/argilla/annotators/argilla_annotator.py +234 -89
  34. zenml/integrations/argilla/flavors/argilla_annotator_flavor.py +10 -5
  35. zenml/integrations/aws/flavors/sagemaker_orchestrator_flavor.py +9 -5
  36. zenml/integrations/aws/orchestrators/sagemaker_orchestrator.py +15 -2
  37. zenml/integrations/aws/service_connectors/aws_service_connector.py +6 -0
  38. zenml/integrations/azure/flavors/azureml_orchestrator_flavor.py +5 -4
  39. zenml/integrations/azure/orchestrators/azureml_orchestrator.py +1 -1
  40. zenml/integrations/bentoml/model_deployers/bentoml_model_deployer.py +85 -19
  41. zenml/integrations/bentoml/services/__init__.py +15 -4
  42. zenml/integrations/bentoml/services/bentoml_container_deployment.py +399 -0
  43. zenml/integrations/bentoml/services/{bentoml_deployment.py → bentoml_local_deployment.py} +81 -40
  44. zenml/{steps/base_parameters.py → integrations/bentoml/services/deployment_type.py} +8 -5
  45. zenml/integrations/bentoml/steps/bento_builder.py +1 -0
  46. zenml/integrations/bentoml/steps/bentoml_deployer.py +93 -41
  47. zenml/integrations/gitlab/code_repositories/gitlab_code_repository.py +6 -1
  48. zenml/integrations/huggingface/__init__.py +1 -6
  49. zenml/integrations/kaniko/image_builders/kaniko_image_builder.py +3 -3
  50. zenml/integrations/lightning/orchestrators/lightning_orchestrator.py +3 -3
  51. zenml/integrations/lightning/orchestrators/lightning_orchestrator_entrypoint.py +2 -2
  52. zenml/integrations/mlflow/experiment_trackers/mlflow_experiment_tracker.py +6 -3
  53. zenml/integrations/mlflow/model_registries/mlflow_model_registry.py +6 -0
  54. zenml/integrations/mlflow/services/mlflow_deployment.py +2 -2
  55. zenml/integrations/mlflow/steps/mlflow_deployer.py +1 -1
  56. zenml/integrations/mlflow/steps/mlflow_registry.py +1 -1
  57. zenml/integrations/neptune/experiment_trackers/run_state.py +2 -2
  58. zenml/integrations/pytorch/materializers/base_pytorch_materializer.py +8 -2
  59. zenml/integrations/pytorch/materializers/pytorch_module_materializer.py +4 -1
  60. zenml/integrations/s3/artifact_stores/s3_artifact_store.py +98 -0
  61. zenml/integrations/s3/flavors/s3_artifact_store_flavor.py +14 -0
  62. zenml/integrations/s3/utils.py +40 -0
  63. zenml/integrations/tensorflow/__init__.py +0 -9
  64. zenml/logging/step_logging.py +13 -15
  65. zenml/materializers/__init__.py +2 -0
  66. zenml/materializers/uuid_materializer.py +79 -0
  67. zenml/metadata/lazy_load.py +10 -7
  68. zenml/model/lazy_load.py +85 -4
  69. zenml/model/model.py +61 -45
  70. zenml/model/utils.py +47 -118
  71. zenml/models/__init__.py +3 -0
  72. zenml/models/v2/core/artifact_version.py +4 -15
  73. zenml/models/v2/core/model.py +1 -0
  74. zenml/models/v2/core/model_version.py +1 -1
  75. zenml/models/v2/core/pipeline_run.py +1 -2
  76. zenml/models/v2/core/run_metadata.py +2 -2
  77. zenml/models/v2/core/step_run.py +15 -12
  78. zenml/models/v2/misc/server_models.py +0 -4
  79. zenml/orchestrators/base_orchestrator.py +33 -0
  80. zenml/orchestrators/input_utils.py +52 -36
  81. zenml/orchestrators/step_launcher.py +49 -171
  82. zenml/orchestrators/step_run_utils.py +566 -0
  83. zenml/orchestrators/step_runner.py +102 -151
  84. zenml/orchestrators/utils.py +1 -158
  85. zenml/pipelines/__init__.py +3 -16
  86. zenml/{new/pipelines → pipelines}/pipeline_context.py +3 -18
  87. zenml/pipelines/pipeline_decorator.py +29 -60
  88. zenml/{new/pipelines/pipeline.py → pipelines/pipeline_definition.py} +4 -47
  89. zenml/stack/stack.py +1 -102
  90. zenml/stack/stack_component.py +0 -71
  91. zenml/stack_deployments/aws_stack_deployment.py +3 -0
  92. zenml/step_operators/step_operator_entrypoint_configuration.py +1 -1
  93. zenml/steps/__init__.py +3 -9
  94. zenml/steps/base_step.py +17 -265
  95. zenml/steps/entrypoint_function_utils.py +2 -80
  96. zenml/{new/steps → steps}/step_context.py +12 -63
  97. zenml/steps/step_decorator.py +42 -89
  98. zenml/steps/step_invocation.py +2 -55
  99. zenml/steps/utils.py +3 -23
  100. zenml/utils/dashboard_utils.py +16 -51
  101. zenml/utils/typing_utils.py +8 -28
  102. zenml/zen_server/dashboard/assets/{404-Y50hSt65.js → 404-DT4QRUqN.js} +1 -1
  103. zenml/zen_server/dashboard/assets/@radix-DP6vWzyx.js +85 -0
  104. zenml/zen_server/dashboard/assets/@react-router-BMhZulnd.js +29 -0
  105. zenml/zen_server/dashboard/assets/@reactflow-8U9qNlMR.js +17 -0
  106. zenml/zen_server/dashboard/assets/@tanstack-BUCbhJyH.js +22 -0
  107. zenml/zen_server/dashboard/assets/{AlertDialogDropdownItem-xLR9a1iw.js → AlertDialogDropdownItem-C6N2rGrB.js} +1 -1
  108. zenml/zen_server/dashboard/assets/{CodeSnippet-IxXNxUDa.js → CodeSnippet-CqybNv0k.js} +1 -1
  109. zenml/zen_server/dashboard/assets/{CollapsibleCard-BhutZbBL.js → CollapsibleCard-0r_8G2Lj.js} +1 -1
  110. zenml/zen_server/dashboard/assets/{Commands-Bf-rd1z8.js → Commands-BDjgBQKi.js} +1 -1
  111. zenml/zen_server/dashboard/assets/ComponentBadge-DUiEYJHu.js +1 -0
  112. zenml/zen_server/dashboard/assets/ComponentFallbackDialog-BFoH5K4V.js +1 -0
  113. zenml/zen_server/dashboard/assets/ComponentIcon-CAIoUis2.js +1 -0
  114. zenml/zen_server/dashboard/assets/{CopyButton-DcFHidFJ.js → CopyButton-C745BrKi.js} +1 -1
  115. zenml/zen_server/dashboard/assets/{CsvVizualization-QSbjrfxw.js → CsvVizualization-PpAq0CeZ.js} +5 -5
  116. zenml/zen_server/dashboard/assets/{DialogItem-Cd3HqST4.js → DialogItem-DcVCZEew.js} +1 -1
  117. zenml/zen_server/dashboard/assets/{DisplayDate-DkCy54Bp.js → DisplayDate-BeXgUG_C.js} +1 -1
  118. zenml/zen_server/dashboard/assets/{EmptyState-Cs3DEmso.js → EmptyState-DeK7H4pr.js} +1 -1
  119. zenml/zen_server/dashboard/assets/{Error-BhwdmqK7.js → Error-BMlzibXj.js} +1 -1
  120. zenml/zen_server/dashboard/assets/{Helpbox-0pBpTwTm.js → Helpbox-BLf40fLV.js} +1 -1
  121. zenml/zen_server/dashboard/assets/{Infobox-BTK_EUKT.js → Infobox-BwisKifi.js} +1 -1
  122. zenml/zen_server/dashboard/assets/{InlineAvatar-CA3DFMcM.js → InlineAvatar-jEgodSgX.js} +1 -1
  123. zenml/zen_server/dashboard/assets/{Lock-CmIn0szs.js → Lock-3lLt1ih0.js} +1 -1
  124. zenml/zen_server/dashboard/assets/MarkdownVisualization-8O9kTr-2.js +14 -0
  125. zenml/zen_server/dashboard/assets/{NumberBox-CrN0_kqI.js → NumberBox-T9eELfLZ.js} +1 -1
  126. zenml/zen_server/dashboard/assets/{Partials-QLOZw624.js → Partials-YPBB3V4q.js} +1 -1
  127. zenml/zen_server/dashboard/assets/{PasswordChecker-DE71J_3F.js → PasswordChecker-CW0kqY0W.js} +1 -1
  128. zenml/zen_server/dashboard/assets/{ProviderIcon-C16CCIN4.js → ProviderIcon-Bb3Xha5A.js} +1 -1
  129. zenml/zen_server/dashboard/assets/{ProviderRadio-D3FuCHf3.js → ProviderRadio-BROY1700.js} +1 -1
  130. zenml/zen_server/dashboard/assets/RunSelector-DCiL3M1c.js +1 -0
  131. zenml/zen_server/dashboard/assets/SearchField-DfUiGFVd.js +1 -0
  132. zenml/zen_server/dashboard/assets/{SecretTooltip-BaMwHF-Q.js → SecretTooltip-C_qByGWB.js} +1 -1
  133. zenml/zen_server/dashboard/assets/{SetPassword-DuIC65H9.js → SetPassword-7pRB00El.js} +1 -1
  134. zenml/zen_server/dashboard/assets/{Tick-DJTCF0Re.js → Tick-CykQFPj2.js} +1 -1
  135. zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-CUm-DMpw.js → UpdatePasswordSchemas-DckMEkFf.js} +1 -1
  136. zenml/zen_server/dashboard/assets/{UsageReason-CKw0juLF.js → UsageReason-DVceN14P.js} +1 -1
  137. zenml/zen_server/dashboard/assets/{WizardFooter-Cv9ApYWU.js → WizardFooter-CW0Cvd70.js} +1 -1
  138. zenml/zen_server/dashboard/assets/{check-circle-DOoS4yhF.js → check-circle-Dwxliy1Z.js} +1 -1
  139. zenml/zen_server/dashboard/assets/{chevron-down-Cwb-W_B_.js → chevron-down-8wLBS5pQ.js} +1 -1
  140. zenml/zen_server/dashboard/assets/{chevron-right-double-c9H46Kl8.js → chevron-right-double-DoD8iXWM.js} +1 -1
  141. zenml/zen_server/dashboard/assets/{cloud-only-BB4BVa6E.js → cloud-only-B-s_HMDm.js} +1 -1
  142. zenml/zen_server/dashboard/assets/{code-browser-BJYErIjr.js → code-browser-CZUQs3Wa.js} +1 -1
  143. zenml/zen_server/dashboard/assets/{copy-CaGlDsUy.js → copy-CaSMXwiU.js} +1 -1
  144. zenml/zen_server/dashboard/assets/{create-stack-F29xAUEx.js → create-stack-CEmaPZ4c.js} +1 -1
  145. zenml/zen_server/dashboard/assets/delete-run-D-LKbGyz.js +1 -0
  146. zenml/zen_server/dashboard/assets/{docker-BFAFXr2_.js → docker-BFNgg-z3.js} +1 -1
  147. zenml/zen_server/dashboard/assets/{dots-horizontal-C6K59vUm.js → dots-horizontal-DK5Duzx4.js} +1 -1
  148. zenml/zen_server/dashboard/assets/{form-schemas-BKXwSDK2.js → form-schemas-1AyOCx90.js} +1 -1
  149. zenml/zen_server/dashboard/assets/{gcp-Dj6ntk0L.js → gcp-7M2Yf3ZK.js} +1 -1
  150. zenml/zen_server/dashboard/assets/{help-CwN931fX.js → help-Dam461dC.js} +1 -1
  151. zenml/zen_server/dashboard/assets/{index-5GJ5ysEZ.js → index-BVJ8n2-j.js} +1 -1
  152. zenml/zen_server/dashboard/assets/index-Bpmj40BI.js +1 -0
  153. zenml/zen_server/dashboard/assets/index-CbU4Ln_E.css +1 -0
  154. zenml/zen_server/dashboard/assets/{index-D-mtoBj3.js → index-DKPhqP2B.js} +1 -1
  155. zenml/zen_server/dashboard/assets/index-QQb7wQEC.js +55 -0
  156. zenml/zen_server/dashboard/assets/index.esm-cuVep_NJ.js +1 -0
  157. zenml/zen_server/dashboard/assets/inter-cyrillic-400-normal-BLGc9T1a.woff2 +0 -0
  158. zenml/zen_server/dashboard/assets/inter-cyrillic-400-normal-ZzOtrSSW.woff +0 -0
  159. zenml/zen_server/dashboard/assets/inter-cyrillic-500-normal-D4Vwzodn.woff2 +0 -0
  160. zenml/zen_server/dashboard/assets/inter-cyrillic-500-normal-DH2hs3aW.woff +0 -0
  161. zenml/zen_server/dashboard/assets/inter-cyrillic-600-normal-BGBWG807.woff2 +0 -0
  162. zenml/zen_server/dashboard/assets/inter-cyrillic-600-normal-BuzJQFbW.woff +0 -0
  163. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-400-normal-BPnxn4xp.woff +0 -0
  164. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-400-normal-Dc4VJyIJ.woff2 +0 -0
  165. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-500-normal-BShVwWPj.woff2 +0 -0
  166. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-500-normal-CUiC4oBV.woff +0 -0
  167. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-600-normal-Bt9VVOA-.woff +0 -0
  168. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-600-normal-CaqZN2hq.woff2 +0 -0
  169. zenml/zen_server/dashboard/assets/inter-greek-400-normal-BZzXV7-1.woff +0 -0
  170. zenml/zen_server/dashboard/assets/inter-greek-400-normal-DxZsaF_h.woff2 +0 -0
  171. zenml/zen_server/dashboard/assets/inter-greek-500-normal-CeQXL5ds.woff2 +0 -0
  172. zenml/zen_server/dashboard/assets/inter-greek-500-normal-d_eO-yCQ.woff +0 -0
  173. zenml/zen_server/dashboard/assets/inter-greek-600-normal-CwicyhtI.woff +0 -0
  174. zenml/zen_server/dashboard/assets/inter-greek-600-normal-Dhlb-90d.woff2 +0 -0
  175. zenml/zen_server/dashboard/assets/inter-greek-ext-400-normal-Bput3-QP.woff2 +0 -0
  176. zenml/zen_server/dashboard/assets/inter-greek-ext-400-normal-DCpCPQOf.woff +0 -0
  177. zenml/zen_server/dashboard/assets/inter-greek-ext-500-normal-B6guLgqG.woff2 +0 -0
  178. zenml/zen_server/dashboard/assets/inter-greek-ext-500-normal-M2hEX8vc.woff +0 -0
  179. zenml/zen_server/dashboard/assets/inter-greek-ext-600-normal-C9WLioJ8.woff +0 -0
  180. zenml/zen_server/dashboard/assets/inter-greek-ext-600-normal-Cnui8OiR.woff2 +0 -0
  181. zenml/zen_server/dashboard/assets/inter-latin-400-normal-BOOGhInR.woff2 +0 -0
  182. zenml/zen_server/dashboard/assets/inter-latin-400-normal-gitzw0hO.woff +0 -0
  183. zenml/zen_server/dashboard/assets/inter-latin-500-normal-D2bGa7uu.woff2 +0 -0
  184. zenml/zen_server/dashboard/assets/inter-latin-500-normal-deR1Tlfd.woff +0 -0
  185. zenml/zen_server/dashboard/assets/inter-latin-600-normal-B5cFAncS.woff +0 -0
  186. zenml/zen_server/dashboard/assets/inter-latin-600-normal-D273HNI0.woff2 +0 -0
  187. zenml/zen_server/dashboard/assets/inter-latin-ext-400-normal-C1t-h-pH.woff +0 -0
  188. zenml/zen_server/dashboard/assets/inter-latin-ext-400-normal-hnt3BR84.woff2 +0 -0
  189. zenml/zen_server/dashboard/assets/inter-latin-ext-500-normal-CIS2RHJS.woff2 +0 -0
  190. zenml/zen_server/dashboard/assets/inter-latin-ext-500-normal-UMdmhHu2.woff +0 -0
  191. zenml/zen_server/dashboard/assets/inter-latin-ext-600-normal-BnYJhD27.woff2 +0 -0
  192. zenml/zen_server/dashboard/assets/inter-latin-ext-600-normal-CAF0vJDd.woff +0 -0
  193. zenml/zen_server/dashboard/assets/inter-vietnamese-400-normal-BUNmGMP1.woff +0 -0
  194. zenml/zen_server/dashboard/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
  195. zenml/zen_server/dashboard/assets/inter-vietnamese-500-normal-DOriooB6.woff2 +0 -0
  196. zenml/zen_server/dashboard/assets/inter-vietnamese-500-normal-DQPw2Hwd.woff +0 -0
  197. zenml/zen_server/dashboard/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 +0 -0
  198. zenml/zen_server/dashboard/assets/inter-vietnamese-600-normal-Cm6aH8_k.woff +0 -0
  199. zenml/zen_server/dashboard/assets/{kubernetes-BjbR6D-1.js → kubernetes--g7r02Zu.js} +1 -1
  200. zenml/zen_server/dashboard/assets/{layout-Dru15_XR.js → layout-DCSYN7-C.js} +1 -1
  201. zenml/zen_server/dashboard/assets/{link-external-BT2L8hAQ.js → link-external-CBEk6kEG.js} +1 -1
  202. zenml/zen_server/dashboard/assets/{login-mutation-ax6iL2Mb.js → login-mutation-DTcAFP1l.js} +1 -1
  203. zenml/zen_server/dashboard/assets/{logs-GiDJXbLS.js → logs-D5bdJGur.js} +1 -1
  204. zenml/zen_server/dashboard/assets/not-found-Cc-JkRH2.js +1 -0
  205. zenml/zen_server/dashboard/assets/{package-DYKZ5jKW.js → package-Cs35Szwh.js} +1 -1
  206. zenml/zen_server/dashboard/assets/{page-HkVBdZl6.js → page-9yplj5JT.js} +1 -1
  207. zenml/zen_server/dashboard/assets/{page-uORspyRu.js → page-B-y2XKIc.js} +1 -1
  208. zenml/zen_server/dashboard/assets/page-BBpOxVcY.js +1 -0
  209. zenml/zen_server/dashboard/assets/{page-BDg1F-Ug.js → page-BQQKaabe.js} +2 -2
  210. zenml/zen_server/dashboard/assets/page-BRInM1Lg.js +1 -0
  211. zenml/zen_server/dashboard/assets/{page-CvKnNK1S.js → page-BjjlMk7s.js} +1 -1
  212. zenml/zen_server/dashboard/assets/{page-BukXK1Aa.js → page-Bvd7YH2A.js} +1 -1
  213. zenml/zen_server/dashboard/assets/{page-DcTjHmYZ.js → page-C0N5q3l7.js} +1 -1
  214. zenml/zen_server/dashboard/assets/page-CT3Nep8W.js +1 -0
  215. zenml/zen_server/dashboard/assets/{page-DuqYMYmH.js → page-C_f47pBf.js} +1 -1
  216. zenml/zen_server/dashboard/assets/{page-DRfcRK1w.js → page-ClUVkl-O.js} +1 -1
  217. zenml/zen_server/dashboard/assets/page-Cmv8C_yM.js +3 -0
  218. zenml/zen_server/dashboard/assets/{page-p0BhSAWx.js → page-CyN2bdWG.js} +1 -1
  219. zenml/zen_server/dashboard/assets/page-CzzXH4fs.js +1 -0
  220. zenml/zen_server/dashboard/assets/{page-6mfzecin.js → page-DH_Z7iW1.js} +1 -1
  221. zenml/zen_server/dashboard/assets/{page-8kYmrh0B.js → page-DIOXwhiD.js} +1 -1
  222. zenml/zen_server/dashboard/assets/{page-BXarY9K2.js → page-DLixvR-7.js} +1 -1
  223. zenml/zen_server/dashboard/assets/page-DTlGjgnG.js +1 -0
  224. zenml/zen_server/dashboard/assets/page-Dbpl86h0.js +1 -0
  225. zenml/zen_server/dashboard/assets/{page-MAXyfXBq.js → page-Ddgy6kDS.js} +1 -1
  226. zenml/zen_server/dashboard/assets/page-DtCAfBLy.js +9 -0
  227. zenml/zen_server/dashboard/assets/{page-CKHNAq7z.js → page-Dx16z7nA.js} +1 -1
  228. zenml/zen_server/dashboard/assets/{page-DMSLXKGT.js → page-DzpVUZ8f.js} +1 -1
  229. zenml/zen_server/dashboard/assets/page-McUyYbo1.js +1 -0
  230. zenml/zen_server/dashboard/assets/{page-miU2rhYG.js → page-N4qoPHKb.js} +1 -1
  231. zenml/zen_server/dashboard/assets/page-T1P3RyAR.js +1 -0
  232. zenml/zen_server/dashboard/assets/{page-3qPX9WYH.js → page-bKaULTGG.js} +1 -1
  233. zenml/zen_server/dashboard/assets/page-sbXUJy9t.js +1 -0
  234. zenml/zen_server/dashboard/assets/{persist-CfJMar_k.js → persist-CP0JmYZ4.js} +1 -1
  235. zenml/zen_server/dashboard/assets/{persist-BxIR2XZs.js → persist-DNb5cdrU.js} +1 -1
  236. zenml/zen_server/dashboard/assets/{plus-Bc8eLSDM.js → plus-C9IxgN2M.js} +1 -1
  237. zenml/zen_server/dashboard/assets/{refresh-hfgWPeto.js → refresh-BVu22P_C.js} +1 -1
  238. zenml/zen_server/dashboard/assets/{rocket-SESCGQXm.js → rocket-CONEmRmB.js} +1 -1
  239. zenml/zen_server/dashboard/assets/{sharedSchema-vub0rii3.js → sharedSchema-TMLu-nYQ.js} +1 -1
  240. zenml/zen_server/dashboard/assets/stack-detail-query-xmYxSsUY.js +1 -0
  241. zenml/zen_server/dashboard/assets/{tick-circle-m-hJG8i9.js → tick-circle-CM1ZScbQ.js} +1 -1
  242. zenml/zen_server/dashboard/assets/{trash-DUWZWzse.js → trash-DkJHMOg7.js} +1 -1
  243. zenml/zen_server/dashboard/assets/{update-server-settings-mutation-FGVP7X2U.js → update-server-settings-mutation-DsU8cNVl.js} +1 -1
  244. zenml/zen_server/dashboard/assets/{url-CbAPzsmT.js → url-D5le3J4q.js} +1 -1
  245. zenml/zen_server/dashboard/assets/zod-D89GC_vc.js +1 -0
  246. zenml/zen_server/dashboard/index.html +7 -7
  247. zenml/zen_server/deploy/__init__.py +0 -9
  248. zenml/zen_server/deploy/docker/docker_zen_server.py +0 -6
  249. zenml/zen_server/deploy/helm/Chart.yaml +1 -1
  250. zenml/zen_server/deploy/helm/README.md +2 -2
  251. zenml/zen_server/deploy/local/local_zen_server.py +0 -6
  252. zenml/zen_server/feature_gate/zenml_cloud_feature_gate.py +1 -1
  253. zenml/zen_server/routers/artifact_version_endpoints.py +1 -1
  254. zenml/zen_server/routers/runs_endpoints.py +0 -28
  255. zenml/zen_server/template_execution/runner_entrypoint_configuration.py +1 -1
  256. zenml/zen_server/template_execution/utils.py +2 -2
  257. zenml/zen_server/utils.py +10 -40
  258. zenml/zen_server/zen_server_api.py +107 -17
  259. zenml/zen_stores/base_zen_store.py +0 -2
  260. zenml/zen_stores/migrations/versions/0.67.0_release.py +23 -0
  261. zenml/zen_stores/migrations/versions/0.68.0_release.py +23 -0
  262. zenml/zen_stores/migrations/versions/1d8f30c54477_migrate_to_new_.py +124 -0
  263. zenml/zen_stores/schemas/pipeline_run_schemas.py +12 -4
  264. zenml/zen_stores/schemas/step_run_schemas.py +2 -2
  265. zenml/zen_stores/sql_zen_store.py +29 -5
  266. {zenml_nightly-0.66.0.dev20240930.dist-info → zenml_nightly-0.68.0.dev20241026.dist-info}/METADATA +4 -8
  267. {zenml_nightly-0.66.0.dev20240930.dist-info → zenml_nightly-0.68.0.dev20241026.dist-info}/RECORD +273 -452
  268. {zenml_nightly-0.66.0.dev20240930.dist-info → zenml_nightly-0.68.0.dev20241026.dist-info}/WHEEL +1 -1
  269. zenml/cli/stack_recipes.py +0 -469
  270. zenml/lineage_graph/__init__.py +0 -34
  271. zenml/lineage_graph/edge.py +0 -24
  272. zenml/lineage_graph/lineage_graph.py +0 -244
  273. zenml/lineage_graph/node/__init__.py +0 -32
  274. zenml/lineage_graph/node/artifact_node.py +0 -51
  275. zenml/lineage_graph/node/base_node.py +0 -31
  276. zenml/lineage_graph/node/step_node.py +0 -41
  277. zenml/model/model_version.py +0 -38
  278. zenml/new/__init__.py +0 -13
  279. zenml/new/pipelines/__init__.py +0 -13
  280. zenml/new/pipelines/code_archive.py +0 -157
  281. zenml/new/pipelines/pipeline_decorator.py +0 -118
  282. zenml/new/steps/__init__.py +0 -13
  283. zenml/new/steps/step_decorator.py +0 -176
  284. zenml/pipelines/base_pipeline.py +0 -273
  285. zenml/post_execution/__init__.py +0 -30
  286. zenml/post_execution/pipeline.py +0 -55
  287. zenml/post_execution/pipeline_run.py +0 -55
  288. zenml/services/terraform/__init__.py +0 -14
  289. zenml/services/terraform/terraform_service.py +0 -441
  290. zenml/steps/external_artifact.py +0 -26
  291. zenml/steps/step_environment.py +0 -108
  292. zenml/steps/step_output.py +0 -36
  293. zenml/utils/mlstacks_utils.py +0 -635
  294. zenml/utils/terraform_utils.py +0 -43
  295. zenml/zen_server/dashboard/assets/@radix-DnFH_oo1.js +0 -85
  296. zenml/zen_server/dashboard/assets/@react-router-APVeuk-U.js +0 -29
  297. zenml/zen_server/dashboard/assets/@reactflow-ytavUpwh.js +0 -17
  298. zenml/zen_server/dashboard/assets/@tanstack-QbMbTrh5.js +0 -22
  299. zenml/zen_server/dashboard/assets/ComponentBadge-gKR1OIwG.js +0 -1
  300. zenml/zen_server/dashboard/assets/ExecutionStatus-D6r6aK8J.js +0 -1
  301. zenml/zen_server/dashboard/assets/MarkdownVisualization-DS05sfBm.js +0 -14
  302. zenml/zen_server/dashboard/assets/SearchField-BzmfxS0L.js +0 -1
  303. zenml/zen_server/dashboard/assets/all-pipeline-runs-query-BA3R2Sey.js +0 -1
  304. zenml/zen_server/dashboard/assets/delete-run-CP0pcJ3U.js +0 -1
  305. zenml/zen_server/dashboard/assets/index-BhJ6ZJxv.css +0 -1
  306. zenml/zen_server/dashboard/assets/index-Ci0nJ8EZ.js +0 -55
  307. zenml/zen_server/dashboard/assets/index.esm-BE1uqCX5.js +0 -1
  308. zenml/zen_server/dashboard/assets/inter-cyrillic-400-normal-Df6ckaLK.woff2 +0 -0
  309. zenml/zen_server/dashboard/assets/inter-cyrillic-400-normal-JrS_4yms.woff +0 -0
  310. zenml/zen_server/dashboard/assets/inter-cyrillic-500-normal-BRrLR67x.woff2 +0 -0
  311. zenml/zen_server/dashboard/assets/inter-cyrillic-500-normal-DskEQOpE.woff +0 -0
  312. zenml/zen_server/dashboard/assets/inter-cyrillic-600-normal-DDpWG8g5.woff2 +0 -0
  313. zenml/zen_server/dashboard/assets/inter-cyrillic-600-normal-iz1--dBq.woff +0 -0
  314. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-400-normal-CzG7Kr3z.woff +0 -0
  315. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-400-normal-tyfMZHQw.woff2 +0 -0
  316. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-500-normal-DOnSzjnx.woff2 +0 -0
  317. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-500-normal-Xebo2OyJ.woff +0 -0
  318. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-600-normal-DpA2xaRd.woff2 +0 -0
  319. zenml/zen_server/dashboard/assets/inter-cyrillic-ext-600-normal-KAwcVx6H.woff +0 -0
  320. zenml/zen_server/dashboard/assets/inter-greek-400-normal-DQXyrmoy.woff2 +0 -0
  321. zenml/zen_server/dashboard/assets/inter-greek-400-normal-DvIPHDQ7.woff +0 -0
  322. zenml/zen_server/dashboard/assets/inter-greek-500-normal-BjpBGs91.woff +0 -0
  323. zenml/zen_server/dashboard/assets/inter-greek-500-normal-CmOavsDc.woff2 +0 -0
  324. zenml/zen_server/dashboard/assets/inter-greek-600-normal-B-l8Lzzd.woff2 +0 -0
  325. zenml/zen_server/dashboard/assets/inter-greek-600-normal-BLZsI-P3.woff +0 -0
  326. zenml/zen_server/dashboard/assets/inter-greek-ext-400-normal-CIdlr5YK.woff2 +0 -0
  327. zenml/zen_server/dashboard/assets/inter-greek-ext-400-normal-_Rr29XE2.woff +0 -0
  328. zenml/zen_server/dashboard/assets/inter-greek-ext-500-normal-2pdUafRD.woff2 +0 -0
  329. zenml/zen_server/dashboard/assets/inter-greek-ext-500-normal-Dtavx3qw.woff +0 -0
  330. zenml/zen_server/dashboard/assets/inter-greek-ext-600-normal-BmtRFZgT.woff +0 -0
  331. zenml/zen_server/dashboard/assets/inter-greek-ext-600-normal-CkBLDEl_.woff2 +0 -0
  332. zenml/zen_server/dashboard/assets/inter-latin-400-normal-BT1H-PT_.woff2 +0 -0
  333. zenml/zen_server/dashboard/assets/inter-latin-400-normal-Cdi8t5Mu.woff +0 -0
  334. zenml/zen_server/dashboard/assets/inter-latin-500-normal-D4I8BKCx.woff +0 -0
  335. zenml/zen_server/dashboard/assets/inter-latin-500-normal-kWhwEdDH.woff2 +0 -0
  336. zenml/zen_server/dashboard/assets/inter-latin-600-normal-B2Ssfs8e.woff2 +0 -0
  337. zenml/zen_server/dashboard/assets/inter-latin-600-normal-Dbvh0wvx.woff +0 -0
  338. zenml/zen_server/dashboard/assets/inter-latin-ext-400-normal-8tIzm-yw.woff +0 -0
  339. zenml/zen_server/dashboard/assets/inter-latin-ext-400-normal-D3W-OpO-.woff2 +0 -0
  340. zenml/zen_server/dashboard/assets/inter-latin-ext-500-normal-B9u8Q_zH.woff2 +0 -0
  341. zenml/zen_server/dashboard/assets/inter-latin-ext-500-normal-SuUkSNTU.woff +0 -0
  342. zenml/zen_server/dashboard/assets/inter-latin-ext-600-normal-Dg0Bk0Yr.woff +0 -0
  343. zenml/zen_server/dashboard/assets/inter-latin-ext-600-normal-ao35dkSb.woff2 +0 -0
  344. zenml/zen_server/dashboard/assets/inter-vietnamese-400-normal-Cnt0N5Vm.woff2 +0 -0
  345. zenml/zen_server/dashboard/assets/inter-vietnamese-400-normal-DIOGfGLL.woff +0 -0
  346. zenml/zen_server/dashboard/assets/inter-vietnamese-500-normal-0i6yoQMg.woff +0 -0
  347. zenml/zen_server/dashboard/assets/inter-vietnamese-500-normal-5IkPJ6Nk.woff2 +0 -0
  348. zenml/zen_server/dashboard/assets/inter-vietnamese-600-normal-BQ_dbMbg.woff +0 -0
  349. zenml/zen_server/dashboard/assets/inter-vietnamese-600-normal-DjnxGF-L.woff2 +0 -0
  350. zenml/zen_server/dashboard/assets/not-found-DbjllLY_.js +0 -1
  351. zenml/zen_server/dashboard/assets/page-B1n7_W7z.js +0 -1
  352. zenml/zen_server/dashboard/assets/page-BZZhLo2u.js +0 -1
  353. zenml/zen_server/dashboard/assets/page-Bbf_oBjn.js +0 -1
  354. zenml/zen_server/dashboard/assets/page-BjjuBvZG.js +0 -9
  355. zenml/zen_server/dashboard/assets/page-CHaQkFK5.js +0 -1
  356. zenml/zen_server/dashboard/assets/page-CS0SYFK8.js +0 -1
  357. zenml/zen_server/dashboard/assets/page-DGM1CbYT.js +0 -2
  358. zenml/zen_server/dashboard/assets/page-DOmIZ2ra.js +0 -1
  359. zenml/zen_server/dashboard/assets/page-DYVmJ9_w.js +0 -3
  360. zenml/zen_server/dashboard/assets/page-Dwow2doB.js +0 -1
  361. zenml/zen_server/dashboard/assets/stack-detail-query-DQcyzG-2.js +0 -1
  362. zenml/zen_server/dashboard/assets/zod-uFd1wBcd.js +0 -1
  363. zenml/zen_server/dashboard_legacy/_redirects +0 -1
  364. zenml/zen_server/dashboard_legacy/asset-manifest.json +0 -131
  365. zenml/zen_server/dashboard_legacy/favicon.ico +0 -0
  366. zenml/zen_server/dashboard_legacy/index.html +0 -1
  367. zenml/zen_server/dashboard_legacy/manifest.json +0 -25
  368. zenml/zen_server/dashboard_legacy/precache-manifest.6d320abb70db612019dda6c4948e7a90.js +0 -462
  369. zenml/zen_server/dashboard_legacy/robots.txt +0 -2
  370. zenml/zen_server/dashboard_legacy/service-worker.js +0 -39
  371. zenml/zen_server/dashboard_legacy/static/css/2.5b37d44a.chunk.css +0 -16
  372. zenml/zen_server/dashboard_legacy/static/css/2.5b37d44a.chunk.css.map +0 -1
  373. zenml/zen_server/dashboard_legacy/static/css/main.e79dff04.chunk.css +0 -2
  374. zenml/zen_server/dashboard_legacy/static/css/main.e79dff04.chunk.css.map +0 -1
  375. zenml/zen_server/dashboard_legacy/static/js/2.7934458d.chunk.js +0 -3
  376. zenml/zen_server/dashboard_legacy/static/js/2.7934458d.chunk.js.LICENSE.txt +0 -95
  377. zenml/zen_server/dashboard_legacy/static/js/2.7934458d.chunk.js.map +0 -1
  378. zenml/zen_server/dashboard_legacy/static/js/main.fa9299d5.chunk.js +0 -2
  379. zenml/zen_server/dashboard_legacy/static/js/main.fa9299d5.chunk.js.map +0 -1
  380. zenml/zen_server/dashboard_legacy/static/js/runtime-main.bfca2edd.js +0 -2
  381. zenml/zen_server/dashboard_legacy/static/js/runtime-main.bfca2edd.js.map +0 -1
  382. zenml/zen_server/dashboard_legacy/static/media/AlertTriangle.28aee535.svg +0 -5
  383. zenml/zen_server/dashboard_legacy/static/media/ArrowSquareOut.abfb9bc7.svg +0 -5
  384. zenml/zen_server/dashboard_legacy/static/media/Back.86c23a22.svg +0 -4
  385. zenml/zen_server/dashboard_legacy/static/media/BookOpen.5cb101ff.svg +0 -4
  386. zenml/zen_server/dashboard_legacy/static/media/BoundingBox.1eb98717.svg +0 -10
  387. zenml/zen_server/dashboard_legacy/static/media/Burger.9b1c67d7.svg +0 -3
  388. zenml/zen_server/dashboard_legacy/static/media/Cached.2381fb8d.svg +0 -1
  389. zenml/zen_server/dashboard_legacy/static/media/Calendar.356e11c7.svg +0 -3
  390. zenml/zen_server/dashboard_legacy/static/media/ChartBarHorizontal.0247447b.svg +0 -6
  391. zenml/zen_server/dashboard_legacy/static/media/ChartLine.0d79e18d.svg +0 -4
  392. zenml/zen_server/dashboard_legacy/static/media/ChatDots.2e1c9211.svg +0 -6
  393. zenml/zen_server/dashboard_legacy/static/media/Check.dad6beb2.svg +0 -3
  394. zenml/zen_server/dashboard_legacy/static/media/CheckCircleFilled.c19566d0.svg +0 -3
  395. zenml/zen_server/dashboard_legacy/static/media/Checkbox.af50e31e.svg +0 -3
  396. zenml/zen_server/dashboard_legacy/static/media/ChevronDown.f860ce32.svg +0 -3
  397. zenml/zen_server/dashboard_legacy/static/media/ChevronDownLight.6642d756.svg +0 -3
  398. zenml/zen_server/dashboard_legacy/static/media/ChevronLeft.f6edfcdb.svg +0 -3
  399. zenml/zen_server/dashboard_legacy/static/media/CircleCheck.f98fd6ca.svg +0 -1
  400. zenml/zen_server/dashboard_legacy/static/media/Clock.ffc9de95.svg +0 -3
  401. zenml/zen_server/dashboard_legacy/static/media/Close.74e9efbc.svg +0 -5
  402. zenml/zen_server/dashboard_legacy/static/media/CloseWithBorder.6960930a.svg +0 -3
  403. zenml/zen_server/dashboard_legacy/static/media/CloseWithoutBorder.cd6f71df.svg +0 -3
  404. zenml/zen_server/dashboard_legacy/static/media/CloudArrowUp.0aecb235.svg +0 -6
  405. zenml/zen_server/dashboard_legacy/static/media/Code.ef0f33b5.svg +0 -3
  406. zenml/zen_server/dashboard_legacy/static/media/Config.0be63f8a.svg +0 -1
  407. zenml/zen_server/dashboard_legacy/static/media/Connector.9fd46ef1.svg +0 -10
  408. zenml/zen_server/dashboard_legacy/static/media/Copy.36e2112a.svg +0 -1
  409. zenml/zen_server/dashboard_legacy/static/media/Dashboard.d05787e0.svg +0 -3
  410. zenml/zen_server/dashboard_legacy/static/media/Data.b1c3b5f8.svg +0 -3
  411. zenml/zen_server/dashboard_legacy/static/media/Delete.3c361b28.svg +0 -8
  412. zenml/zen_server/dashboard_legacy/static/media/Docs.7541d478.svg +0 -7
  413. zenml/zen_server/dashboard_legacy/static/media/Download.fba04d87.svg +0 -5
  414. zenml/zen_server/dashboard_legacy/static/media/Edit.490eb294.svg +0 -6
  415. zenml/zen_server/dashboard_legacy/static/media/EmptyRightArrow.23749d01.svg +0 -3
  416. zenml/zen_server/dashboard_legacy/static/media/Example.6396cd37.svg +0 -5
  417. zenml/zen_server/dashboard_legacy/static/media/Extension.1394cd4a.svg +0 -3
  418. zenml/zen_server/dashboard_legacy/static/media/Eye.d9e4ee62.svg +0 -4
  419. zenml/zen_server/dashboard_legacy/static/media/Failed.0213c1a0.svg +0 -1
  420. zenml/zen_server/dashboard_legacy/static/media/FileText.1f15bacd.svg +0 -7
  421. zenml/zen_server/dashboard_legacy/static/media/Filter.ab6b9c0d.svg +0 -3
  422. zenml/zen_server/dashboard_legacy/static/media/Folders.12b29887.svg +0 -5
  423. zenml/zen_server/dashboard_legacy/static/media/FunnelFill.6df4c143.svg +0 -3
  424. zenml/zen_server/dashboard_legacy/static/media/GitCommit.7dd9c2aa.svg +0 -5
  425. zenml/zen_server/dashboard_legacy/static/media/GitHub_Logo.cefc2023.png +0 -0
  426. zenml/zen_server/dashboard_legacy/static/media/Graph.2c63a892.svg +0 -11
  427. zenml/zen_server/dashboard_legacy/static/media/History.08329240.svg +0 -3
  428. zenml/zen_server/dashboard_legacy/static/media/Home.0843b0d5.svg +0 -3
  429. zenml/zen_server/dashboard_legacy/static/media/ImageBuilder.ea762d9c.svg +0 -6
  430. zenml/zen_server/dashboard_legacy/static/media/InProgress.304a0edc.svg +0 -1
  431. zenml/zen_server/dashboard_legacy/static/media/Info.9fe10c5c.svg +0 -3
  432. zenml/zen_server/dashboard_legacy/static/media/KeyboardReturn.491afbe3.svg +0 -3
  433. zenml/zen_server/dashboard_legacy/static/media/Link.72bbb55d.svg +0 -4
  434. zenml/zen_server/dashboard_legacy/static/media/Lock.30f5e1fe.svg +0 -5
  435. zenml/zen_server/dashboard_legacy/static/media/Lock2.a769ea52.svg +0 -3
  436. zenml/zen_server/dashboard_legacy/static/media/LockKey.92f21621.svg +0 -6
  437. zenml/zen_server/dashboard_legacy/static/media/Logs.8bf4d005.svg +0 -5
  438. zenml/zen_server/dashboard_legacy/static/media/MinusCircle.4188f418.svg +0 -4
  439. zenml/zen_server/dashboard_legacy/static/media/ModelRegistry.f0de050a.svg +0 -6
  440. zenml/zen_server/dashboard_legacy/static/media/MultiUser.a2ba7c67.svg +0 -10
  441. zenml/zen_server/dashboard_legacy/static/media/PaginationFirst.92628634.svg +0 -4
  442. zenml/zen_server/dashboard_legacy/static/media/PaginationLast.00d3c732.svg +0 -4
  443. zenml/zen_server/dashboard_legacy/static/media/PaginationNext.86158845.svg +0 -3
  444. zenml/zen_server/dashboard_legacy/static/media/PaginationPrev.60c18a88.svg +0 -3
  445. zenml/zen_server/dashboard_legacy/static/media/Pen.f2d831d4.svg +0 -6
  446. zenml/zen_server/dashboard_legacy/static/media/PhotoCamera.179d6d4c.svg +0 -3
  447. zenml/zen_server/dashboard_legacy/static/media/Pipeline.30d298b0.svg +0 -7
  448. zenml/zen_server/dashboard_legacy/static/media/Plus.5aa1c16b.svg +0 -3
  449. zenml/zen_server/dashboard_legacy/static/media/PlusCircle.92d860dd.svg +0 -5
  450. zenml/zen_server/dashboard_legacy/static/media/Repositories.71a36b8c.svg +0 -3
  451. zenml/zen_server/dashboard_legacy/static/media/RightArrow.f30d3871.svg +0 -29
  452. zenml/zen_server/dashboard_legacy/static/media/Rocket.63bf7b9d.svg +0 -3
  453. zenml/zen_server/dashboard_legacy/static/media/RocketLaunch.1bff2b59.svg +0 -6
  454. zenml/zen_server/dashboard_legacy/static/media/Rubik-Medium.c87313aa.ttf +0 -0
  455. zenml/zen_server/dashboard_legacy/static/media/Rubik-Regular.b3d0902b.ttf +0 -0
  456. zenml/zen_server/dashboard_legacy/static/media/Run.daec4fb2.svg +0 -6
  457. zenml/zen_server/dashboard_legacy/static/media/Search.d1afcce5.svg +0 -4
  458. zenml/zen_server/dashboard_legacy/static/media/Settings.59ca73ae.svg +0 -4
  459. zenml/zen_server/dashboard_legacy/static/media/Share2.46c3ff66.svg +0 -3
  460. zenml/zen_server/dashboard_legacy/static/media/SignOut.6aa718c5.svg +0 -3
  461. zenml/zen_server/dashboard_legacy/static/media/SimplePlus.5cf7ec20.svg +0 -3
  462. zenml/zen_server/dashboard_legacy/static/media/SingleUser.bef3a095.svg +0 -4
  463. zenml/zen_server/dashboard_legacy/static/media/SourceCodePro-Regular.b484b32f.ttf +0 -0
  464. zenml/zen_server/dashboard_legacy/static/media/Stack.19b604ac.svg +0 -5
  465. zenml/zen_server/dashboard_legacy/static/media/StackComponent.b1ba90b5.svg +0 -4
  466. zenml/zen_server/dashboard_legacy/static/media/Star.f0c25022.svg +0 -9
  467. zenml/zen_server/dashboard_legacy/static/media/StarOutline.94ca8cd9.svg +0 -3
  468. zenml/zen_server/dashboard_legacy/static/media/Storefront.4b4796fe.svg +0 -3
  469. zenml/zen_server/dashboard_legacy/static/media/Stream.543e3039.svg +0 -3
  470. zenml/zen_server/dashboard_legacy/static/media/SupportAgent.510ddf1f.svg +0 -8
  471. zenml/zen_server/dashboard_legacy/static/media/Table.77033750.svg +0 -6
  472. zenml/zen_server/dashboard_legacy/static/media/Tool.d5785486.svg +0 -3
  473. zenml/zen_server/dashboard_legacy/static/media/UserPlus.741a99d7.svg +0 -6
  474. zenml/zen_server/dashboard_legacy/static/media/Verified.0625b2a0.svg +0 -3
  475. zenml/zen_server/dashboard_legacy/static/media/addNew.4fb6c939.svg +0 -8
  476. zenml/zen_server/dashboard_legacy/static/media/arrowClose.cbd53f3f.svg +0 -3
  477. zenml/zen_server/dashboard_legacy/static/media/arrowOpen.6ceef0af.svg +0 -3
  478. zenml/zen_server/dashboard_legacy/static/media/check_small.30bc0138.svg +0 -3
  479. zenml/zen_server/dashboard_legacy/static/media/circleArrowSideClose.98d6013e.svg +0 -18
  480. zenml/zen_server/dashboard_legacy/static/media/circleArrowSideOpen.63653df6.svg +0 -18
  481. zenml/zen_server/dashboard_legacy/static/media/image.104fd14b.png +0 -0
  482. zenml/zen_server/dashboard_legacy/static/media/imageAddIcon.e83004a9.svg +0 -7
  483. zenml/zen_server/dashboard_legacy/static/media/logo.93333e5c.svg +0 -1
  484. zenml/zen_server/dashboard_legacy/static/media/logo_small.4204397d.svg +0 -3
  485. zenml/zen_server/dashboard_legacy/static/media/logo_white.d4b4414e.svg +0 -20
  486. zenml/zen_server/dashboard_legacy/static/media/notConnected.5e2c8ea7.svg +0 -8
  487. zenml/zen_server/dashboard_legacy/static/media/plugin-fallback.72c294e6.svg +0 -6
  488. zenml/zen_server/dashboard_legacy/static/media/share.bcd998b0.svg +0 -5
  489. zenml/zen_server/dashboard_legacy/static/media/stars.08a9b19a.svg +0 -8
  490. zenml/zen_server/deploy/terraform/__init__.py +0 -41
  491. zenml/zen_server/deploy/terraform/providers/__init__.py +0 -14
  492. zenml/zen_server/deploy/terraform/providers/aws_provider.py +0 -61
  493. zenml/zen_server/deploy/terraform/providers/azure_provider.py +0 -59
  494. zenml/zen_server/deploy/terraform/providers/gcp_provider.py +0 -59
  495. zenml/zen_server/deploy/terraform/providers/terraform_provider.py +0 -331
  496. zenml/zen_server/deploy/terraform/recipes/aws/.gitignore +0 -8
  497. zenml/zen_server/deploy/terraform/recipes/aws/helm.tf +0 -20
  498. zenml/zen_server/deploy/terraform/recipes/aws/ingress.tf +0 -30
  499. zenml/zen_server/deploy/terraform/recipes/aws/outputs.tf +0 -7
  500. zenml/zen_server/deploy/terraform/recipes/aws/printf.cmd +0 -2
  501. zenml/zen_server/deploy/terraform/recipes/aws/sql.tf +0 -62
  502. zenml/zen_server/deploy/terraform/recipes/aws/terraform.tf +0 -44
  503. zenml/zen_server/deploy/terraform/recipes/aws/variables.tf +0 -167
  504. zenml/zen_server/deploy/terraform/recipes/aws/vpc.tf +0 -47
  505. zenml/zen_server/deploy/terraform/recipes/aws/zen_server.tf +0 -103
  506. zenml/zen_server/deploy/terraform/recipes/azure/.gitignore +0 -8
  507. zenml/zen_server/deploy/terraform/recipes/azure/helm.tf +0 -20
  508. zenml/zen_server/deploy/terraform/recipes/azure/ingress.tf +0 -30
  509. zenml/zen_server/deploy/terraform/recipes/azure/key_vault.tf +0 -73
  510. zenml/zen_server/deploy/terraform/recipes/azure/outputs.tf +0 -7
  511. zenml/zen_server/deploy/terraform/recipes/azure/printf.cmd +0 -2
  512. zenml/zen_server/deploy/terraform/recipes/azure/rg.tf +0 -36
  513. zenml/zen_server/deploy/terraform/recipes/azure/sql.tf +0 -65
  514. zenml/zen_server/deploy/terraform/recipes/azure/terraform.tf +0 -52
  515. zenml/zen_server/deploy/terraform/recipes/azure/variables.tf +0 -176
  516. zenml/zen_server/deploy/terraform/recipes/azure/zen_server.tf +0 -103
  517. zenml/zen_server/deploy/terraform/recipes/gcp/.gitignore +0 -8
  518. zenml/zen_server/deploy/terraform/recipes/gcp/helm.tf +0 -20
  519. zenml/zen_server/deploy/terraform/recipes/gcp/ingress.tf +0 -30
  520. zenml/zen_server/deploy/terraform/recipes/gcp/outputs.tf +0 -7
  521. zenml/zen_server/deploy/terraform/recipes/gcp/printf.cmd +0 -2
  522. zenml/zen_server/deploy/terraform/recipes/gcp/sql.tf +0 -64
  523. zenml/zen_server/deploy/terraform/recipes/gcp/terraform.tf +0 -44
  524. zenml/zen_server/deploy/terraform/recipes/gcp/variables.tf +0 -171
  525. zenml/zen_server/deploy/terraform/recipes/gcp/zen_server.tf +0 -114
  526. zenml/zen_server/deploy/terraform/terraform_zen_server.py +0 -246
  527. /zenml/{new/pipelines → pipelines}/build_utils.py +0 -0
  528. /zenml/{new/pipelines → pipelines}/run_utils.py +0 -0
  529. /zenml/{new/steps → steps}/decorated_step.py +0 -0
  530. {zenml_nightly-0.66.0.dev20240930.dist-info → zenml_nightly-0.68.0.dev20241026.dist-info}/LICENSE +0 -0
  531. {zenml_nightly-0.66.0.dev20240930.dist-info → zenml_nightly-0.68.0.dev20241026.dist-info}/entry_points.txt +0 -0
@@ -1,167 +0,0 @@
1
-
2
- variable "name" {
3
- description = "The prefix to use for all AWS resource names"
4
- default = "zenmlserver"
5
- type = string
6
- }
7
-
8
- variable "region" {
9
- description = "The region for your AWS resources"
10
- default = "eu-west-1"
11
- type = string
12
- }
13
-
14
- variable "namespace" {
15
- description = "The namespace to install the ZenML server Helm chart in"
16
- default = "terraform-server"
17
- type = string
18
- }
19
-
20
- variable "helm_chart" {
21
- description = "The path to the ZenML server helm chart"
22
- default = "../../../helm"
23
- type = string
24
- }
25
-
26
- variable "kubectl_config_path" {
27
- description = "The path to the kube config"
28
- default = ""
29
- type = string
30
- }
31
-
32
- variable "analytics_opt_in" {
33
- description = "The flag to enable/disable analytics"
34
- default = true
35
- type = bool
36
- }
37
-
38
- # If you want a new RDS, choose a name and a password. If you already
39
- # have an instance, provide the name and the password here too.
40
- variable "database_username" {
41
- description = "The username for the AWS RDS metadata store"
42
- default = "admin"
43
- type = string
44
- }
45
- variable "database_password" {
46
- description = "The password for the AWS RDS metadata store"
47
- default = ""
48
- type = string
49
- }
50
-
51
- # if you enable the deploy_db option, the recipe will
52
- # create a new RDS MySQL instance and then use it for this
53
- # ZenML Server. If disabled, you have to supply connection details
54
- # in the section below.
55
- variable "deploy_db" {
56
- description = "Should the recipe create an RDS instance?"
57
- default = true
58
- type = bool
59
- }
60
- variable "rds_name" {
61
- description = "The name for the AWS RDS metadata store"
62
- default = "zenmlserver"
63
- type = string
64
- }
65
- variable "db_name" {
66
- description = "The name for the AWS RDS database"
67
- default = "zenmlserver"
68
- type = string
69
- }
70
- variable "db_type" {
71
- description = "The type for the AWS RDS database"
72
- default = "mysql"
73
- type = string
74
- }
75
- variable "db_version" {
76
- description = "The version for the AWS RDS database"
77
- default = "5.7.38"
78
- type = string
79
- }
80
- variable "db_instance_class" {
81
- description = "The instance class to use for the database"
82
- default = "db.t3.micro"
83
- type = string
84
- }
85
-
86
- variable "db_allocated_storage" {
87
- description = "The allocated storage in gigabytes"
88
- default = 5
89
- type = number
90
- }
91
-
92
- # If you haven't enabled the deploy_db option, provide
93
- # the following value in the values.tfvars.json file.
94
- variable "database_url" {
95
- description = "The URL for the AWS RDS instance"
96
- default = ""
97
- type = string
98
- }
99
- variable "database_ssl_ca" {
100
- description = "The server ca for the AWS RDS instance"
101
- default = ""
102
- type = string
103
- }
104
- variable "database_ssl_cert" {
105
- description = "The client cert for the AWS RDS instance"
106
- default = ""
107
- type = string
108
- }
109
- variable "database_ssl_key" {
110
- description = "The client key for the AWS RDS instance"
111
- default = ""
112
- type = string
113
- }
114
- variable "database_ssl_verify_server_cert" {
115
- description = "Should SSL be verified?"
116
- default = true
117
- type = bool
118
- }
119
-
120
-
121
- # set to true if you don't already have an nginx ingress
122
- # controller in your cluster
123
- variable "create_ingress_controller" {
124
- description = "set to true if you want the recipe to create an ingress controller in your cluster"
125
- default = true
126
- type = bool
127
- }
128
-
129
- # if you already have an ingress controller, supply it's URL
130
- variable "ingress_controller_ip" {
131
- description = "The URL for the ingress controller on your cluster"
132
- default = ""
133
- type = string
134
- }
135
- variable "ingress_tls" {
136
- description = "Whether to enable tls on the ingress or not"
137
- default = false
138
- type = bool
139
- }
140
- variable "ingress_tls_generate_certs" {
141
- description = "Whether to enable tls certificates or not"
142
- default = false
143
- type = bool
144
- }
145
- variable "ingress_tls_secret_name" {
146
- description = "Name for the Kubernetes secret that stores certificates"
147
- default = "zenml-tls-certs"
148
- type = string
149
- }
150
-
151
- variable "zenmlserver_image_repo" {
152
- description = "The repository to use for the zenmlserver docker image."
153
- default = "zenmldocker/zenml-server"
154
- type = string
155
- }
156
- variable "zenmlserver_image_tag" {
157
- description = "The tag to use for the zenmlserver docker image."
158
- default = "latest"
159
- type = string
160
- }
161
-
162
- # variables for creating a ZenML stack configuration file
163
- variable "zenml-version" {
164
- description = "The version of ZenML being used"
165
- default = "0.20.0"
166
- type = string
167
- }
@@ -1,47 +0,0 @@
1
- # VPC infra using https://github.com/terraform-aws-modules/terraform-aws-vpc
2
- module "vpc" {
3
- source = "terraform-aws-modules/vpc/aws"
4
- version = ">= 4.0.0"
5
- count = var.deploy_db ? 1 : 0
6
-
7
- name = "${var.name}-vpc"
8
- cidr = "10.10.0.0/16"
9
-
10
- azs = ["${var.region}a", "${var.region}b", "${var.region}c"]
11
- private_subnets = ["10.10.8.0/21", "10.10.16.0/21", "10.10.24.0/21"]
12
- public_subnets = ["10.10.128.0/21", "10.10.136.0/21", "10.10.144.0/21"]
13
-
14
- enable_nat_gateway = true
15
- single_nat_gateway = true
16
- enable_dns_hostnames = true
17
-
18
- # enabling MySQL access
19
- create_database_internet_gateway_route = true
20
- manage_default_security_group = true
21
- default_security_group_ingress = [
22
- {
23
- description = "MySQL traffic from everywhere"
24
- from_port = 3306
25
- to_port = 3306
26
- protocol = "tcp"
27
- cidr_blocks = "0.0.0.0/0"
28
- },
29
- {
30
- description = "All Traffic"
31
- from_port = 0
32
- to_port = 0
33
- protocol = -1
34
- cidr_blocks = "0.0.0.0/0"
35
- }
36
- ]
37
- default_security_group_egress = [
38
- {
39
- description = "All Traffic"
40
- from_port = 0
41
- to_port = 0
42
- protocol = "-1"
43
- cidr_blocks = "0.0.0.0/0"
44
- }
45
- ]
46
-
47
- }
@@ -1,103 +0,0 @@
1
- # create the ZenML Server deployment
2
- resource "kubernetes_namespace" "zen-server" {
3
- metadata {
4
- name = "${var.name}-${var.namespace}"
5
- }
6
- }
7
-
8
- resource "helm_release" "zen-server" {
9
-
10
- name = "${var.name}-zenmlserver"
11
- chart = var.helm_chart
12
- namespace = kubernetes_namespace.zen-server.metadata[0].name
13
-
14
- set {
15
- name = "zenml.image.repository"
16
- value = var.zenmlserver_image_repo
17
- }
18
- set {
19
- name = "zenml.image.tag"
20
- value = var.zenmlserver_image_tag
21
- }
22
- set {
23
- name = "zenml.deploymentType"
24
- value = "aws"
25
- }
26
-
27
- set {
28
- name = "zenml.secretsStore.type"
29
- value = "aws"
30
- }
31
- set {
32
- name = "zenml.secretsStore.aws.region_name"
33
- value = var.region
34
- }
35
-
36
- set {
37
- name = "zenml.analyticsOptIn"
38
- value = var.analytics_opt_in
39
- }
40
-
41
- # set up the right path for ZenML
42
- set {
43
- name = "zenml.ingress.annotations.nginx\\.ingress\\.kubernetes\\.io/rewrite-target"
44
- value = ""
45
- }
46
- set {
47
- name = "zenml.ingress.host"
48
- value = var.create_ingress_controller ? "${data.kubernetes_service.ingress-controller[0].status.0.load_balancer.0.ingress.0.hostname}" : "zenml.${var.ingress_controller_ip}.nip.io"
49
- }
50
- set {
51
- name = "zenml.ingress.tls.enabled"
52
- value = var.ingress_tls
53
- }
54
- set {
55
- name = "zenml.ingress.tls.generateCerts"
56
- value = var.ingress_tls_generate_certs
57
- }
58
- set {
59
- name = "zenml.ingress.tls.secretName"
60
- value = "${var.name}-${var.ingress_tls_secret_name}"
61
- }
62
-
63
- # set parameters for the mysql database
64
- set {
65
- name = "zenml.database.url"
66
- value = var.deploy_db ? "mysql://${module.metadata_store[0].db_instance_username}:${module.metadata_store[0].db_instance_password}@${module.metadata_store[0].db_instance_address}:3306/${var.db_name}" : var.database_url
67
- }
68
- set {
69
- name = "zenml.database.sslCa"
70
- value = var.deploy_db ? "" : var.database_ssl_ca
71
- }
72
- set {
73
- name = "zenml.database.sslCert"
74
- value = var.deploy_db ? "" : var.database_ssl_cert
75
- }
76
- set {
77
- name = "zenml.database.sslKey"
78
- value = var.deploy_db ? "" : var.database_ssl_key
79
- }
80
- set {
81
- name = "zenml.database.sslVerifyServerCert"
82
- value = var.deploy_db ? false : var.database_ssl_verify_server_cert
83
- }
84
- depends_on = [
85
- resource.kubernetes_namespace.zen-server
86
- ]
87
- }
88
-
89
- data "kubernetes_secret" "certificates" {
90
- metadata {
91
- name = "${var.name}-${var.ingress_tls_secret_name}"
92
- namespace = "${var.name}-${var.namespace}"
93
- }
94
- binary_data = {
95
- "tls.crt" = ""
96
- "tls.key" = ""
97
- "ca.crt" = ""
98
- }
99
-
100
- depends_on = [
101
- helm_release.zen-server
102
- ]
103
- }
@@ -1,8 +0,0 @@
1
- *.exe
2
- *.hcl
3
- *.info
4
- *.backup
5
- *.tfstate
6
- *.pem
7
- kubeconfig_*
8
- .terraform
@@ -1,20 +0,0 @@
1
- # check if the host OS is Linux or Windows
2
- data "external" "os" {
3
- working_dir = path.module
4
- program = ["printf", "{\"os\": \"Linux\"}"]
5
- }
6
- locals {
7
- os = data.external.os.result.os
8
- kubectl_config_path = local.os == "Windows" ? "%USERPROFILE%\\.kube\\config" : "~/.kube/config"
9
- }
10
-
11
- # A default (non-aliased) provider configuration for "helm"
12
- provider "helm" {
13
- kubernetes {
14
- config_path = var.kubectl_config_path == "" ? local.kubectl_config_path : var.kubectl_config_path
15
- }
16
- }
17
-
18
- provider "kubernetes" {
19
- config_path = var.kubectl_config_path == "" ? local.kubectl_config_path : var.kubectl_config_path
20
- }
@@ -1,30 +0,0 @@
1
- # set up the nginx ingress controller
2
- resource "kubernetes_namespace" "nginx-ns" {
3
- count = var.create_ingress_controller ? 1 : 0
4
- metadata {
5
- name = "${var.name}-ingress"
6
- }
7
- }
8
-
9
- resource "helm_release" "nginx-controller" {
10
- name = "zenml"
11
- count = var.create_ingress_controller ? 1 : 0
12
- repository = "https://kubernetes.github.io/ingress-nginx"
13
- chart = "ingress-nginx"
14
- # dependency on nginx-ns
15
- namespace = var.create_ingress_controller ? kubernetes_namespace.nginx-ns[0].metadata[0].name : ""
16
- depends_on = [
17
- resource.kubernetes_namespace.nginx-ns
18
- ]
19
- }
20
-
21
- data "kubernetes_service" "ingress-controller" {
22
- count = var.create_ingress_controller ? 1 : 0
23
- metadata {
24
- name = "zenml-ingress-nginx-controller"
25
- namespace = var.create_ingress_controller ? kubernetes_namespace.nginx-ns[0].metadata[0].name : ""
26
- }
27
- depends_on = [
28
- resource.helm_release.nginx-controller
29
- ]
30
- }
@@ -1,73 +0,0 @@
1
- data "azurerm_client_config" "current" {}
2
-
3
- data "azurerm_kubernetes_cluster" "current" {
4
- name = local.cluster
5
- resource_group_name = local.rg
6
- }
7
-
8
- # create a key vault instance that can be used for storing secrets
9
- resource "azurerm_key_vault" "secret_manager" {
10
- name = "${var.key_vault_name}-${random_string.unique.result}"
11
- location = data.azurerm_resource_group.rg.location
12
- resource_group_name = local.rg
13
- enabled_for_disk_encryption = true
14
- tenant_id = data.azurerm_client_config.current.tenant_id
15
- soft_delete_retention_days = 7
16
- purge_protection_enabled = false
17
-
18
- sku_name = "standard"
19
-
20
- access_policy {
21
- tenant_id = data.azurerm_client_config.current.tenant_id
22
- object_id = data.azurerm_client_config.current.object_id
23
-
24
- key_permissions = [
25
- "Get", "List", "Create", "Delete", "Update"
26
- ]
27
-
28
- secret_permissions = [
29
- "Get", "List", "Delete"
30
- ]
31
-
32
- storage_permissions = [
33
- "Get", "List", "Set", "Delete", "Update"
34
- ]
35
- }
36
- }
37
-
38
-
39
- resource "azurerm_key_vault_access_policy" "kv-access" {
40
- key_vault_id = azurerm_key_vault.secret_manager.id
41
- tenant_id = data.azurerm_kubernetes_cluster.current.identity.0.tenant_id
42
- object_id = data.azurerm_kubernetes_cluster.current.kubelet_identity.0.object_id
43
-
44
- key_permissions = [
45
- "Get", "List", "Create", "Delete", "Update"
46
- ]
47
-
48
- secret_permissions = [
49
- "Get", "List", "Set", "Delete"
50
- ]
51
-
52
- storage_permissions = [
53
- "Get", "List", "Set", "Delete", "Update"
54
- ]
55
- }
56
-
57
- resource "azurerm_key_vault_access_policy" "kv-access-user" {
58
- key_vault_id = azurerm_key_vault.secret_manager.id
59
- tenant_id = data.azurerm_client_config.current.tenant_id
60
- object_id = data.azurerm_client_config.current.object_id
61
-
62
- key_permissions = [
63
- "Get", "List", "Create", "Delete", "Update"
64
- ]
65
-
66
- secret_permissions = [
67
- "Get", "List", "Set", "Delete"
68
- ]
69
-
70
- storage_permissions = [
71
- "Get", "List", "Set", "Delete", "Update"
72
- ]
73
- }
@@ -1,7 +0,0 @@
1
- output "zenml_server_url" {
2
- value = var.create_ingress_controller ? "https://zenml.${data.kubernetes_service.ingress-controller[0].status.0.load_balancer.0.ingress.0.ip}.nip.io" : "https://zenml.${var.ingress_controller_ip}.nip.io"
3
- }
4
- output "ca_crt" {
5
- value = base64decode(data.kubernetes_secret.certificates.binary_data["ca.crt"])
6
- sensitive = true
7
- }
@@ -1,2 +0,0 @@
1
- @echo off
2
- echo {"os": "Windows"}
@@ -1,36 +0,0 @@
1
- # run kubectl config view commands to get the current cluster and rg
2
- resource "null_resource" "get_cluster_and_rg" {
3
- provisioner "local-exec" {
4
- command = "kubectl config view --minify -o jsonpath='{.clusters[].name}' > cluster.txt"
5
- }
6
- provisioner "local-exec" {
7
- command = "kubectl config view --minify -o jsonpath='{.contexts[].context.user}' | cut -d_ -f2 > namespace.txt"
8
- }
9
- }
10
-
11
- # get the current cluster and namespace
12
- data "local_file" "cluster" {
13
- filename = "cluster.txt"
14
-
15
- depends_on = [
16
- null_resource.get_cluster_and_rg
17
- ]
18
- }
19
-
20
- data "local_file" "rg" {
21
- filename = "namespace.txt"
22
-
23
- depends_on = [
24
- null_resource.get_cluster_and_rg
25
- ]
26
- }
27
-
28
- # get the current cluster and namespace
29
- locals {
30
- cluster = chomp(data.local_file.cluster.content)
31
- rg = chomp(data.local_file.rg.content)
32
- }
33
-
34
- data "azurerm_resource_group" "rg" {
35
- name = local.rg
36
- }
@@ -1,65 +0,0 @@
1
- # random string for the Flexible Server instance name
2
- resource "random_string" "flexible_server_suffix" {
3
- count = var.deploy_db ? 1 : 0
4
- length = 4
5
- upper = false
6
- special = false
7
- }
8
-
9
- resource "azurerm_mysql_flexible_server" "mysql" {
10
- count = var.deploy_db ? 1 : 0
11
- name = "${var.db_instance_name}-${random_string.flexible_server_suffix[0].result}"
12
- resource_group_name = local.rg
13
- location = data.azurerm_resource_group.rg.location
14
- administrator_login = var.database_username
15
- administrator_password = var.database_password == "" ? random_password.mysql_password.result : var.database_password
16
- version = var.db_version
17
- storage {
18
- size_gb = var.db_disk_size
19
- }
20
- sku_name = var.db_sku_name
21
- }
22
-
23
- resource "azurerm_mysql_flexible_database" "db" {
24
- count = var.deploy_db ? 1 : 0
25
- name = var.db_name
26
- resource_group_name = data.azurerm_resource_group.rg.name
27
- server_name = azurerm_mysql_flexible_server.mysql[0].name
28
- charset = "utf8"
29
- collation = "utf8_unicode_ci"
30
- }
31
-
32
- resource "azurerm_mysql_flexible_server_firewall_rule" "allow_IPs" {
33
- count = var.deploy_db ? 1 : 0
34
- name = "all_traffic"
35
- resource_group_name = data.azurerm_resource_group.rg.name
36
- server_name = azurerm_mysql_flexible_server.mysql[0].name
37
- start_ip_address = "0.0.0.0"
38
- end_ip_address = "255.255.255.255"
39
- }
40
-
41
- resource "azurerm_mysql_flexible_server_configuration" "require_ssl" {
42
- count = var.deploy_db ? 1 : 0
43
- name = "require_secure_transport"
44
- resource_group_name = data.azurerm_resource_group.rg.name
45
- server_name = azurerm_mysql_flexible_server.mysql[0].name
46
- value = "OFF"
47
- }
48
-
49
- resource "random_password" "mysql_password" {
50
- length = 12
51
- special = false
52
- min_lower = 1
53
- min_numeric = 1
54
- min_upper = 1
55
- }
56
-
57
- # download SSL certificate
58
- resource "null_resource" "download-SSL-certificate" {
59
- count = var.deploy_db ? 1 : 0
60
-
61
- provisioner "local-exec" {
62
- command = "wget https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem"
63
- }
64
-
65
- }
@@ -1,52 +0,0 @@
1
- # defining the providers for the recipe module
2
- terraform {
3
- required_providers {
4
- azurerm = {
5
- source = "hashicorp/azurerm"
6
- version = ">=3.16.0"
7
- }
8
-
9
- random = {
10
- source = "hashicorp/random"
11
- version = "3.1.0"
12
- }
13
-
14
- local = {
15
- source = "hashicorp/local"
16
- version = "2.1.0"
17
- }
18
-
19
- null = {
20
- source = "hashicorp/null"
21
- version = "3.1.0"
22
- }
23
-
24
- kubernetes = {
25
- source = "hashicorp/kubernetes"
26
- version = ">= 2.11.0"
27
- }
28
-
29
- kubectl = {
30
- source = "gavinbunney/kubectl"
31
- version = "1.14.0"
32
- }
33
-
34
- htpasswd = {
35
- source = "loafoe/htpasswd"
36
- version = "1.0.3"
37
- }
38
- }
39
-
40
- required_version = ">= 0.14.8"
41
- }
42
-
43
- provider "azurerm" {
44
- features {
45
- resource_group {
46
- prevent_deletion_if_contains_resources = false
47
- }
48
- key_vault {
49
- purge_soft_delete_on_destroy = true
50
- }
51
- }
52
- }