zenml-nightly 0.71.0.dev20250107__py3-none-any.whl → 0.71.0.dev20250111__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.
- zenml/VERSION +1 -1
- zenml/cli/base.py +1 -1
- zenml/cli/formatter.py +1 -1
- zenml/cli/integration.py +1 -1
- zenml/cli/model_registry.py +1 -2
- zenml/cli/secret.py +1 -2
- zenml/cli/service_connectors.py +1 -1
- zenml/cli/stack.py +2 -3
- zenml/cli/stack_components.py +4 -6
- zenml/cli/text_utils.py +1 -1
- zenml/cli/utils.py +4 -5
- zenml/client.py +1 -4
- zenml/constants.py +1 -0
- zenml/entrypoints/step_entrypoint_configuration.py +15 -0
- zenml/integrations/azure/__init__.py +1 -1
- zenml/integrations/azure/azureml_utils.py +1 -1
- zenml/integrations/azure/orchestrators/azureml_orchestrator_entrypoint_config.py +0 -5
- zenml/integrations/bitbucket/plugins/event_sources/bitbucket_webhook_event_source.py +3 -3
- zenml/integrations/databricks/orchestrators/databricks_orchestrator.py +1 -3
- zenml/integrations/evidently/metrics.py +2 -2
- zenml/integrations/evidently/tests.py +2 -2
- zenml/integrations/gcp/service_connectors/gcp_service_connector.py +3 -3
- zenml/integrations/github/plugins/event_sources/github_webhook_event_source.py +3 -3
- zenml/integrations/s3/utils.py +1 -2
- zenml/logger.py +1 -1
- zenml/models/v2/base/scoped.py +37 -34
- zenml/models/v2/core/artifact.py +86 -2
- zenml/models/v2/core/model.py +81 -2
- zenml/models/v2/core/pipeline.py +15 -12
- zenml/models/v2/core/pipeline_run.py +2 -0
- zenml/services/container/container_service.py +1 -1
- zenml/stack/stack_component.py +1 -1
- zenml/utils/deprecation_utils.py +6 -6
- zenml/utils/filesync_model.py +3 -3
- zenml/utils/function_utils.py +1 -1
- zenml/utils/pipeline_docker_image_builder.py +1 -1
- zenml/zen_server/auth.py +2 -5
- zenml/zen_server/dashboard/assets/{404-Cqu3EDCm.js → 404-Dfq64Boz.js} +1 -1
- zenml/zen_server/dashboard/assets/{@reactflow-D2Y7BWwz.js → @reactflow-BUNIMFeC.js} +1 -1
- zenml/zen_server/dashboard/assets/{AlertDialogDropdownItem-BHd71pVS.js → AlertDialogDropdownItem-B73Vs10T.js} +1 -1
- zenml/zen_server/dashboard/assets/{CodeSnippet-DIonwetW.js → CodeSnippet-DIJRT2NT.js} +1 -1
- zenml/zen_server/dashboard/assets/{CollapsibleCard-CDnC97pB.js → CollapsibleCard-BzUHGZOU.js} +1 -1
- zenml/zen_server/dashboard/assets/{Commands-BVEXKAOj.js → Commands-BEGyld4c.js} +1 -1
- zenml/zen_server/dashboard/assets/{ComponentBadge-CrRvovox.js → ComponentBadge-xyKiek1s.js} +1 -1
- zenml/zen_server/dashboard/assets/{CopyButton-B6wGAhQv.js → CopyButton-DhW-mapu.js} +1 -1
- zenml/zen_server/dashboard/assets/{CsvVizualization-CjcT7LMm.js → CsvVizualization-D8oazBiE.js} +1 -1
- zenml/zen_server/dashboard/assets/{DeleteAlertDialog-D2ELtM2W.js → DeleteAlertDialog-WkSIIgfy.js} +1 -1
- zenml/zen_server/dashboard/assets/{DialogItem-DXIMhBgU.js → DialogItem-Bgroeg29.js} +1 -1
- zenml/zen_server/dashboard/assets/{Error-B8uUfTpL.js → Error-CY5tlu17.js} +1 -1
- zenml/zen_server/dashboard/assets/{ExecutionStatus-ibAdY-dG.js → ExecutionStatus-G8mjIaeA.js} +1 -1
- zenml/zen_server/dashboard/assets/{Helpbox-BfAfhKHw.js → Helpbox-Bb1ed--O.js} +1 -1
- zenml/zen_server/dashboard/assets/{Infobox-M_SMOu96.js → Infobox-Da6-76M2.js} +1 -1
- zenml/zen_server/dashboard/assets/{InlineAvatar-DBA0a0-a.js → InlineAvatar-DqnZaBNq.js} +1 -1
- zenml/zen_server/dashboard/assets/{NestedCollapsible-DpgmEFKw.js → NestedCollapsible-aK5ojKoF.js} +1 -1
- zenml/zen_server/dashboard/assets/{Partials-D_ldD9if.js → Partials-CqZp5NMX.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProBadge-DQbfFotM.js → ProBadge-B4tRUYve.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProCta-Bcpb4rcY.js → ProCta-CZuP29Qz.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProviderIcon-BZpgPigN.js → ProviderIcon-Bd7GUQ1_.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProviderRadio-DWPnMuQ1.js → ProviderRadio-mstdqzsS.js} +1 -1
- zenml/zen_server/dashboard/assets/{RunSelector-DgRGaAc6.js → RunSelector-CsruSB4i.js} +1 -1
- zenml/zen_server/dashboard/assets/{RunsBody-KecfSkjY.js → RunsBody-DxxtWVYz.js} +1 -1
- zenml/zen_server/dashboard/assets/{SearchField-n-ILHnaP.js → SearchField-D6tPxyqw.js} +1 -1
- zenml/zen_server/dashboard/assets/{SecretTooltip-B8MrX5yu.js → SecretTooltip-CLzJIYW_.js} +1 -1
- zenml/zen_server/dashboard/assets/{SetPassword-B_IVq_wg.js → SetPassword-Yn50ooBC.js} +1 -1
- zenml/zen_server/dashboard/assets/{StackList-TWPBYnkF.js → StackList-U537qoYd.js} +1 -1
- zenml/zen_server/dashboard/assets/{Tabs-Rg857zmd.js → Tabs-CNv-eTYM.js} +1 -1
- zenml/zen_server/dashboard/assets/{Tick-COg4A-xo.js → Tick-jEIevzVf.js} +1 -1
- zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-C6Aj3hm6.js → UpdatePasswordSchemas-C16GW-kX.js} +1 -1
- zenml/zen_server/dashboard/assets/{UsageReason-BTLbx7w4.js → UsageReason-Bf2tzhv1.js} +1 -1
- zenml/zen_server/dashboard/assets/{WizardFooter-BCAj69Vj.js → WizardFooter-D6i-AP1K.js} +1 -1
- zenml/zen_server/dashboard/assets/{all-pipeline-runs-query-DMXkDrV2.js → all-pipeline-runs-query-DUti43aF.js} +1 -1
- zenml/zen_server/dashboard/assets/{create-stack-HfdbhLs4.js → create-stack-Ch2WPs9U.js} +1 -1
- zenml/zen_server/dashboard/assets/{delete-run-DZ4hIXff.js → delete-run-Byf9hTjA.js} +1 -1
- zenml/zen_server/dashboard/assets/{form-schemas-B0AVEd9b.js → form-schemas-BZqKBPBF.js} +1 -1
- zenml/zen_server/dashboard/assets/{index-FO-p0GU7.js → index-CE0aQlv8.js} +3 -3
- zenml/zen_server/dashboard/assets/{index-DScjfBRb.js → index-CtdYkjUi.js} +1 -1
- zenml/zen_server/dashboard/assets/{index-DPqSWjug.js → index-CyBKZcpO.js} +1 -1
- zenml/zen_server/dashboard/assets/{index-I3bKUGUj.js → index-v6gQjDEo.js} +1 -1
- zenml/zen_server/dashboard/assets/{login-mutation-BQeo4wTY.js → login-mutation-DNDVp_2H.js} +1 -1
- zenml/zen_server/dashboard/assets/{not-found-gAJ5aDdR.js → not-found-Bmup4ctE.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-I3nKFGie.js → page--XLMzHrn.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DO1UcqPX.js → page-ANYGfEUL.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-AUwiQ14W.js → page-B5Sr8pib.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CcQr8CPP.js → page-BC27C_OI.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-zaMqB_ao.js → page-BNxYrN0q.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CiYxgZP_.js → page-BYJfqgLN.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-h_Stveon.js → page-B_0XkV48.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-R5dx3xGF.js → page-BrmJp1Wt.js} +1 -1
- zenml/zen_server/dashboard/assets/page-C2nU3Gxn.js +1 -0
- zenml/zen_server/dashboard/assets/{page-Dk32IeZm.js → page-C70wZtV2.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CWxT5K5J.js → page-CHRn1fQm.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-M0w-n6vn.js → page-CWr96ZKN.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-Ce4Hrjnr.js → page-CXAbSyp9.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-D8ObrbH8.js → page-CaeI9ptC.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-B_Apk3xg.js → page-Cc8ZEuj4.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-BxL4qD4_.js → page-CltCNL0T.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-D4wdonLm.js → page-CmlYj7Nl.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DFuAUGt4.js → page-D6Ev5P8V.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-u_-ZXBKb.js → page-D9Oh05fl.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DRYXdL5o.js → page-DGlm1RVc.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-r8XK5vR7.js → page-DN4BVIOL.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DYEquBC2.js → page-Dif8CWyZ.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-BdowiCbr.js → page-DlIi5ThM.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-9Y9-gig0.js → page-DoW7YxTu.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-BKZYc2Zv.js → page-Dth9X1Ih.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-bT5pOvcB.js → page-DweqqCkF.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CXuQufSe.js → page-DyOJ_pq3.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DGazBpuP.js → page-Hn8q9iJZ.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-hUqK889I.js → page-IhckKFnD.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-BU9FG4sR.js → page-LyZ_l8vR.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-Cldq1mpe.js → page-PamGpk0j.js} +1 -1
- zenml/zen_server/dashboard/assets/page-PxOWfKgF.js +2 -0
- zenml/zen_server/dashboard/assets/{persist-DAUi_3za.js → persist-DeXRG61d.js} +1 -1
- zenml/zen_server/dashboard/assets/{persist-AppN1B0J.js → persist-vP0-Xl4f.js} +1 -1
- zenml/zen_server/dashboard/assets/{service-BqqeXLEe.js → service-DH_oUqQj.js} +1 -1
- zenml/zen_server/dashboard/assets/{sharedSchema-uXN9FLLk.js → sharedSchema-Bw1_Wa7l.js} +1 -1
- zenml/zen_server/dashboard/assets/{stack-detail-query-XfZBiBP2.js → stack-detail-query-B_0R_fd6.js} +1 -1
- zenml/zen_server/dashboard/assets/{update-server-settings-mutation-BWmgVJwA.js → update-server-settings-mutation-D9qYhfaN.js} +1 -1
- zenml/zen_server/dashboard/assets/{url-BLwMbzES.js → url-Dh93fvh0.js} +1 -1
- zenml/zen_server/dashboard/index.html +3 -3
- zenml/zen_server/deploy/deployer.py +1 -1
- zenml/zen_server/rbac/rbac_sql_zen_store.py +3 -1
- zenml/zen_server/routers/webhook_endpoints.py +1 -2
- zenml/zen_stores/migrations/utils.py +1 -2
- zenml/zen_stores/migrations/versions/5330ba58bf20_rename_tables_and_foreign_keys.py +7 -9
- zenml/zen_stores/rest_zen_store.py +1 -1
- zenml/zen_stores/schemas/artifact_schemas.py +19 -19
- zenml/zen_stores/schemas/model_schemas.py +19 -19
- zenml/zen_stores/schemas/pipeline_run_schemas.py +18 -19
- zenml/zen_stores/schemas/pipeline_schemas.py +7 -5
- zenml/zen_stores/schemas/run_metadata_schemas.py +1 -45
- zenml/zen_stores/schemas/run_template_schemas.py +7 -5
- zenml/zen_stores/schemas/step_run_schemas.py +6 -8
- zenml/zen_stores/schemas/tag_schemas.py +5 -41
- zenml/zen_stores/schemas/utils.py +11 -12
- zenml/zen_stores/sql_zen_store.py +9 -3
- {zenml_nightly-0.71.0.dev20250107.dist-info → zenml_nightly-0.71.0.dev20250111.dist-info}/METADATA +2 -2
- {zenml_nightly-0.71.0.dev20250107.dist-info → zenml_nightly-0.71.0.dev20250111.dist-info}/RECORD +141 -141
- zenml/zen_server/dashboard/assets/page-B6XU7yYT.js +0 -2
- zenml/zen_server/dashboard/assets/page-Bg8OjTRe.js +0 -1
- {zenml_nightly-0.71.0.dev20250107.dist-info → zenml_nightly-0.71.0.dev20250111.dist-info}/LICENSE +0 -0
- {zenml_nightly-0.71.0.dev20250107.dist-info → zenml_nightly-0.71.0.dev20250111.dist-info}/WHEEL +0 -0
- {zenml_nightly-0.71.0.dev20250107.dist-info → zenml_nightly-0.71.0.dev20250111.dist-info}/entry_points.txt +0 -0
@@ -1 +1 @@
|
|
1
|
-
import{k as n,F as i,p as o,q as u}from"./index-
|
1
|
+
import{k as n,F as i,p as o,q as u}from"./index-CE0aQlv8.js";import{b as c}from"./@tanstack-DT5WLu9C.js";async function p(e){const r=o(u.settings),t=await n(r,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const a=await t.json().then(s=>Array.isArray(s.detail)?s.detail[1]:s.detail).catch(()=>"Failed to update Server Settings");throw new i({status:t.status,statusText:t.statusText,message:a})}return t.json()}function f(e){return c({mutationFn:async r=>p(r),...e})}export{f as u};
|
@@ -1 +1 @@
|
|
1
|
-
import{z as i}from"./index-
|
1
|
+
import{z as i}from"./index-CE0aQlv8.js";function m(t){return new URLSearchParams(Object.entries(t).filter(([n,e])=>e!=null).reduce((n,[e,a])=>(n.append(e,a),n),new URLSearchParams))}const r=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^&:/?#]*(?:[/?#]|$))/gi,s=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function o(t){return t=String(t),t==="null"||t.length===0||t==="about:blank"?"about:blank":t.match(r)||t.match(s)?t:`unsafe:${t}`}function f(t="about:blank"){return o(String(t).trim())}const c=i.string().url();function p(t){return c.safeParse(t).success}export{p as i,m as o,f as s,c as u};
|
@@ -5,14 +5,14 @@
|
|
5
5
|
<link rel="icon" type="image/svg+xml" href="/favicon.ico" />
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
7
7
|
<title>ZenML Dashboard</title>
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
8
|
+
<script type="module" crossorigin src="/assets/index-CE0aQlv8.js"></script>
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/@radix-DeK6qiuw.js">
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/@tanstack-DT5WLu9C.js">
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/@react-router-B3Z5rLr2.js">
|
12
|
-
<link rel="modulepreload" crossorigin href="/assets/@reactflow-
|
12
|
+
<link rel="modulepreload" crossorigin href="/assets/@reactflow-BUNIMFeC.js">
|
13
13
|
<link rel="stylesheet" crossorigin href="/assets/@reactflow-C26Olbza.css">
|
14
14
|
<link rel="stylesheet" crossorigin href="/assets/index-DXvT1_Um.css">
|
15
|
-
<link rel="prefetch" href="/assets/inter-cyrillic-ext-400-normal-Dc4VJyIJ.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-400-normal-BLGc9T1a.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-400-normal-Bput3-QP.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-DMkecbls.woff2"><link rel="prefetch" href="/assets/inter-greek-400-normal-DxZsaF_h.woff2"><link rel="prefetch" href="/assets/inter-latin-400-normal-BOOGhInR.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-hnt3BR84.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-500-normal-BShVwWPj.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-500-normal-D4Vwzodn.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-B6guLgqG.woff2"><link rel="prefetch" href="/assets/inter-greek-500-normal-CeQXL5ds.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-500-normal-DOriooB6.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-500-normal-CIS2RHJS.woff2"><link rel="prefetch" href="/assets/inter-latin-500-normal-D2bGa7uu.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-CaqZN2hq.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BGBWG807.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-Cnui8OiR.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2"><link rel="prefetch" href="/assets/inter-greek-600-normal-Dhlb-90d.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-BnYJhD27.woff2"><link rel="prefetch" href="/assets/inter-latin-600-normal-D273HNI0.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-400-normal-BPnxn4xp.woff"><link rel="prefetch" href="/assets/inter-cyrillic-400-normal-ZzOtrSSW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-400-normal-DCpCPQOf.woff"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-BUNmGMP1.woff"><link rel="prefetch" href="/assets/inter-greek-400-normal-BZzXV7-1.woff"><link rel="prefetch" href="/assets/inter-latin-400-normal-gitzw0hO.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-500-normal-CUiC4oBV.woff"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-C1t-h-pH.woff"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-M2hEX8vc.woff"><link rel="prefetch" href="/assets/inter-cyrillic-500-normal-DH2hs3aW.woff"><link rel="prefetch" href="/assets/inter-vietnamese-500-normal-DQPw2Hwd.woff"><link rel="prefetch" href="/assets/inter-greek-500-normal-d_eO-yCQ.woff"><link rel="prefetch" href="/assets/inter-latin-ext-500-normal-UMdmhHu2.woff"><link rel="prefetch" href="/assets/inter-latin-500-normal-deR1Tlfd.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-Bt9VVOA-.woff"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-C9WLioJ8.woff"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BuzJQFbW.woff"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cm6aH8_k.woff"><link rel="prefetch" href="/assets/inter-greek-600-normal-CwicyhtI.woff"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-CAF0vJDd.woff"><link rel="prefetch" href="/assets/inter-latin-600-normal-B5cFAncS.woff"><link rel="prefetch" href="/assets/cloud-squares-DeRLMopf.svg"><link rel="prefetch" href="/assets/acp-DOsXjFc7.webp"><link rel="prefetch" href="/assets/mcp-Cb1aMeoq.webp"><link rel="prefetch" href="/assets/settings_preview-0JLrRgHP.webp"><link rel="prefetch" href="/assets/upgrade-form-CwRHBuXB.webp"><link rel="prefetch" href="/assets/connectors-video-C9qY4syJ.svg"><link rel="prefetch" href="/assets/repos-video-D8kpu60k.svg"><link rel="prefetch" href="/assets/adam-e-y0WnB_.webp"><link rel="prefetch" href="/assets/alex-DcCuDHPg.webp"><link rel="prefetch" href="/assets/baris-C0ZrZ10g.webp"><link rel="prefetch" href="/assets/hamza-NKKOZz1I.webp"><link rel="prefetch" href="/assets/stefan-B08Ftbba.webp"><link rel="prefetch" href="/assets/tour-cover-BYfeen6M.webp"><link rel="prefetch" href="/assets/templates-1S_8WeSK.webp"><link rel="prefetch" href="/assets/flyte-Cj-xy_8I.svg"><link rel="prefetch" href="/assets/metaflow-weOkWNyT.svg"><link rel="prefetch" href="/assets/CodeSnippet-Bbx6fIb6.css"><link rel="prefetch" href="/assets/page-CiYxgZP_.js"><link rel="prefetch" href="/assets/page-DYEquBC2.js"><link rel="prefetch" href="/assets/page-bT5pOvcB.js"><link rel="prefetch" href="/assets/page-h_Stveon.js"><link rel="prefetch" href="/assets/page-CcQr8CPP.js"><link rel="prefetch" href="/assets/SetPassword-B_IVq_wg.js"><link rel="prefetch" href="/assets/login-mutation-BQeo4wTY.js"><link rel="prefetch" href="/assets/page-Dk32IeZm.js"><link rel="prefetch" href="/assets/page-zaMqB_ao.js"><link rel="prefetch" href="/assets/page-B6XU7yYT.js"><link rel="prefetch" href="/assets/not-found-gAJ5aDdR.js"><link rel="prefetch" href="/assets/page-BU9FG4sR.js"><link rel="prefetch" href="/assets/page-R5dx3xGF.js"><link rel="prefetch" href="/assets/PasswordChecker-B0nadgh6.js"><link rel="prefetch" href="/assets/tick-circle-BEX_Tp4v.js"><link rel="prefetch" href="/assets/page-BxL4qD4_.js"><link rel="prefetch" href="/assets/page-BdowiCbr.js"><link rel="prefetch" href="/assets/page-u_-ZXBKb.js"><link rel="prefetch" href="/assets/docker-BdA9vrnW.js"><link rel="prefetch" href="/assets/page-r8XK5vR7.js"><link rel="prefetch" href="/assets/Commands-BVEXKAOj.js"><link rel="prefetch" href="/assets/page-Cldq1mpe.js"><link rel="prefetch" href="/assets/code-snippets-CqONne41.js"><link rel="prefetch" href="/assets/page-hUqK889I.js"><link rel="prefetch" href="/assets/SecretTooltip-B8MrX5yu.js"><link rel="prefetch" href="/assets/page-M0w-n6vn.js"><link rel="prefetch" href="/assets/update-server-settings-mutation-BWmgVJwA.js"><link rel="prefetch" href="/assets/page-9Y9-gig0.js"><link rel="prefetch" href="/assets/page-CXuQufSe.js"><link rel="prefetch" href="/assets/dates-3pMLCNrD.js"><link rel="prefetch" href="/assets/key-icon-aH-QIa5R.js"><link rel="prefetch" href="/assets/service-BqqeXLEe.js"><link rel="prefetch" href="/assets/page-B_Apk3xg.js"><link rel="prefetch" href="/assets/page-Bg8OjTRe.js"><link rel="prefetch" href="/assets/RunsBody-KecfSkjY.js"><link rel="prefetch" href="/assets/RunSelector-DgRGaAc6.js"><link rel="prefetch" href="/assets/delete-run-DZ4hIXff.js"><link rel="prefetch" href="/assets/DeleteAlertDialog-D2ELtM2W.js"><link rel="prefetch" href="/assets/Tabs-Rg857zmd.js"><link rel="prefetch" href="/assets/all-pipeline-runs-query-DMXkDrV2.js"><link rel="prefetch" href="/assets/NestedCollapsible-DpgmEFKw.js"><link rel="prefetch" href="/assets/ExecutionStatus-ibAdY-dG.js"><link rel="prefetch" href="/assets/page-D8ObrbH8.js"><link rel="prefetch" href="/assets/StackList-TWPBYnkF.js"><link rel="prefetch" href="/assets/DialogItem-DXIMhBgU.js"><link rel="prefetch" href="/assets/AlertDialogDropdownItem-BHd71pVS.js"><link rel="prefetch" href="/assets/CollapsibleCard-CDnC97pB.js"><link rel="prefetch" href="/assets/CopyButton-B6wGAhQv.js"><link rel="prefetch" href="/assets/refresh-BjOeWlEq.js"><link rel="prefetch" href="/assets/SearchField-n-ILHnaP.js"><link rel="prefetch" href="/assets/page-Ce4Hrjnr.js"><link rel="prefetch" href="/assets/code-browser-CUFUIHfp.js"><link rel="prefetch" href="/assets/page-D4wdonLm.js"><link rel="prefetch" href="/assets/page-AUwiQ14W.js"><link rel="prefetch" href="/assets/index-DPqSWjug.js"><link rel="prefetch" href="/assets/index-I3bKUGUj.js"><link rel="prefetch" href="/assets/InlineAvatar-DBA0a0-a.js"><link rel="prefetch" href="/assets/DisplayDate-CDMUcQHS.js"><link rel="prefetch" href="/assets/index-Uu49AX48.js"><link rel="prefetch" href="/assets/page-BKZYc2Zv.js"><link rel="prefetch" href="/assets/Lock-CYYy18Mm.js"><link rel="prefetch" href="/assets/components-Br2ezRib.js"><link rel="prefetch" href="/assets/trash-arLUMWMS.js"><link rel="prefetch" href="/assets/dots-horizontal-otGBOSDJ.js"><link rel="prefetch" href="/assets/create-stack-HfdbhLs4.js"><link rel="prefetch" href="/assets/page-DGazBpuP.js"><link rel="prefetch" href="/assets/persist-AppN1B0J.js"><link rel="prefetch" href="/assets/Partials-D_ldD9if.js"><link rel="prefetch" href="/assets/link-external-b9AXw_sW.js"><link rel="prefetch" href="/assets/logs-WMSM52RF.js"><link rel="prefetch" href="/assets/NumberBox-Dtp3J6g5.js"><link rel="prefetch" href="/assets/Infobox-M_SMOu96.js"><link rel="prefetch" href="/assets/WizardFooter-BCAj69Vj.js"><link rel="prefetch" href="/assets/ProviderRadio-DWPnMuQ1.js"><link rel="prefetch" href="/assets/persist-DAUi_3za.js"><link rel="prefetch" href="/assets/ComponentBadge-CrRvovox.js"><link rel="prefetch" href="/assets/ProviderIcon-BZpgPigN.js"><link rel="prefetch" href="/assets/sharedSchema-uXN9FLLk.js"><link rel="prefetch" href="/assets/index-DScjfBRb.js"><link rel="prefetch" href="/assets/stack-detail-query-XfZBiBP2.js"><link rel="prefetch" href="/assets/layout-BtHBmE4w.js"><link rel="prefetch" href="/assets/page-CWxT5K5J.js"><link rel="prefetch" href="/assets/Error-B8uUfTpL.js"><link rel="prefetch" href="/assets/page-DO1UcqPX.js"><link rel="prefetch" href="/assets/page-I3nKFGie.js"><link rel="prefetch" href="/assets/ProBadge-DQbfFotM.js"><link rel="prefetch" href="/assets/ProCta-Bcpb4rcY.js"><link rel="prefetch" href="/assets/login-command-CkqxPtV3.js"><link rel="prefetch" href="/assets/CodeSnippet-DIonwetW.js"><link rel="prefetch" href="/assets/copy-C8XQA2Ug.js"><link rel="prefetch" href="/assets/zod-BwEbpOxH.js"><link rel="prefetch" href="/assets/index.esm-Dy6Z9Ung.js"><link rel="prefetch" href="/assets/check-DloQpStc.js"><link rel="prefetch" href="/assets/check-circle-jNbX5-sR.js"><link rel="prefetch" href="/assets/form-schemas-B0AVEd9b.js"><link rel="prefetch" href="/assets/EmptyState-BzdlCwp3.js"><link rel="prefetch" href="/assets/UsageReason-BTLbx7w4.js"><link rel="prefetch" href="/assets/url-BLwMbzES.js"><link rel="prefetch" href="/assets/gcp-CFtm4BA7.js"><link rel="prefetch" href="/assets/kubernetes-B2wmAJ1d.js"><link rel="prefetch" href="/assets/rocket-DjT2cDvG.js"><link rel="prefetch" href="/assets/UpdatePasswordSchemas-C6Aj3hm6.js"><link rel="prefetch" href="/assets/chevron-right-double-D7ojK9Co.js"><link rel="prefetch" href="/assets/plus-tf1V2hTJ.js"><link rel="prefetch" href="/assets/chevron-down-6JyMkfjR.js"><link rel="prefetch" href="/assets/Helpbox-BfAfhKHw.js"><link rel="prefetch" href="/assets/help-Cc9bBIJH.js"><link rel="prefetch" href="/assets/Tick-COg4A-xo.js"><link rel="prefetch" href="/assets/package-C6uypY4h.js"><link rel="prefetch" href="/assets/page-DFuAUGt4.js"><link rel="prefetch" href="/assets/page-DRYXdL5o.js"><link rel="prefetch" href="/assets/404-Cqu3EDCm.js"><link rel="prefetch" href="/assets/CsvVizualization-CjcT7LMm.js"><link rel="prefetch" href="/assets/MarkdownVisualization-ylXaAxev.js"></head>
|
15
|
+
<link rel="prefetch" href="/assets/inter-cyrillic-ext-400-normal-Dc4VJyIJ.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-400-normal-BLGc9T1a.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-400-normal-Bput3-QP.woff2"><link rel="prefetch" href="/assets/inter-greek-400-normal-DxZsaF_h.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-DMkecbls.woff2"><link rel="prefetch" href="/assets/inter-latin-400-normal-BOOGhInR.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-hnt3BR84.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-500-normal-BShVwWPj.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-B6guLgqG.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-500-normal-D4Vwzodn.woff2"><link rel="prefetch" href="/assets/inter-greek-500-normal-CeQXL5ds.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-500-normal-DOriooB6.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-500-normal-CIS2RHJS.woff2"><link rel="prefetch" href="/assets/inter-latin-500-normal-D2bGa7uu.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-CaqZN2hq.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-Cnui8OiR.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BGBWG807.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2"><link rel="prefetch" href="/assets/inter-greek-600-normal-Dhlb-90d.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-BnYJhD27.woff2"><link rel="prefetch" href="/assets/inter-latin-600-normal-D273HNI0.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-ext-400-normal-BPnxn4xp.woff"><link rel="prefetch" href="/assets/inter-greek-400-normal-BZzXV7-1.woff"><link rel="prefetch" href="/assets/inter-cyrillic-400-normal-ZzOtrSSW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-400-normal-DCpCPQOf.woff"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-BUNmGMP1.woff"><link rel="prefetch" href="/assets/inter-latin-400-normal-gitzw0hO.woff"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-C1t-h-pH.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-500-normal-CUiC4oBV.woff"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-M2hEX8vc.woff"><link rel="prefetch" href="/assets/inter-cyrillic-500-normal-DH2hs3aW.woff"><link rel="prefetch" href="/assets/inter-greek-500-normal-d_eO-yCQ.woff"><link rel="prefetch" href="/assets/inter-vietnamese-500-normal-DQPw2Hwd.woff"><link rel="prefetch" href="/assets/inter-latin-ext-500-normal-UMdmhHu2.woff"><link rel="prefetch" href="/assets/inter-latin-500-normal-deR1Tlfd.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-Bt9VVOA-.woff"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-C9WLioJ8.woff"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BuzJQFbW.woff"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cm6aH8_k.woff"><link rel="prefetch" href="/assets/inter-greek-600-normal-CwicyhtI.woff"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-CAF0vJDd.woff"><link rel="prefetch" href="/assets/inter-latin-600-normal-B5cFAncS.woff"><link rel="prefetch" href="/assets/cloud-squares-DeRLMopf.svg"><link rel="prefetch" href="/assets/acp-DOsXjFc7.webp"><link rel="prefetch" href="/assets/mcp-Cb1aMeoq.webp"><link rel="prefetch" href="/assets/settings_preview-0JLrRgHP.webp"><link rel="prefetch" href="/assets/upgrade-form-CwRHBuXB.webp"><link rel="prefetch" href="/assets/connectors-video-C9qY4syJ.svg"><link rel="prefetch" href="/assets/repos-video-D8kpu60k.svg"><link rel="prefetch" href="/assets/tour-cover-BYfeen6M.webp"><link rel="prefetch" href="/assets/templates-1S_8WeSK.webp"><link rel="prefetch" href="/assets/adam-e-y0WnB_.webp"><link rel="prefetch" href="/assets/alex-DcCuDHPg.webp"><link rel="prefetch" href="/assets/baris-C0ZrZ10g.webp"><link rel="prefetch" href="/assets/hamza-NKKOZz1I.webp"><link rel="prefetch" href="/assets/stefan-B08Ftbba.webp"><link rel="prefetch" href="/assets/flyte-Cj-xy_8I.svg"><link rel="prefetch" href="/assets/metaflow-weOkWNyT.svg"><link rel="prefetch" href="/assets/CodeSnippet-Bbx6fIb6.css"><link rel="prefetch" href="/assets/page-BYJfqgLN.js"><link rel="prefetch" href="/assets/page-Dif8CWyZ.js"><link rel="prefetch" href="/assets/page-DweqqCkF.js"><link rel="prefetch" href="/assets/page-B_0XkV48.js"><link rel="prefetch" href="/assets/page-BC27C_OI.js"><link rel="prefetch" href="/assets/SetPassword-Yn50ooBC.js"><link rel="prefetch" href="/assets/login-mutation-DNDVp_2H.js"><link rel="prefetch" href="/assets/page-C70wZtV2.js"><link rel="prefetch" href="/assets/page-BNxYrN0q.js"><link rel="prefetch" href="/assets/page-PxOWfKgF.js"><link rel="prefetch" href="/assets/not-found-Bmup4ctE.js"><link rel="prefetch" href="/assets/page-LyZ_l8vR.js"><link rel="prefetch" href="/assets/page-BrmJp1Wt.js"><link rel="prefetch" href="/assets/PasswordChecker-B0nadgh6.js"><link rel="prefetch" href="/assets/tick-circle-BEX_Tp4v.js"><link rel="prefetch" href="/assets/page-CltCNL0T.js"><link rel="prefetch" href="/assets/page-DlIi5ThM.js"><link rel="prefetch" href="/assets/page-D9Oh05fl.js"><link rel="prefetch" href="/assets/docker-BdA9vrnW.js"><link rel="prefetch" href="/assets/page-DN4BVIOL.js"><link rel="prefetch" href="/assets/Commands-BEGyld4c.js"><link rel="prefetch" href="/assets/page-PamGpk0j.js"><link rel="prefetch" href="/assets/code-snippets-CqONne41.js"><link rel="prefetch" href="/assets/page-IhckKFnD.js"><link rel="prefetch" href="/assets/SecretTooltip-CLzJIYW_.js"><link rel="prefetch" href="/assets/page-CWr96ZKN.js"><link rel="prefetch" href="/assets/update-server-settings-mutation-D9qYhfaN.js"><link rel="prefetch" href="/assets/page-DoW7YxTu.js"><link rel="prefetch" href="/assets/page-DyOJ_pq3.js"><link rel="prefetch" href="/assets/dates-3pMLCNrD.js"><link rel="prefetch" href="/assets/key-icon-aH-QIa5R.js"><link rel="prefetch" href="/assets/service-DH_oUqQj.js"><link rel="prefetch" href="/assets/page-Cc8ZEuj4.js"><link rel="prefetch" href="/assets/page-C2nU3Gxn.js"><link rel="prefetch" href="/assets/RunsBody-DxxtWVYz.js"><link rel="prefetch" href="/assets/RunSelector-CsruSB4i.js"><link rel="prefetch" href="/assets/delete-run-Byf9hTjA.js"><link rel="prefetch" href="/assets/DeleteAlertDialog-WkSIIgfy.js"><link rel="prefetch" href="/assets/Tabs-CNv-eTYM.js"><link rel="prefetch" href="/assets/all-pipeline-runs-query-DUti43aF.js"><link rel="prefetch" href="/assets/NestedCollapsible-aK5ojKoF.js"><link rel="prefetch" href="/assets/ExecutionStatus-G8mjIaeA.js"><link rel="prefetch" href="/assets/page-CaeI9ptC.js"><link rel="prefetch" href="/assets/StackList-U537qoYd.js"><link rel="prefetch" href="/assets/DialogItem-Bgroeg29.js"><link rel="prefetch" href="/assets/AlertDialogDropdownItem-B73Vs10T.js"><link rel="prefetch" href="/assets/CollapsibleCard-BzUHGZOU.js"><link rel="prefetch" href="/assets/CopyButton-DhW-mapu.js"><link rel="prefetch" href="/assets/refresh-BjOeWlEq.js"><link rel="prefetch" href="/assets/SearchField-D6tPxyqw.js"><link rel="prefetch" href="/assets/page-CXAbSyp9.js"><link rel="prefetch" href="/assets/code-browser-CUFUIHfp.js"><link rel="prefetch" href="/assets/page-CmlYj7Nl.js"><link rel="prefetch" href="/assets/page-B5Sr8pib.js"><link rel="prefetch" href="/assets/index-CyBKZcpO.js"><link rel="prefetch" href="/assets/index-v6gQjDEo.js"><link rel="prefetch" href="/assets/InlineAvatar-DqnZaBNq.js"><link rel="prefetch" href="/assets/DisplayDate-CDMUcQHS.js"><link rel="prefetch" href="/assets/index-Uu49AX48.js"><link rel="prefetch" href="/assets/page-Dth9X1Ih.js"><link rel="prefetch" href="/assets/Lock-CYYy18Mm.js"><link rel="prefetch" href="/assets/components-Br2ezRib.js"><link rel="prefetch" href="/assets/trash-arLUMWMS.js"><link rel="prefetch" href="/assets/dots-horizontal-otGBOSDJ.js"><link rel="prefetch" href="/assets/create-stack-Ch2WPs9U.js"><link rel="prefetch" href="/assets/page-Hn8q9iJZ.js"><link rel="prefetch" href="/assets/persist-vP0-Xl4f.js"><link rel="prefetch" href="/assets/Partials-CqZp5NMX.js"><link rel="prefetch" href="/assets/link-external-b9AXw_sW.js"><link rel="prefetch" href="/assets/logs-WMSM52RF.js"><link rel="prefetch" href="/assets/NumberBox-Dtp3J6g5.js"><link rel="prefetch" href="/assets/Infobox-Da6-76M2.js"><link rel="prefetch" href="/assets/WizardFooter-D6i-AP1K.js"><link rel="prefetch" href="/assets/ProviderRadio-mstdqzsS.js"><link rel="prefetch" href="/assets/persist-DeXRG61d.js"><link rel="prefetch" href="/assets/ComponentBadge-xyKiek1s.js"><link rel="prefetch" href="/assets/ProviderIcon-Bd7GUQ1_.js"><link rel="prefetch" href="/assets/sharedSchema-Bw1_Wa7l.js"><link rel="prefetch" href="/assets/index-CtdYkjUi.js"><link rel="prefetch" href="/assets/stack-detail-query-B_0R_fd6.js"><link rel="prefetch" href="/assets/layout-BtHBmE4w.js"><link rel="prefetch" href="/assets/page-CHRn1fQm.js"><link rel="prefetch" href="/assets/Error-CY5tlu17.js"><link rel="prefetch" href="/assets/page-ANYGfEUL.js"><link rel="prefetch" href="/assets/page--XLMzHrn.js"><link rel="prefetch" href="/assets/ProBadge-B4tRUYve.js"><link rel="prefetch" href="/assets/ProCta-CZuP29Qz.js"><link rel="prefetch" href="/assets/login-command-CkqxPtV3.js"><link rel="prefetch" href="/assets/CodeSnippet-DIJRT2NT.js"><link rel="prefetch" href="/assets/copy-C8XQA2Ug.js"><link rel="prefetch" href="/assets/zod-BwEbpOxH.js"><link rel="prefetch" href="/assets/index.esm-Dy6Z9Ung.js"><link rel="prefetch" href="/assets/check-DloQpStc.js"><link rel="prefetch" href="/assets/check-circle-jNbX5-sR.js"><link rel="prefetch" href="/assets/form-schemas-BZqKBPBF.js"><link rel="prefetch" href="/assets/EmptyState-BzdlCwp3.js"><link rel="prefetch" href="/assets/UsageReason-Bf2tzhv1.js"><link rel="prefetch" href="/assets/url-Dh93fvh0.js"><link rel="prefetch" href="/assets/gcp-CFtm4BA7.js"><link rel="prefetch" href="/assets/kubernetes-B2wmAJ1d.js"><link rel="prefetch" href="/assets/rocket-DjT2cDvG.js"><link rel="prefetch" href="/assets/UpdatePasswordSchemas-C16GW-kX.js"><link rel="prefetch" href="/assets/chevron-right-double-D7ojK9Co.js"><link rel="prefetch" href="/assets/plus-tf1V2hTJ.js"><link rel="prefetch" href="/assets/chevron-down-6JyMkfjR.js"><link rel="prefetch" href="/assets/Helpbox-Bb1ed--O.js"><link rel="prefetch" href="/assets/help-Cc9bBIJH.js"><link rel="prefetch" href="/assets/Tick-jEIevzVf.js"><link rel="prefetch" href="/assets/package-C6uypY4h.js"><link rel="prefetch" href="/assets/page-D6Ev5P8V.js"><link rel="prefetch" href="/assets/page-DGlm1RVc.js"><link rel="prefetch" href="/assets/404-Dfq64Boz.js"><link rel="prefetch" href="/assets/CsvVizualization-D8oazBiE.js"><link rel="prefetch" href="/assets/MarkdownVisualization-ylXaAxev.js"></head>
|
16
16
|
<body>
|
17
17
|
<div id="root"></div>
|
18
18
|
</body>
|
@@ -331,7 +331,7 @@ class LocalServerDeployer(metaclass=SingletonMetaClass):
|
|
331
331
|
provider = self.get_provider(server.config.provider)
|
332
332
|
|
333
333
|
logger.info(
|
334
|
-
f"Fetching logs from the local {provider_name} ZenML
|
334
|
+
f"Fetching logs from the local {provider_name} ZenML server..."
|
335
335
|
)
|
336
336
|
return provider.get_server_logs(
|
337
337
|
server.config, follow=follow, tail=tail
|
@@ -153,7 +153,9 @@ class RBACSqlZenStore(SqlZenStore):
|
|
153
153
|
|
154
154
|
if allow_creation:
|
155
155
|
created, model_version_response = (
|
156
|
-
super()._get_or_create_model_version(
|
156
|
+
super()._get_or_create_model_version(
|
157
|
+
model_version_request, producer_run_id=producer_run_id
|
158
|
+
)
|
157
159
|
)
|
158
160
|
else:
|
159
161
|
try:
|
@@ -88,8 +88,7 @@ def webhook(
|
|
88
88
|
f"'{event_source_id}'."
|
89
89
|
)
|
90
90
|
raise AuthorizationException( # TODO: Are we sure about this error message?
|
91
|
-
f"No webhook is registered at "
|
92
|
-
f"'{router.prefix}/{event_source_id}'"
|
91
|
+
f"No webhook is registered at '{router.prefix}/{event_source_id}'"
|
93
92
|
)
|
94
93
|
if not event_source.is_active:
|
95
94
|
raise WebhookInactiveError(f"Webhook {event_source_id} is inactive.")
|
@@ -725,8 +725,7 @@ class MigrationUtils(BaseModel):
|
|
725
725
|
self._copy_database(backup_engine, self.engine)
|
726
726
|
|
727
727
|
logger.debug(
|
728
|
-
f"Database restored from the `{backup_db_name}` "
|
729
|
-
"backup database."
|
728
|
+
f"Database restored from the `{backup_db_name}` backup database."
|
730
729
|
)
|
731
730
|
|
732
731
|
model_config = ConfigDict(arbitrary_types_allowed=True)
|
@@ -87,15 +87,13 @@ def _create_fk_constraint(
|
|
87
87
|
)
|
88
88
|
|
89
89
|
|
90
|
-
def _get_changes() ->
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
]
|
98
|
-
):
|
90
|
+
def _get_changes() -> Tuple[
|
91
|
+
List[str],
|
92
|
+
List[str],
|
93
|
+
List[str],
|
94
|
+
List[Tuple[str, str, str, str, str]],
|
95
|
+
List[Tuple[str, str, str, str, str]],
|
96
|
+
]:
|
99
97
|
"""Define the data that should be changed in the schema.
|
100
98
|
|
101
99
|
Returns:
|
@@ -2726,7 +2726,7 @@ class RestZenStore(BaseZenStore):
|
|
2726
2726
|
)
|
2727
2727
|
except (ValueError, AuthorizationException) as e:
|
2728
2728
|
logger.error(
|
2729
|
-
f
|
2729
|
+
f"Failed to fetch {resource_type or 'available'} "
|
2730
2730
|
f"resources from service connector {connector.name}/"
|
2731
2731
|
f"{connector.id}: {e}"
|
2732
2732
|
)
|
@@ -59,10 +59,8 @@ if TYPE_CHECKING:
|
|
59
59
|
from zenml.zen_stores.schemas.model_schemas import (
|
60
60
|
ModelVersionArtifactSchema,
|
61
61
|
)
|
62
|
-
from zenml.zen_stores.schemas.run_metadata_schemas import
|
63
|
-
|
64
|
-
)
|
65
|
-
from zenml.zen_stores.schemas.tag_schemas import TagResourceSchema
|
62
|
+
from zenml.zen_stores.schemas.run_metadata_schemas import RunMetadataSchema
|
63
|
+
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
66
64
|
|
67
65
|
|
68
66
|
class ArtifactSchema(NamedSchema, table=True):
|
@@ -82,11 +80,12 @@ class ArtifactSchema(NamedSchema, table=True):
|
|
82
80
|
back_populates="artifact",
|
83
81
|
sa_relationship_kwargs={"cascade": "delete"},
|
84
82
|
)
|
85
|
-
tags: List["
|
86
|
-
back_populates="artifact",
|
83
|
+
tags: List["TagSchema"] = Relationship(
|
87
84
|
sa_relationship_kwargs=dict(
|
88
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.ARTIFACT.value}', foreign(TagResourceSchema.resource_id)==ArtifactSchema.id)",
|
89
|
-
|
85
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.ARTIFACT.value}', foreign(TagResourceSchema.resource_id)==ArtifactSchema.id)",
|
86
|
+
secondary="tag_resource",
|
87
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
88
|
+
order_by="TagSchema.name",
|
90
89
|
overlaps="tags",
|
91
90
|
),
|
92
91
|
)
|
@@ -136,7 +135,7 @@ class ArtifactSchema(NamedSchema, table=True):
|
|
136
135
|
body = ArtifactResponseBody(
|
137
136
|
created=self.created,
|
138
137
|
updated=self.updated,
|
139
|
-
tags=[
|
138
|
+
tags=[tag.to_model() for tag in self.tags],
|
140
139
|
latest_version_name=latest_name,
|
141
140
|
latest_version_id=latest_id,
|
142
141
|
)
|
@@ -192,11 +191,12 @@ class ArtifactVersionSchema(BaseSchema, RunMetadataInterface, table=True):
|
|
192
191
|
uri: str = Field(sa_column=Column(TEXT, nullable=False))
|
193
192
|
materializer: str = Field(sa_column=Column(TEXT, nullable=False))
|
194
193
|
data_type: str = Field(sa_column=Column(TEXT, nullable=False))
|
195
|
-
tags: List["
|
196
|
-
back_populates="artifact_version",
|
194
|
+
tags: List["TagSchema"] = Relationship(
|
197
195
|
sa_relationship_kwargs=dict(
|
198
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.ARTIFACT_VERSION.value}', foreign(TagResourceSchema.resource_id)==ArtifactVersionSchema.id)",
|
199
|
-
|
196
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.ARTIFACT_VERSION.value}', foreign(TagResourceSchema.resource_id)==ArtifactVersionSchema.id)",
|
197
|
+
secondary="tag_resource",
|
198
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
199
|
+
order_by="TagSchema.name",
|
200
200
|
overlaps="tags",
|
201
201
|
),
|
202
202
|
)
|
@@ -244,12 +244,12 @@ class ArtifactVersionSchema(BaseSchema, RunMetadataInterface, table=True):
|
|
244
244
|
workspace: "WorkspaceSchema" = Relationship(
|
245
245
|
back_populates="artifact_versions"
|
246
246
|
)
|
247
|
-
|
248
|
-
back_populates="artifact_versions",
|
247
|
+
run_metadata: List["RunMetadataSchema"] = Relationship(
|
249
248
|
sa_relationship_kwargs=dict(
|
250
|
-
|
251
|
-
|
252
|
-
|
249
|
+
secondary="run_metadata_resource",
|
250
|
+
primaryjoin=f"and_(foreign(RunMetadataResourceSchema.resource_type)=='{MetadataResourceTypes.ARTIFACT_VERSION.value}', foreign(RunMetadataResourceSchema.resource_id)==ArtifactVersionSchema.id)",
|
251
|
+
secondaryjoin="RunMetadataSchema.id==foreign(RunMetadataResourceSchema.run_metadata_id)",
|
252
|
+
overlaps="run_metadata",
|
253
253
|
),
|
254
254
|
)
|
255
255
|
output_of_step_runs: List["StepRunOutputArtifactSchema"] = Relationship(
|
@@ -365,7 +365,7 @@ class ArtifactVersionSchema(BaseSchema, RunMetadataInterface, table=True):
|
|
365
365
|
data_type=data_type,
|
366
366
|
created=self.created,
|
367
367
|
updated=self.updated,
|
368
|
-
tags=[
|
368
|
+
tags=[tag.to_model() for tag in self.tags],
|
369
369
|
producer_pipeline_run_id=producer_pipeline_run_id,
|
370
370
|
save_type=ArtifactSaveType(self.save_type),
|
371
371
|
artifact_store_id=self.artifact_store_id,
|
@@ -56,11 +56,9 @@ from zenml.zen_stores.schemas.artifact_schemas import ArtifactVersionSchema
|
|
56
56
|
from zenml.zen_stores.schemas.base_schemas import BaseSchema, NamedSchema
|
57
57
|
from zenml.zen_stores.schemas.constants import MODEL_VERSION_TABLENAME
|
58
58
|
from zenml.zen_stores.schemas.pipeline_run_schemas import PipelineRunSchema
|
59
|
-
from zenml.zen_stores.schemas.run_metadata_schemas import
|
60
|
-
RunMetadataResourceSchema,
|
61
|
-
)
|
59
|
+
from zenml.zen_stores.schemas.run_metadata_schemas import RunMetadataSchema
|
62
60
|
from zenml.zen_stores.schemas.schema_utils import build_foreign_key_field
|
63
|
-
from zenml.zen_stores.schemas.tag_schemas import
|
61
|
+
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
64
62
|
from zenml.zen_stores.schemas.user_schemas import UserSchema
|
65
63
|
from zenml.zen_stores.schemas.utils import (
|
66
64
|
RunMetadataInterface,
|
@@ -114,11 +112,12 @@ class ModelSchema(NamedSchema, table=True):
|
|
114
112
|
save_models_to_registry: bool = Field(
|
115
113
|
sa_column=Column(BOOLEAN, nullable=False)
|
116
114
|
)
|
117
|
-
tags: List["
|
118
|
-
back_populates="model",
|
115
|
+
tags: List["TagSchema"] = Relationship(
|
119
116
|
sa_relationship_kwargs=dict(
|
120
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.MODEL.value}', foreign(TagResourceSchema.resource_id)==ModelSchema.id)",
|
121
|
-
|
117
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.MODEL.value}', foreign(TagResourceSchema.resource_id)==ModelSchema.id)",
|
118
|
+
secondary="tag_resource",
|
119
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
120
|
+
order_by="TagSchema.name",
|
122
121
|
overlaps="tags",
|
123
122
|
),
|
124
123
|
)
|
@@ -168,7 +167,7 @@ class ModelSchema(NamedSchema, table=True):
|
|
168
167
|
Returns:
|
169
168
|
The created `ModelResponse`.
|
170
169
|
"""
|
171
|
-
tags = [
|
170
|
+
tags = [tag.to_model() for tag in self.tags]
|
172
171
|
|
173
172
|
if self.model_versions:
|
174
173
|
version_numbers = [mv.number for mv in self.model_versions]
|
@@ -299,11 +298,12 @@ class ModelVersionSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
299
298
|
back_populates="model_version",
|
300
299
|
sa_relationship_kwargs={"cascade": "delete"},
|
301
300
|
)
|
302
|
-
tags: List["
|
303
|
-
back_populates="model_version",
|
301
|
+
tags: List["TagSchema"] = Relationship(
|
304
302
|
sa_relationship_kwargs=dict(
|
305
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.MODEL_VERSION.value}', foreign(TagResourceSchema.resource_id)==ModelVersionSchema.id)",
|
306
|
-
|
303
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.MODEL_VERSION.value}', foreign(TagResourceSchema.resource_id)==ModelVersionSchema.id)",
|
304
|
+
secondary="tag_resource",
|
305
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
306
|
+
order_by="TagSchema.name",
|
307
307
|
overlaps="tags",
|
308
308
|
),
|
309
309
|
)
|
@@ -316,12 +316,12 @@ class ModelVersionSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
316
316
|
description: str = Field(sa_column=Column(TEXT, nullable=True))
|
317
317
|
stage: str = Field(sa_column=Column(TEXT, nullable=True))
|
318
318
|
|
319
|
-
|
320
|
-
back_populates="model_versions",
|
319
|
+
run_metadata: List["RunMetadataSchema"] = Relationship(
|
321
320
|
sa_relationship_kwargs=dict(
|
322
|
-
|
323
|
-
|
324
|
-
|
321
|
+
secondary="run_metadata_resource",
|
322
|
+
primaryjoin=f"and_(foreign(RunMetadataResourceSchema.resource_type)=='{MetadataResourceTypes.MODEL_VERSION.value}', foreign(RunMetadataResourceSchema.resource_id)==ModelVersionSchema.id)",
|
323
|
+
secondaryjoin="RunMetadataSchema.id==foreign(RunMetadataResourceSchema.run_metadata_id)",
|
324
|
+
overlaps="run_metadata",
|
325
325
|
),
|
326
326
|
)
|
327
327
|
pipeline_runs: List["PipelineRunSchema"] = Relationship(
|
@@ -471,7 +471,7 @@ class ModelVersionSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
471
471
|
data_artifact_ids=data_artifact_ids,
|
472
472
|
deployment_artifact_ids=deployment_artifact_ids,
|
473
473
|
pipeline_run_ids=pipeline_run_ids,
|
474
|
-
tags=[
|
474
|
+
tags=[tag.to_model() for tag in self.tags],
|
475
475
|
)
|
476
476
|
|
477
477
|
return ModelVersionResponse(
|
@@ -58,12 +58,10 @@ if TYPE_CHECKING:
|
|
58
58
|
ModelVersionPipelineRunSchema,
|
59
59
|
ModelVersionSchema,
|
60
60
|
)
|
61
|
-
from zenml.zen_stores.schemas.run_metadata_schemas import
|
62
|
-
RunMetadataResourceSchema,
|
63
|
-
)
|
61
|
+
from zenml.zen_stores.schemas.run_metadata_schemas import RunMetadataSchema
|
64
62
|
from zenml.zen_stores.schemas.service_schemas import ServiceSchema
|
65
63
|
from zenml.zen_stores.schemas.step_run_schemas import StepRunSchema
|
66
|
-
from zenml.zen_stores.schemas.tag_schemas import
|
64
|
+
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
67
65
|
|
68
66
|
|
69
67
|
class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
@@ -140,12 +138,12 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
140
138
|
)
|
141
139
|
workspace: "WorkspaceSchema" = Relationship(back_populates="runs")
|
142
140
|
user: Optional["UserSchema"] = Relationship(back_populates="runs")
|
143
|
-
|
144
|
-
back_populates="pipeline_runs",
|
141
|
+
run_metadata: List["RunMetadataSchema"] = Relationship(
|
145
142
|
sa_relationship_kwargs=dict(
|
146
|
-
|
147
|
-
|
148
|
-
|
143
|
+
secondary="run_metadata_resource",
|
144
|
+
primaryjoin=f"and_(foreign(RunMetadataResourceSchema.resource_type)=='{MetadataResourceTypes.PIPELINE_RUN.value}', foreign(RunMetadataResourceSchema.resource_id)==PipelineRunSchema.id)",
|
145
|
+
secondaryjoin="RunMetadataSchema.id==foreign(RunMetadataResourceSchema.run_metadata_id)",
|
146
|
+
overlaps="run_metadata",
|
149
147
|
),
|
150
148
|
)
|
151
149
|
logs: Optional["LogsSchema"] = Relationship(
|
@@ -215,10 +213,12 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
215
213
|
services: List["ServiceSchema"] = Relationship(
|
216
214
|
back_populates="pipeline_run",
|
217
215
|
)
|
218
|
-
tags: List["
|
216
|
+
tags: List["TagSchema"] = Relationship(
|
219
217
|
sa_relationship_kwargs=dict(
|
220
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.PIPELINE_RUN.value}', foreign(TagResourceSchema.resource_id)==PipelineRunSchema.id)",
|
221
|
-
|
218
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.PIPELINE_RUN.value}', foreign(TagResourceSchema.resource_id)==PipelineRunSchema.id)",
|
219
|
+
secondary="tag_resource",
|
220
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
221
|
+
order_by="TagSchema.name",
|
222
222
|
overlaps="tags",
|
223
223
|
),
|
224
224
|
)
|
@@ -291,12 +291,6 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
291
291
|
Raises:
|
292
292
|
RuntimeError: if the model creation fails.
|
293
293
|
"""
|
294
|
-
orchestrator_environment = (
|
295
|
-
json.loads(self.orchestrator_environment)
|
296
|
-
if self.orchestrator_environment
|
297
|
-
else {}
|
298
|
-
)
|
299
|
-
|
300
294
|
if self.deployment is not None:
|
301
295
|
deployment = self.deployment.to_model(include_metadata=True)
|
302
296
|
|
@@ -377,6 +371,11 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
377
371
|
# in the response -> We need to reset the metadata here
|
378
372
|
step.metadata = None
|
379
373
|
|
374
|
+
orchestrator_environment = (
|
375
|
+
json.loads(self.orchestrator_environment)
|
376
|
+
if self.orchestrator_environment
|
377
|
+
else {}
|
378
|
+
)
|
380
379
|
metadata = PipelineRunResponseMetadata(
|
381
380
|
workspace=self.workspace.to_model(),
|
382
381
|
run_metadata=self.fetch_metadata(),
|
@@ -405,7 +404,7 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
405
404
|
|
406
405
|
resources = PipelineRunResponseResources(
|
407
406
|
model_version=model_version,
|
408
|
-
tags=[
|
407
|
+
tags=[tag.to_model() for tag in self.tags],
|
409
408
|
)
|
410
409
|
|
411
410
|
return PipelineRunResponse(
|
@@ -43,7 +43,7 @@ if TYPE_CHECKING:
|
|
43
43
|
)
|
44
44
|
from zenml.zen_stores.schemas.pipeline_run_schemas import PipelineRunSchema
|
45
45
|
from zenml.zen_stores.schemas.schedule_schema import ScheduleSchema
|
46
|
-
from zenml.zen_stores.schemas.tag_schemas import
|
46
|
+
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
47
47
|
|
48
48
|
|
49
49
|
class PipelineSchema(NamedSchema, table=True):
|
@@ -95,10 +95,12 @@ class PipelineSchema(NamedSchema, table=True):
|
|
95
95
|
deployments: List["PipelineDeploymentSchema"] = Relationship(
|
96
96
|
back_populates="pipeline",
|
97
97
|
)
|
98
|
-
tags: List["
|
98
|
+
tags: List["TagSchema"] = Relationship(
|
99
99
|
sa_relationship_kwargs=dict(
|
100
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.PIPELINE.value}', foreign(TagResourceSchema.resource_id)==PipelineSchema.id)",
|
101
|
-
|
100
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.PIPELINE.value}', foreign(TagResourceSchema.resource_id)==PipelineSchema.id)",
|
101
|
+
secondary="tag_resource",
|
102
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
103
|
+
order_by="TagSchema.name",
|
102
104
|
overlaps="tags",
|
103
105
|
),
|
104
106
|
)
|
@@ -162,7 +164,7 @@ class PipelineSchema(NamedSchema, table=True):
|
|
162
164
|
latest_run_user=latest_run_user.to_model()
|
163
165
|
if latest_run_user
|
164
166
|
else None,
|
165
|
-
tags=[
|
167
|
+
tags=[tag.to_model() for tag in self.tags],
|
166
168
|
)
|
167
169
|
|
168
170
|
return PipelineResponse(
|
@@ -13,13 +13,12 @@
|
|
13
13
|
# permissions and limitations under the License.
|
14
14
|
"""SQLModel implementation of pipeline run metadata tables."""
|
15
15
|
|
16
|
-
from typing import
|
16
|
+
from typing import Optional
|
17
17
|
from uuid import UUID, uuid4
|
18
18
|
|
19
19
|
from sqlalchemy import TEXT, VARCHAR, Column
|
20
20
|
from sqlmodel import Field, Relationship, SQLModel
|
21
21
|
|
22
|
-
from zenml.enums import MetadataResourceTypes
|
23
22
|
from zenml.zen_stores.schemas.base_schemas import BaseSchema
|
24
23
|
from zenml.zen_stores.schemas.component_schemas import StackComponentSchema
|
25
24
|
from zenml.zen_stores.schemas.schema_utils import build_foreign_key_field
|
@@ -27,22 +26,12 @@ from zenml.zen_stores.schemas.step_run_schemas import StepRunSchema
|
|
27
26
|
from zenml.zen_stores.schemas.user_schemas import UserSchema
|
28
27
|
from zenml.zen_stores.schemas.workspace_schemas import WorkspaceSchema
|
29
28
|
|
30
|
-
if TYPE_CHECKING:
|
31
|
-
from zenml.zen_stores.schemas.artifact_schemas import ArtifactVersionSchema
|
32
|
-
from zenml.zen_stores.schemas.model_schemas import ModelVersionSchema
|
33
|
-
from zenml.zen_stores.schemas.pipeline_run_schemas import PipelineRunSchema
|
34
|
-
|
35
29
|
|
36
30
|
class RunMetadataSchema(BaseSchema, table=True):
|
37
31
|
"""SQL Model for run metadata."""
|
38
32
|
|
39
33
|
__tablename__ = "run_metadata"
|
40
34
|
|
41
|
-
# Relationship to link to resources
|
42
|
-
resources: List["RunMetadataResourceSchema"] = Relationship(
|
43
|
-
back_populates="run_metadata",
|
44
|
-
sa_relationship_kwargs={"cascade": "delete"},
|
45
|
-
)
|
46
35
|
stack_component_id: Optional[UUID] = build_foreign_key_field(
|
47
36
|
source=__tablename__,
|
48
37
|
target=StackComponentSchema.__tablename__,
|
@@ -105,36 +94,3 @@ class RunMetadataResourceSchema(SQLModel, table=True):
|
|
105
94
|
ondelete="CASCADE",
|
106
95
|
nullable=False,
|
107
96
|
)
|
108
|
-
|
109
|
-
# Relationship back to the base metadata table
|
110
|
-
run_metadata: RunMetadataSchema = Relationship(back_populates="resources")
|
111
|
-
|
112
|
-
# Relationship to link specific resource types
|
113
|
-
pipeline_runs: List["PipelineRunSchema"] = Relationship(
|
114
|
-
back_populates="run_metadata_resources",
|
115
|
-
sa_relationship_kwargs=dict(
|
116
|
-
primaryjoin=f"and_(RunMetadataResourceSchema.resource_type=='{MetadataResourceTypes.PIPELINE_RUN.value}', foreign(RunMetadataResourceSchema.resource_id)==PipelineRunSchema.id)",
|
117
|
-
overlaps="run_metadata_resources,step_runs,artifact_versions,model_versions",
|
118
|
-
),
|
119
|
-
)
|
120
|
-
step_runs: List["StepRunSchema"] = Relationship(
|
121
|
-
back_populates="run_metadata_resources",
|
122
|
-
sa_relationship_kwargs=dict(
|
123
|
-
primaryjoin=f"and_(RunMetadataResourceSchema.resource_type=='{MetadataResourceTypes.STEP_RUN.value}', foreign(RunMetadataResourceSchema.resource_id)==StepRunSchema.id)",
|
124
|
-
overlaps="run_metadata_resources,pipeline_runs,artifact_versions,model_versions",
|
125
|
-
),
|
126
|
-
)
|
127
|
-
artifact_versions: List["ArtifactVersionSchema"] = Relationship(
|
128
|
-
back_populates="run_metadata_resources",
|
129
|
-
sa_relationship_kwargs=dict(
|
130
|
-
primaryjoin=f"and_(RunMetadataResourceSchema.resource_type=='{MetadataResourceTypes.ARTIFACT_VERSION.value}', foreign(RunMetadataResourceSchema.resource_id)==ArtifactVersionSchema.id)",
|
131
|
-
overlaps="run_metadata_resources,pipeline_runs,step_runs,model_versions",
|
132
|
-
),
|
133
|
-
)
|
134
|
-
model_versions: List["ModelVersionSchema"] = Relationship(
|
135
|
-
back_populates="run_metadata_resources",
|
136
|
-
sa_relationship_kwargs=dict(
|
137
|
-
primaryjoin=f"and_(RunMetadataResourceSchema.resource_type=='{MetadataResourceTypes.MODEL_VERSION.value}', foreign(RunMetadataResourceSchema.resource_id)==ModelVersionSchema.id)",
|
138
|
-
overlaps="run_metadata_resources,pipeline_runs,step_runs,artifact_versions",
|
139
|
-
),
|
140
|
-
)
|
@@ -41,7 +41,7 @@ if TYPE_CHECKING:
|
|
41
41
|
PipelineDeploymentSchema,
|
42
42
|
)
|
43
43
|
from zenml.zen_stores.schemas.pipeline_run_schemas import PipelineRunSchema
|
44
|
-
from zenml.zen_stores.schemas.tag_schemas import
|
44
|
+
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
45
45
|
|
46
46
|
|
47
47
|
class RunTemplateSchema(BaseSchema, table=True):
|
@@ -110,10 +110,12 @@ class RunTemplateSchema(BaseSchema, table=True):
|
|
110
110
|
}
|
111
111
|
)
|
112
112
|
|
113
|
-
tags: List["
|
113
|
+
tags: List["TagSchema"] = Relationship(
|
114
114
|
sa_relationship_kwargs=dict(
|
115
|
-
primaryjoin=f"and_(TagResourceSchema.resource_type=='{TaggableResourceTypes.RUN_TEMPLATE.value}', foreign(TagResourceSchema.resource_id)==RunTemplateSchema.id)",
|
116
|
-
|
115
|
+
primaryjoin=f"and_(foreign(TagResourceSchema.resource_type)=='{TaggableResourceTypes.RUN_TEMPLATE.value}', foreign(TagResourceSchema.resource_id)==RunTemplateSchema.id)",
|
116
|
+
secondary="tag_resource",
|
117
|
+
secondaryjoin="TagSchema.id == foreign(TagResourceSchema.tag_id)",
|
118
|
+
order_by="TagSchema.name",
|
117
119
|
overlaps="tags",
|
118
120
|
),
|
119
121
|
)
|
@@ -253,7 +255,7 @@ class RunTemplateSchema(BaseSchema, table=True):
|
|
253
255
|
pipeline=pipeline,
|
254
256
|
build=build,
|
255
257
|
code_reference=code_reference,
|
256
|
-
tags=[
|
258
|
+
tags=[tag.to_model() for tag in self.tags],
|
257
259
|
)
|
258
260
|
|
259
261
|
return RunTemplateResponse(
|
@@ -58,9 +58,7 @@ if TYPE_CHECKING:
|
|
58
58
|
from zenml.zen_stores.schemas.artifact_schemas import ArtifactVersionSchema
|
59
59
|
from zenml.zen_stores.schemas.logs_schemas import LogsSchema
|
60
60
|
from zenml.zen_stores.schemas.model_schemas import ModelVersionSchema
|
61
|
-
from zenml.zen_stores.schemas.run_metadata_schemas import
|
62
|
-
RunMetadataResourceSchema,
|
63
|
-
)
|
61
|
+
from zenml.zen_stores.schemas.run_metadata_schemas import RunMetadataSchema
|
64
62
|
|
65
63
|
|
66
64
|
class StepRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
@@ -150,12 +148,12 @@ class StepRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
150
148
|
deployment: Optional["PipelineDeploymentSchema"] = Relationship(
|
151
149
|
back_populates="step_runs"
|
152
150
|
)
|
153
|
-
|
154
|
-
back_populates="step_runs",
|
151
|
+
run_metadata: List["RunMetadataSchema"] = Relationship(
|
155
152
|
sa_relationship_kwargs=dict(
|
156
|
-
|
157
|
-
|
158
|
-
|
153
|
+
secondary="run_metadata_resource",
|
154
|
+
primaryjoin=f"and_(foreign(RunMetadataResourceSchema.resource_type)=='{MetadataResourceTypes.STEP_RUN.value}', foreign(RunMetadataResourceSchema.resource_id)==StepRunSchema.id)",
|
155
|
+
secondaryjoin="RunMetadataSchema.id==foreign(RunMetadataResourceSchema.run_metadata_id)",
|
156
|
+
overlaps="run_metadata",
|
159
157
|
),
|
160
158
|
)
|
161
159
|
input_artifacts: List["StepRunInputArtifactSchema"] = Relationship(
|