zenml-nightly 0.81.0.dev20250429__py3-none-any.whl → 0.82.0.dev20250503__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/model.py +2 -7
- zenml/client.py +17 -2
- zenml/config/docker_settings.py +1 -1
- zenml/config/resource_settings.py +1 -1
- zenml/config/strict_base_model.py +1 -1
- zenml/environment.py +36 -4
- zenml/integrations/azure/__init__.py +3 -0
- zenml/integrations/evidently/metrics.py +1 -1
- zenml/integrations/evidently/tests.py +1 -1
- zenml/integrations/kubeflow/orchestrators/kubeflow_orchestrator.py +1 -1
- zenml/integrations/pandas/materializers/pandas_materializer.py +118 -22
- zenml/integrations/tekton/orchestrators/tekton_orchestrator.py +1 -1
- zenml/models/v2/core/model_version.py +28 -33
- zenml/models/v2/core/pipeline_deployment.py +4 -4
- zenml/models/v2/core/pipeline_run.py +5 -12
- zenml/models/v2/core/user.py +1 -1
- zenml/secret/base_secret.py +1 -1
- zenml/stack/stack_component.py +1 -1
- zenml/stack/utils.py +1 -1
- zenml/zen_server/dashboard/assets/{404-o3nB5iwI.js → 404-D4aYbspS.js} +1 -1
- zenml/zen_server/dashboard/assets/{@react-router-BGgzhn5D.js → @react-router-CNP6g_RL.js} +1 -1
- zenml/zen_server/dashboard/assets/{AlertDialogDropdownItem-C_qWs-4u.js → AlertDialogDropdownItem-CRZjthRL.js} +1 -1
- zenml/zen_server/dashboard/assets/{CodeSnippet-nRnOvbOJ.js → CodeSnippet-Di-loaZu.js} +1 -1
- zenml/zen_server/dashboard/assets/CollapsibleCard-Dr5zb5T5.js +1 -0
- zenml/zen_server/dashboard/assets/{Commands-BwBzFj-5.js → Commands-CD9Y7FOE.js} +1 -1
- zenml/zen_server/dashboard/assets/{ComponentBadge-CMx2DbsV.js → ComponentBadge-BgGnzcLu.js} +1 -1
- zenml/zen_server/dashboard/assets/{ComponentIcon-CSxdApv8.js → ComponentIcon-B_7Y_oV-.js} +1 -1
- zenml/zen_server/dashboard/assets/{CsvVizualization-lxB2iyEh.js → CsvVizualization-CDrjL6bW.js} +1 -1
- zenml/zen_server/dashboard/assets/{DeleteAlertDialog-Bp0o-UXZ.js → DeleteAlertDialog-9RTDnEx3.js} +1 -1
- zenml/zen_server/dashboard/assets/DialogItem-0fWTH7ki.js +1 -0
- zenml/zen_server/dashboard/assets/{Error-DRhVeVHQ.js → Error-vBjUYjb-.js} +1 -1
- zenml/zen_server/dashboard/assets/{ExecutionStatus-HnZXi9bW.js → ExecutionStatus-B-ysY113.js} +1 -1
- zenml/zen_server/dashboard/assets/{Helpbox-Dsr3ZYcL.js → Helpbox-Dt3q7NGd.js} +1 -1
- zenml/zen_server/dashboard/assets/{Infobox-C4Op55B8.js → Infobox-Bai0JtFs.js} +1 -1
- zenml/zen_server/dashboard/assets/{InlineAvatar-CrAwe7Pl.js → InlineAvatar-Cpj0lVRQ.js} +1 -1
- zenml/zen_server/dashboard/assets/NestedCollapsible-DbhKdWx-.js +1 -0
- zenml/zen_server/dashboard/assets/{Partials-DjTM0Oe-.js → Partials-BNBtCjuT.js} +1 -1
- zenml/zen_server/dashboard/assets/ProBadge-3vtouJQf.js +1 -0
- zenml/zen_server/dashboard/assets/{ProCta-BYSSivgY.js → ProCta-BoTLdAdV.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProviderIcon-B8W7AGNk.js → ProviderIcon-kkODO9tx.js} +1 -1
- zenml/zen_server/dashboard/assets/{ProviderRadio-BWFJPEY2.js → ProviderRadio-26EB5tY-.js} +1 -1
- zenml/zen_server/dashboard/assets/RunSelector-j0C_TPVp.js +1 -0
- zenml/zen_server/dashboard/assets/RunsBody-DexNouV4.js +1 -0
- zenml/zen_server/dashboard/assets/SearchField-DMCywawn.js +1 -0
- zenml/zen_server/dashboard/assets/{SecretTooltip-CCn9HfEh.js → SecretTooltip-LLGP7AIC.js} +1 -1
- zenml/zen_server/dashboard/assets/{SetPassword-BDFVwnNB.js → SetPassword-CBHW-Su8.js} +1 -1
- zenml/zen_server/dashboard/assets/StackList-S-9I1R4n.js +1 -0
- zenml/zen_server/dashboard/assets/Tabs-C2ufJX4t.js +1 -0
- zenml/zen_server/dashboard/assets/Tick-ay3Bgtro.js +1 -0
- zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-3gg2tC-H.js → UpdatePasswordSchemas-p3RX0P-Q.js} +1 -1
- zenml/zen_server/dashboard/assets/{UsageReason-DOMAzO02.js → UsageReason-C8sD2bOU.js} +1 -1
- zenml/zen_server/dashboard/assets/{Wizard-BSH_lIfi.js → Wizard-DIllc07n.js} +1 -1
- zenml/zen_server/dashboard/assets/{WizardFooter-CnM-50jL.js → WizardFooter-dNDpuero.js} +1 -1
- zenml/zen_server/dashboard/assets/{all-pipeline-runs-query-D9XfZpmV.js → all-pipeline-runs-query-BUT1PiTp.js} +1 -1
- zenml/zen_server/dashboard/assets/{configuration-form-Ci_QlfZC.js → configuration-form-DBZSb0FV.js} +1 -1
- zenml/zen_server/dashboard/assets/{create-stack-CoQ5SEJL.js → create-stack-BXLyjE58.js} +1 -1
- zenml/zen_server/dashboard/assets/{delete-run-B5xUZwdP.js → delete-run-DzcYxUnd.js} +1 -1
- zenml/zen_server/dashboard/assets/dots-horizontal-BGRJCPCs.js +1 -0
- zenml/zen_server/dashboard/assets/{flavor-select-DOLAl-S4.js → flavor-select-BTEwByv6.js} +1 -1
- zenml/zen_server/dashboard/assets/{form-schemas-BaEJ1z87.js → form-schemas-BJN_25Ua.js} +1 -1
- zenml/zen_server/dashboard/assets/{index-e8udi7QT.js → index-8uhUi12k.js} +1 -1
- zenml/zen_server/dashboard/assets/{index-hsSXyS3H.js → index-BygJE88j.js} +8 -8
- zenml/zen_server/dashboard/assets/{index-ojAuWXMf.js → index-D9-ukAem.js} +1 -1
- zenml/zen_server/dashboard/assets/index-DmTFrHJm.css +1 -0
- zenml/zen_server/dashboard/assets/{index-BoWZ9rXk.js → index-wYtmKLnQ.js} +1 -1
- zenml/zen_server/dashboard/assets/{login-mutation-CwraNa5G.js → login-mutation-DywLqguW.js} +1 -1
- zenml/zen_server/dashboard/assets/{not-found-BuK1QrF2.js → not-found-BOoklIG4.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-0AIX3VK8.js → page--hSXKqyG.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CIDo1Ajk.js → page-2BsNK_sZ.js} +1 -1
- zenml/zen_server/dashboard/assets/page-4nVakAEl.js +1 -0
- zenml/zen_server/dashboard/assets/{page-CjRoKEQs.js → page-8AzB83Py.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-BQVPbNps.js → page-B0r9dBEU.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-hVng6ANV.js → page-B1Uq1S1Q.js} +1 -1
- zenml/zen_server/dashboard/assets/page-B3DscprQ.js +1 -0
- zenml/zen_server/dashboard/assets/{page-KRP_w5zH.js → page-B7Aj2XbV.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CZgeF_wQ.js → page-BE8jdyaM.js} +1 -1
- zenml/zen_server/dashboard/assets/page-BIYqUwTI.js +1 -0
- zenml/zen_server/dashboard/assets/page-BTzhAVEn.js +1 -0
- zenml/zen_server/dashboard/assets/{page-_Zt6UwiG.js → page-ByXQN8A-.js} +1 -1
- zenml/zen_server/dashboard/assets/page-CI4a9CXs.js +1 -0
- zenml/zen_server/dashboard/assets/page-CPLlVRXx.js +6 -0
- zenml/zen_server/dashboard/assets/page-CSQOpvvK.js +3 -0
- zenml/zen_server/dashboard/assets/{page-DwIlrsF0.js → page-Ccnk_5ji.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-C-6XUKSp.js → page-Ci_n_x3a.js} +1 -1
- zenml/zen_server/dashboard/assets/page-D-ry_oLs.js +1 -0
- zenml/zen_server/dashboard/assets/{page-DbEn9V9E.js → page-D2TtSfnb.js} +1 -1
- zenml/zen_server/dashboard/assets/page-DHnkTzqs.js +1 -0
- zenml/zen_server/dashboard/assets/{page-B5clbTo4.js → page-DP2Ed-2m.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-C30HZCTR.js → page-D_5R6E7b.js} +1 -1
- zenml/zen_server/dashboard/assets/page-DfTsntQI.js +1 -0
- zenml/zen_server/dashboard/assets/page-DkY7AIhj.js +1 -0
- zenml/zen_server/dashboard/assets/page-DmteSSj6.js +1 -0
- zenml/zen_server/dashboard/assets/page-Dt3wHeWX.js +1 -0
- zenml/zen_server/dashboard/assets/page-EXvws1ss.js +1 -0
- zenml/zen_server/dashboard/assets/{page-Czj8fu8q.js → page-K9yjbnd4.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DHDeVaMO.js → page-RV8wpZ_4.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-DLVtrRa5.js → page-bUVHi7DE.js} +1 -1
- zenml/zen_server/dashboard/assets/page-cOEvFs_l.js +1 -0
- zenml/zen_server/dashboard/assets/page-kzSGEVUs.js +1 -0
- zenml/zen_server/dashboard/assets/{page-C7buw8xJ.js → page-uDGvpa5g.js} +2 -2
- zenml/zen_server/dashboard/assets/{page-BbygQpf-.js → page-uN0n_DE2.js} +1 -1
- zenml/zen_server/dashboard/assets/{page-CgJcperk.js → page-xa1EAPcI.js} +1 -1
- zenml/zen_server/dashboard/assets/{persist-xOAq24Bm.js → persist-CEeDYHW5.js} +1 -1
- zenml/zen_server/dashboard/assets/{persist-DLvsEXh0.js → persist-SSTTV5q0.js} +1 -1
- zenml/zen_server/dashboard/assets/{service-MHyqhRgp.js → service-BRoAA1Kq.js} +1 -1
- zenml/zen_server/dashboard/assets/sharedSchema-BACERDat.js +14 -0
- zenml/zen_server/dashboard/assets/{stack-detail-query-C1GoxBeK.js → stack-detail-query-ihiJr6nq.js} +1 -1
- zenml/zen_server/dashboard/assets/{update-server-settings-mutation-DduehrZn.js → update-server-settings-mutation-CK6COmw9.js} +1 -1
- zenml/zen_server/dashboard/index.html +4 -4
- zenml/zen_server/deploy/daemon/daemon_zen_server.py +1 -1
- zenml/zen_server/deploy/docker/docker_zen_server.py +1 -1
- zenml/zen_server/routers/model_versions_endpoints.py +10 -19
- zenml/zen_server/routers/runs_endpoints.py +7 -1
- zenml/zen_stores/migrations/versions/0.82.0_release.py +23 -0
- zenml/zen_stores/schemas/pipeline_deployment_schemas.py +20 -3
- zenml/zen_stores/schemas/pipeline_run_schemas.py +21 -1
- zenml/zen_stores/secrets_stores/hashicorp_secrets_store.py +1 -1
- zenml/zen_stores/secrets_stores/sql_secrets_store.py +1 -1
- zenml/zen_stores/sql_zen_store.py +10 -34
- {zenml_nightly-0.81.0.dev20250429.dist-info → zenml_nightly-0.82.0.dev20250503.dist-info}/METADATA +2 -2
- {zenml_nightly-0.81.0.dev20250429.dist-info → zenml_nightly-0.82.0.dev20250503.dist-info}/RECORD +125 -123
- zenml/zen_server/dashboard/assets/CollapsibleCard-9sSz7n1R.js +0 -1
- zenml/zen_server/dashboard/assets/DialogItem-DHw2ihTx.js +0 -1
- zenml/zen_server/dashboard/assets/NestedCollapsible-Ce1bmT8N.js +0 -1
- zenml/zen_server/dashboard/assets/ProBadge-CDEqgzh8.js +0 -1
- zenml/zen_server/dashboard/assets/RunSelector-DoL_gMHJ.js +0 -1
- zenml/zen_server/dashboard/assets/RunsBody-B6mBjv-_.js +0 -1
- zenml/zen_server/dashboard/assets/SearchField-DHl5flXv.js +0 -1
- zenml/zen_server/dashboard/assets/StackList-dhdUtky3.js +0 -1
- zenml/zen_server/dashboard/assets/Tabs-BuZG8ft1.js +0 -1
- zenml/zen_server/dashboard/assets/Tick-C4gtED35.js +0 -1
- zenml/zen_server/dashboard/assets/index-6mLFgFwe.css +0 -1
- zenml/zen_server/dashboard/assets/page-3lW9eIer.js +0 -1
- zenml/zen_server/dashboard/assets/page-9PzQok8O.js +0 -1
- zenml/zen_server/dashboard/assets/page-BEibNYiA.js +0 -6
- zenml/zen_server/dashboard/assets/page-BOE2XBFy.js +0 -1
- zenml/zen_server/dashboard/assets/page-Bki79xdd.js +0 -1
- zenml/zen_server/dashboard/assets/page-BnKwJnOb.js +0 -1
- zenml/zen_server/dashboard/assets/page-CBGeo-7W.js +0 -2
- zenml/zen_server/dashboard/assets/page-Co-FJ5ds.js +0 -1
- zenml/zen_server/dashboard/assets/page-Cu8vuohQ.js +0 -1
- zenml/zen_server/dashboard/assets/page-D0QcEBi1.js +0 -1
- zenml/zen_server/dashboard/assets/page-DKY_U5Sz.js +0 -1
- zenml/zen_server/dashboard/assets/page-DQHU5o_C.js +0 -1
- zenml/zen_server/dashboard/assets/page-DpY1koQY.js +0 -1
- zenml/zen_server/dashboard/assets/page-DrS4WOup.js +0 -1
- zenml/zen_server/dashboard/assets/page-HIAPXq4w.js +0 -1
- zenml/zen_server/dashboard/assets/page-Jw2QAdxa.js +0 -1
- zenml/zen_server/dashboard/assets/sharedSchema-CQA5lnlU.js +0 -14
- {zenml_nightly-0.81.0.dev20250429.dist-info → zenml_nightly-0.82.0.dev20250503.dist-info}/LICENSE +0 -0
- {zenml_nightly-0.81.0.dev20250429.dist-info → zenml_nightly-0.82.0.dev20250503.dist-info}/WHEEL +0 -0
- {zenml_nightly-0.81.0.dev20250429.dist-info → zenml_nightly-0.82.0.dev20250503.dist-info}/entry_points.txt +0 -0
@@ -1 +1 @@
|
|
1
|
-
import{r as l,j as e}from"./@radix-C7hRs6Kx.js";import{u as d,S as h,a as j,b as y}from"./form-schemas-
|
1
|
+
import{r as l,j as e}from"./@radix-C7hRs6Kx.js";import{u as d,S as h,a as j,b as y}from"./form-schemas-BJN_25Ua.js";import{E as w}from"./EmptyState-M1jafpg6.js";import{A,I as U,P as b,U as P,S as g}from"./UsageReason-C8sD2bOU.js";import{d as _}from"./@react-router-CNP6g_RL.js";import{j as F,o as C,F as E,p as N,e as k,f as H,i as I}from"./index-BygJE88j.js";import{b as M}from"./@tanstack-CSxjHCME.js";import{u as D}from"./login-mutation-DywLqguW.js";import{S as R}from"./SetPassword-CBHW-Su8.js";import"./check-circle-mvyzYvIW.js";import"./UpdatePasswordSchemas-p3RX0P-Q.js";import"./zod-C0xYeTvL.js";import"./index.esm-D7jFlf5N.js";import"./gcp-CHNvgEss.js";import"./kubernetes-D6OUjwSK.js";import"./rocket-Cf-B-XOR.js";import"./@reactflow-CQi1Z1Wq.js";import"./PasswordChecker-lYTOtNom.js";const S=l.createContext(null);function T({children:t,initialUser:r}){const[a,s]=l.useState(r||{});return e.jsx(S.Provider,{value:{newUser:a,setNewUser:s},children:t})}function p(){const t=l.useContext(S);if(t===null)throw new Error("useActivationContext must be used within an ActivationProvider");return t}function L(){const{setSurveyStep:t}=d(),{setNewUser:r,newUser:a}=p();function s({fullName:n,getUpdates:o,email:u}){r(c=>({...c,...u?{email:u}:{email:null},full_name:n,email_opted_in:o})),t(c=>c+1)}return e.jsx(A,{email:a.email,fullName:a.full_name,submitHandler:s})}async function z({userId:t,body:r}){const a=C(N.users.activate(t)),s=await F(a,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!s.ok){const n=await s.json().then(o=>Array.isArray(o.detail)?o.detail[1]:o.detail).catch(()=>"Failed to update activate user");throw new E({status:s.status,statusText:s.statusText,message:n})}return s.json()}function J(t){return M({mutationFn:async r=>z(r),...t})}function O({userId:t,setUsername:r}){const{newUser:a}=p(),{setAuthState:s}=k(),{setSurveyStep:n}=d(),{mutate:o}=D({onSuccess:()=>{s("true"),n(i=>i+1)}}),{toast:u}=H(),{mutate:c}=J({onSuccess:async i=>{r(i.name),o({username:i.name,password:a.password??void 0})},onError:i=>{i instanceof Error&&u({status:"error",emphasis:"subtle",icon:e.jsx(I,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:i.message,rounded:!0})}});function m({other:i,providers:f,otherVal:x}){const v={infra_providers:i?[...f,x]:f,finished_onboarding_survey:!0};c({userId:t,body:{...a,user_metadata:{...a.user_metadata,...v}}})}return e.jsx(U,{submitHandler:m})}function W(){const{setSurveyStep:t}=d(),{setNewUser:r}=p();function a({newPassword:s}){r(n=>({...n,password:s})),t(n=>n+1)}return e.jsx(R,{submitHandler:a})}function Y(){const{setSurveyStep:t}=d(),{setNewUser:r}=p();function a({primaryUse:s}){const n={primary_use:s};r(o=>({...o,user_metadata:{...o.user_metadata,...n}})),t(o=>o+1)}return e.jsx(b,{submitHandler:a})}function Z(){const{setSurveyStep:t}=d(),{setNewUser:r}=p();function a({usageReason:s,comparison_tools:n,otherTool:o,otherToolVal:u}){const c={usage_reason:s,...!!n&&{comparing_tools:o&&u?[...n,u]:n}};r(m=>({...m,user_metadata:{...m.user_metadata,...c}})),t(m=>m+1)}return e.jsx(P,{submitHandler:a})}function q(){const{surveyStep:t}=d(),[r]=_(),[a,s]=l.useState(""),n=r.get("user"),o=r.get("token");return!n||!o?e.jsx(w,{children:e.jsx("p",{children:"Invalid activation link."})}):e.jsx(e.Fragment,{children:e.jsxs(T,{initialUser:{activation_token:o},children:[e.jsx(h,{stepAmount:6}),t===1&&e.jsx(L,{}),t===2&&e.jsx(W,{}),t===3&&e.jsx(Y,{}),t===4&&e.jsx(Z,{}),t===5&&e.jsx(O,{setUsername:s,userId:n}),t===6&&e.jsx(g,{}),t===7&&e.jsx(j,{subHeader:"Your created your ZenML account",username:a})]})})}function pt(){return e.jsx("div",{children:e.jsx(y,{children:e.jsx(q,{})})})}export{pt as default};
|
@@ -1 +1 @@
|
|
1
|
-
import{r as i,j as e}from"./@radix-C7hRs6Kx.js";import{S as Z}from"./code-browser-j2EpcxIA.js";import{S as x}from"./help-DyMolRxD.js";import{B as T,m as B,aV as P,c as V,S as M,ai as E,r as d,T as a,G as l,H as n,a2 as m,J as c,aW as R}from"./index-hsSXyS3H.js";import{d as z,L as h}from"./@react-router-BGgzhn5D.js";import{S as F}from"./clock-CPA5cYxq.js";import{C as L}from"./ProviderIcon-B8W7AGNk.js";import{S as _}from"./layout-h3cbx8WZ.js";import"./@tanstack-CSxjHCME.js";import"./@reactflow-CQi1Z1Wq.js";import"./gcp-CHNvgEss.js";const D=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.56811 2C4.57873 2 4.58936 2.00001 4.60001 2.00001H5.40001C5.41065 2.00001 5.42128 2 5.4319 2C5.68429 1.99997 5.93008 1.99994 6.13824 2.01695C6.36683 2.03563 6.63656 2.07969 6.90799 2.21799C7.28431 2.40974 7.59027 2.7157 7.78202 3.09202C7.92032 3.36345 7.96438 3.63318 7.98306 3.86178C7.98669 3.90624 7.98955 3.95241 7.99179 4.00001L16.0082 4.00001C16.0105 3.95241 16.0133 3.90624 16.0169 3.86178C16.0356 3.63318 16.0797 3.36345 16.218 3.09202C16.4097 2.7157 16.7157 2.40974 17.092 2.21799C17.3634 2.07969 17.6332 2.03563 17.8618 2.01695C18.0699 1.99994 18.3157 1.99997 18.5681 2H19.4319C19.6843 1.99997 19.9301 1.99994 20.1382 2.01695C20.3668 2.03563 20.6366 2.07969 20.908 2.21799C21.2843 2.40974 21.5903 2.7157 21.782 3.09202C21.9203 3.36345 21.9644 3.63318 21.9831 3.86178C22.0001 4.06993 22 4.31571 22 4.56809V5.43192C22 5.6843 22.0001 5.93008 21.9831 6.13824C21.9644 6.36683 21.9203 6.63656 21.782 6.90799C21.5903 7.28431 21.2843 7.59027 20.908 7.78202C20.6366 7.92032 20.3668 7.96438 20.1382 7.98306C20.0938 7.98669 20.0476 7.98955 20 7.99179V11C20 11.5523 19.5523 12 19 12C18.4477 12 18 11.5523 18 11V7.99179C17.9524 7.98955 17.9062 7.98669 17.8618 7.98306C17.6332 7.96438 17.3634 7.92032 17.092 7.78202C16.7157 7.59027 16.4097 7.28431 16.218 6.90799C16.0797 6.63656 16.0356 6.36683 16.0169 6.13824C16.0133 6.09377 16.0105 6.0476 16.0082 6.00001L7.99179 6.00001C7.98955 6.0476 7.98669 6.09377 7.98306 6.13824C7.96438 6.36683 7.92032 6.63656 7.78202 6.90799C7.59027 7.28431 7.28431 7.59027 6.90799 7.78202C6.63656 7.92032 6.36683 7.96438 6.13824 7.98306C6.09377 7.98669 6.0476 7.98955 6.00001 7.99179V16.0082C6.0476 16.0105 6.09377 16.0133 6.13824 16.0169C6.36683 16.0356 6.63656 16.0797 6.90799 16.218C7.28431 16.4097 7.59027 16.7157 7.78202 17.092C7.92032 17.3634 7.96438 17.6332 7.98306 17.8618C7.98669 17.9062 7.98955 17.9524 7.99179 18H11C11.5523 18 12 18.4477 12 19C12 19.5523 11.5523 20 11 20H7.99179C7.98955 20.0476 7.98669 20.0938 7.98306 20.1382C7.96438 20.3668 7.92032 20.6366 7.78202 20.908C7.59027 21.2843 7.28431 21.5903 6.90799 21.782C6.63656 21.9203 6.36683 21.9644 6.13824 21.9831C5.93008 22.0001 5.6843 22 5.43192 22H4.56809C4.31571 22 4.06993 22.0001 3.86178 21.9831C3.63318 21.9644 3.36345 21.9203 3.09202 21.782C2.7157 21.5903 2.40974 21.2843 2.21799 20.908C2.07969 20.6366 2.03563 20.3668 2.01695 20.1382C1.99994 19.9301 1.99997 19.6843 2 19.4319V18.5681C1.99997 18.3157 1.99994 18.0699 2.01695 17.8618C2.03563 17.6332 2.07969 17.3634 2.21799 17.092C2.40974 16.7157 2.7157 16.4097 3.09202 16.218C3.36345 16.0797 3.63318 16.0356 3.86178 16.0169C3.90624 16.0133 3.95241 16.0105 4.00001 16.0082V7.99179C3.95241 7.98955 3.90624 7.98669 3.86178 7.98306C3.63318 7.96438 3.36345 7.92032 3.09202 7.78202C2.7157 7.59027 2.40974 7.28431 2.21799 6.90799C2.07969 6.63656 2.03563 6.36683 2.01695 6.13824C1.99994 5.93008 1.99997 5.68429 2 5.4319C2 5.42128 2.00001 5.41065 2.00001 5.40001V4.60001C2.00001 4.58936 2 4.57873 2 4.56811C1.99997 4.31572 1.99994 4.06993 2.01695 3.86178C2.03563 3.63318 2.07969 3.36345 2.21799 3.09202C2.40974 2.7157 2.7157 2.40974 3.09202 2.21799C3.36345 2.07969 3.63318 2.03563 3.86178 2.01695C4.06993 1.99994 4.31572 1.99997 4.56811 2ZM5.40001 6.00001C5.69653 6.00001 5.85879 5.99923 5.97537 5.9897C5.98001 5.98932 5.98441 5.98894 5.98856 5.98856C5.98894 5.98441 5.98932 5.98001 5.9897 5.97537C5.99923 5.85879 6.00001 5.69653 6.00001 5.40001V4.60001C6.00001 4.30348 5.99923 4.14122 5.9897 4.02464C5.98932 4.02 5.98894 4.0156 5.98856 4.01145C5.98441 4.01107 5.98001 4.01069 5.97537 4.01031C5.85879 4.00078 5.69653 4.00001 5.40001 4.00001H4.60001C4.30348 4.00001 4.14122 4.00078 4.02464 4.01031C4.02 4.01069 4.0156 4.01107 4.01145 4.01145C4.01107 4.0156 4.01069 4.02 4.01031 4.02464C4.00078 4.14122 4.00001 4.30348 4.00001 4.60001V5.40001C4.00001 5.69653 4.00078 5.85879 4.01031 5.97537C4.01069 5.98001 4.01107 5.98441 4.01145 5.98856C4.0156 5.98894 4.02 5.98932 4.02464 5.9897C4.14122 5.99923 4.30348 6.00001 4.60001 6.00001H5.40001ZM4.60001 18C4.30348 18 4.14122 18.0008 4.02464 18.0103C4.02 18.0107 4.0156 18.0111 4.01145 18.0115C4.01107 18.0156 4.01069 18.02 4.01031 18.0246C4.00078 18.1412 4.00001 18.3035 4.00001 18.6V19.4C4.00001 19.6965 4.00078 19.8588 4.01031 19.9754C4.01069 19.98 4.01107 19.9844 4.01145 19.9885C4.0156 19.9889 4.02 19.9893 4.02464 19.9897C4.14122 19.9992 4.30348 20 4.60001 20H5.40001C5.69653 20 5.85879 19.9992 5.97537 19.9897C5.98001 19.9893 5.98441 19.9889 5.98856 19.9885C5.98894 19.9844 5.98932 19.98 5.9897 19.9754C5.99923 19.8588 6.00001 19.6965 6.00001 19.4V18.6C6.00001 18.3035 5.99923 18.1412 5.9897 18.0246C5.98932 18.02 5.98894 18.0156 5.98856 18.0115C5.98441 18.0111 5.98001 18.0107 5.97537 18.0103C5.85879 18.0008 5.69653 18 5.40001 18H4.60001ZM18 5.40001C18 5.69653 18.0008 5.85879 18.0103 5.97537C18.0107 5.98001 18.0111 5.98441 18.0115 5.98856C18.0156 5.98894 18.02 5.98932 18.0246 5.9897C18.1412 5.99923 18.3035 6.00001 18.6 6.00001H19.4C19.6965 6.00001 19.8588 5.99923 19.9754 5.9897C19.98 5.98932 19.9844 5.98893 19.9886 5.98855C19.9889 5.9844 19.9893 5.98001 19.9897 5.97537C19.9992 5.85879 20 5.69653 20 5.40001V4.60001C20 4.30348 19.9992 4.14122 19.9897 4.02464C19.9893 4.02 19.9889 4.0156 19.9885 4.01145C19.9844 4.01107 19.98 4.01069 19.9754 4.01031C19.8588 4.00078 19.6965 4.00001 19.4 4.00001H18.6C18.3035 4.00001 18.1412 4.00078 18.0246 4.01031C18.02 4.01069 18.0156 4.01107 18.0115 4.01145C18.0111 4.0156 18.0107 4.02 18.0103 4.02464C18.0008 4.14122 18 4.30348 18 4.60001V5.40001ZM18 14C18.5523 14 19 14.4477 19 15V17H21C21.5523 17 22 17.4477 22 18C22 18.5523 21.5523 19 21 19H19V21C19 21.5523 18.5523 22 18 22C17.4477 22 17 21.5523 17 21V19H15C14.4477 19 14 18.5523 14 18C14 17.4477 14.4477 17 15 17H17V15C17 14.4477 17.4477 14 18 14Z"}));function S(){return e.jsx("div",{className:"group absolute z-20 flex h-full w-full items-center justify-center rounded-md border border-theme-border-moderate bg-white/70",children:e.jsx("div",{className:"hidden rounded-md bg-theme-text-primary px-3 py-2 text-text-xs text-theme-text-negative shadow-lg animate-in fade-in-0 fade-out-0 zoom-in-95 group-hover:block",children:"This option is not available for local deployments"})})}const U=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{d:"M15.1636 8.68344V14.9934L20.644 11.8401V5.52344L15.1636 8.68344Z",fill:"#4040B2"}),i.createElement("path",{d:"M9.08185 5.52344L14.5622 8.68344V14.9934L9.08185 11.8368V5.52344Z",fill:"#5C4EE5"}),i.createElement("path",{d:"M3 2V8.31333L8.48033 11.47V5.15667L3 2ZM9.08183 18.8433L14.5622 22V15.6867L9.08183 12.53V18.8433Z",fill:"#5C4EE5"})),$=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.5 4C7.84315 4 6.5 5.34315 6.5 7C6.5 8.65685 7.84315 10 9.5 10C11.1569 10 12.5 8.65685 12.5 7C12.5 5.34315 11.1569 4 9.5 4ZM4.5 7C4.5 4.23858 6.73858 2 9.5 2C12.2614 2 14.5 4.23858 14.5 7C14.5 9.76142 12.2614 12 9.5 12C6.73858 12 4.5 9.76142 4.5 7ZM14.5731 2.91554C14.7803 2.40361 15.3633 2.1566 15.8752 2.36382C17.7058 3.10481 19 4.90006 19 7C19 9.09994 17.7058 10.8952 15.8752 11.6362C15.3633 11.8434 14.7803 11.5964 14.5731 11.0845C14.3658 10.5725 14.6129 9.98953 15.1248 9.7823C16.2261 9.33652 17 8.25744 17 7C17 5.74256 16.2261 4.66348 15.1248 4.2177C14.6129 4.01047 14.3658 3.42748 14.5731 2.91554ZM7.96448 14H11.0355C11.9373 14 12.6647 14 13.2567 14.0404C13.8654 14.0819 14.4037 14.1695 14.9134 14.3806C16.1386 14.8881 17.1119 15.8614 17.6194 17.0866C17.8305 17.5963 17.9181 18.1346 17.9596 18.7433C18 19.3353 18 20.0627 18 20.9645V21C18 21.5523 17.5523 22 17 22C16.4477 22 16 21.5523 16 21C16 20.0544 15.9995 19.3953 15.9643 18.8794C15.9297 18.3725 15.865 18.0773 15.7716 17.8519C15.4672 17.1169 14.8831 16.5328 14.1481 16.2284C13.9227 16.135 13.6275 16.0703 13.1206 16.0357C12.6047 16.0005 11.9456 16 11 16H8C7.05444 16 6.39534 16.0005 5.87945 16.0357C5.37254 16.0703 5.07733 16.135 4.85195 16.2284C4.11687 16.5328 3.53284 17.1169 3.22836 17.8519C3.135 18.0773 3.07033 18.3725 3.03574 18.8794C3.00054 19.3953 3 20.0544 3 21C3 21.5523 2.55229 22 2 22C1.44772 22 1 21.5523 1 21L1 20.9645C0.999993 20.0627 0.999988 19.3353 1.04038 18.7433C1.08191 18.1346 1.16948 17.5963 1.3806 17.0866C1.88807 15.8614 2.86144 14.8881 4.08658 14.3806C4.59628 14.1695 5.13456 14.0819 5.74331 14.0404C6.33531 14 7.06272 14 7.96448 14ZM18.0316 14.8768C18.1692 14.3419 18.7144 14.0199 19.2493 14.1576C21.4056 14.7126 23 16.6688 23 19V21C23 21.5523 22.5523 22 22 22C21.4477 22 21 21.5523 21 21V19C21 17.6035 20.0449 16.4275 18.7507 16.0945C18.2159 15.9568 17.8939 15.4116 18.0316 14.8768Z"}));function C({children:s,className:r,...t}){return e.jsx(T,{...t,className:B("h-full w-full space-y-1 px-6 py-5",r),children:s})}function u({children:s}){return e.jsx(e.Fragment,{children:s})}function j({children:s}){return e.jsx("div",{className:"space-y-0.5",children:s})}function f({children:s}){return e.jsx("div",{className:"flex items-center gap-1",children:s})}function p({children:s}){return e.jsx("h2",{className:"text-text-lg font-semibold",children:s})}function g({children:s}){return e.jsx("p",{className:"text-theme-text-secondary",children:s})}function y({children:s}){return e.jsx("div",{className:"flex w-full flex-wrap items-start justify-between gap-y-1",children:s})}function v({hasTerraform:s=!1}){return e.jsxs("div",{className:"flex items-center gap-2",children:[s&&e.jsx(U,{className:"h-4 w-4 shrink-0"}),e.jsx(L,{className:"h-4 w-4",provider:"aws"}),e.jsx(L,{className:"h-4 w-4",provider:"gcp"}),e.jsx(L,{className:"h-4 w-4",provider:"azure"})]})}function w({min:s}){return e.jsxs("div",{className:"flex items-center gap-0.5",children:[e.jsx(F,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"}),e.jsxs("p",{className:"text-text-xs text-theme-text-tertiary",children:["Estimated time: ",s," mins"]})]})}function N({flexibility:s,children:r}){return e.jsxs("div",{className:"flex w-full items-center gap-0.5 lg:w-1/3",children:[e.jsxs("div",{className:"flex items-center gap-0.5",children:[e.jsx("span",{className:"text-theme-text-secondary",children:"Flexibility"}),r]}),e.jsx(P,{className:"h-1 flex-1 shrink-0 rounded-rounded",value:s})]})}function k({children:s}){return e.jsx("div",{className:"flex flex-wrap items-center justify-between gap-y-1 text-text-xs",children:s})}function b({recommendataion:s}){return e.jsxs("div",{className:"flex items-center gap-0.5 text-text-xs text-theme-text-success",children:[e.jsx($,{className:"h-3 w-3 shrink-0 fill-theme-text-success"}),e.jsxs("p",{children:["Recommended for ",s]})]})}const H="https://docs.zenml.io/how-to/infrastructure-deployment/stack-deployment/deploy-a-cloud-stack";function q(){const{isError:s,isPending:r,data:t}=V();if(r)return e.jsx(M,{className:"h-[200px] w-full"});if(s)return e.jsx("div",{children:"Failed to load server info"});const o=E(t.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Create New Infrastructure"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Use our smart tools to create a new Cloud infrastructure a quick and simplified way."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(O,{isLocalDeployment:o}),e.jsx(A,{isLocalDeployment:o})]})]})}function O({isLocalDeployment:s}){const[r]=z(),t=d.stacks.create.newInfra+(r.size>=1?`?${r.toString()}`:"");return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:t,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(Z,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"In-browser Experience"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Deploy the necessary pieces of infrastructure on your selected cloud provider and get you started on remote stack with a single click."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:H,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Provision cloud infrastructure via browser UI. No local installs needed. Quick setup for cloud resources."})]}),e.jsx(b,{recommendataion:"data scientists"}),e.jsxs(k,{children:[e.jsx(w,{min:"5"}),e.jsx(N,{flexibility:25,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Low flexibility:"})," Best for straightforward setups with minimal customization."]})]})})})]})]})})]})}function A({isLocalDeployment:s}){const[r]=z(),t=d.stacks.create.terraform+(r.size>=1?`?${r.toString()}`:"");return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:t,children:e.jsxs(C,{className:"flex flex-col justify-between space-y-0",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(D,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{hasTerraform:!0})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Infrastructure-as-code"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Infrastructure-as-code (IaC) refers to using a dynamic codebase to provision and manage infrastructure, rather than deferring to manual processes."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:H,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Use Terraform modules to deploy infrastructure and register it back to ZenML."})]})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(b,{recommendataion:"infrastructure engineers"}),e.jsxs(k,{children:[e.jsx(w,{min:"3"}),e.jsx(N,{flexibility:75,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"High flexibility:"})," Offers extensive customization for advanced users or complex setups."]})]})})})]})]})]})})]})}const I="https://docs.zenml.io/how-to/infrastructure-deployment/stack-deployment/deploy-a-cloud-stack";function G(){const{isError:s,isPending:r,data:t}=V();if(r)return e.jsx(M,{className:"h-[200px] w-full"});if(s)return e.jsx("div",{children:"Failed to load server info"});const o=E(t.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Connect Existing Infrastructure"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Register your stack and components using existing resources that are already provisioned."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(Q,{isLocalDeployment:o}),e.jsx(J,{})]})]})}function J(){const[s]=z(),r=d.stacks.create.manual+(s.size>=1?`?${s.toString()}`:"");return e.jsx("div",{className:"relative",children:e.jsx(h,{to:r,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(_,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Manual Setup"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Customize your ML stack by selecting each component individually through the ZenML interface. Choose from a list of pre-configured components or add new ones tailored to your needs."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:I,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Register stack and components manually using ZenML. Recommended for advanced or custom configurations."})]}),e.jsx(b,{recommendataion:"advanced users"}),e.jsxs(k,{children:[e.jsx(w,{min:"5-10"}),e.jsx(N,{flexibility:100,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Full flexibility:"})," Complete control and customization. For expert users and highly specialized requirements."]})]})})})]})]})})})}function Q({isLocalDeployment:s}){return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:d.stacks.create.existingInfra,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(R,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Scan your Cloud"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"The stack wizard allows you to browse through your existing infrastructure and use it to register a ZenML cloud stack."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:I,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Input your credentials and scan existing infrastructure on your cloud provider. Best for users with existing resources."})]}),e.jsx(b,{recommendataion:"infrastructure engineers"}),e.jsxs(k,{children:[e.jsx(w,{min:"5"}),e.jsx(N,{flexibility:50,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Medium flexibility:"})," Balances ease-of-use with some customization options."]})]})})})]})]})})]})}function n1(){return e.jsxs("section",{className:"layout-container space-y-5 py-5",children:[e.jsx(q,{}),e.jsx(G,{})]})}export{n1 as default};
|
1
|
+
import{r as i,j as e}from"./@radix-C7hRs6Kx.js";import{S as Z}from"./code-browser-j2EpcxIA.js";import{S as x}from"./help-DyMolRxD.js";import{B as T,m as B,aU as P,c as V,S as M,ag as E,r as d,T as a,E as l,G as n,a0 as m,H as c,aV as R}from"./index-BygJE88j.js";import{d as z,L as h}from"./@react-router-CNP6g_RL.js";import{S as F}from"./clock-CPA5cYxq.js";import{C as L}from"./ProviderIcon-kkODO9tx.js";import{S as _}from"./layout-h3cbx8WZ.js";import"./@tanstack-CSxjHCME.js";import"./@reactflow-CQi1Z1Wq.js";import"./gcp-CHNvgEss.js";const U=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.56811 2C4.57873 2 4.58936 2.00001 4.60001 2.00001H5.40001C5.41065 2.00001 5.42128 2 5.4319 2C5.68429 1.99997 5.93008 1.99994 6.13824 2.01695C6.36683 2.03563 6.63656 2.07969 6.90799 2.21799C7.28431 2.40974 7.59027 2.7157 7.78202 3.09202C7.92032 3.36345 7.96438 3.63318 7.98306 3.86178C7.98669 3.90624 7.98955 3.95241 7.99179 4.00001L16.0082 4.00001C16.0105 3.95241 16.0133 3.90624 16.0169 3.86178C16.0356 3.63318 16.0797 3.36345 16.218 3.09202C16.4097 2.7157 16.7157 2.40974 17.092 2.21799C17.3634 2.07969 17.6332 2.03563 17.8618 2.01695C18.0699 1.99994 18.3157 1.99997 18.5681 2H19.4319C19.6843 1.99997 19.9301 1.99994 20.1382 2.01695C20.3668 2.03563 20.6366 2.07969 20.908 2.21799C21.2843 2.40974 21.5903 2.7157 21.782 3.09202C21.9203 3.36345 21.9644 3.63318 21.9831 3.86178C22.0001 4.06993 22 4.31571 22 4.56809V5.43192C22 5.6843 22.0001 5.93008 21.9831 6.13824C21.9644 6.36683 21.9203 6.63656 21.782 6.90799C21.5903 7.28431 21.2843 7.59027 20.908 7.78202C20.6366 7.92032 20.3668 7.96438 20.1382 7.98306C20.0938 7.98669 20.0476 7.98955 20 7.99179V11C20 11.5523 19.5523 12 19 12C18.4477 12 18 11.5523 18 11V7.99179C17.9524 7.98955 17.9062 7.98669 17.8618 7.98306C17.6332 7.96438 17.3634 7.92032 17.092 7.78202C16.7157 7.59027 16.4097 7.28431 16.218 6.90799C16.0797 6.63656 16.0356 6.36683 16.0169 6.13824C16.0133 6.09377 16.0105 6.0476 16.0082 6.00001L7.99179 6.00001C7.98955 6.0476 7.98669 6.09377 7.98306 6.13824C7.96438 6.36683 7.92032 6.63656 7.78202 6.90799C7.59027 7.28431 7.28431 7.59027 6.90799 7.78202C6.63656 7.92032 6.36683 7.96438 6.13824 7.98306C6.09377 7.98669 6.0476 7.98955 6.00001 7.99179V16.0082C6.0476 16.0105 6.09377 16.0133 6.13824 16.0169C6.36683 16.0356 6.63656 16.0797 6.90799 16.218C7.28431 16.4097 7.59027 16.7157 7.78202 17.092C7.92032 17.3634 7.96438 17.6332 7.98306 17.8618C7.98669 17.9062 7.98955 17.9524 7.99179 18H11C11.5523 18 12 18.4477 12 19C12 19.5523 11.5523 20 11 20H7.99179C7.98955 20.0476 7.98669 20.0938 7.98306 20.1382C7.96438 20.3668 7.92032 20.6366 7.78202 20.908C7.59027 21.2843 7.28431 21.5903 6.90799 21.782C6.63656 21.9203 6.36683 21.9644 6.13824 21.9831C5.93008 22.0001 5.6843 22 5.43192 22H4.56809C4.31571 22 4.06993 22.0001 3.86178 21.9831C3.63318 21.9644 3.36345 21.9203 3.09202 21.782C2.7157 21.5903 2.40974 21.2843 2.21799 20.908C2.07969 20.6366 2.03563 20.3668 2.01695 20.1382C1.99994 19.9301 1.99997 19.6843 2 19.4319V18.5681C1.99997 18.3157 1.99994 18.0699 2.01695 17.8618C2.03563 17.6332 2.07969 17.3634 2.21799 17.092C2.40974 16.7157 2.7157 16.4097 3.09202 16.218C3.36345 16.0797 3.63318 16.0356 3.86178 16.0169C3.90624 16.0133 3.95241 16.0105 4.00001 16.0082V7.99179C3.95241 7.98955 3.90624 7.98669 3.86178 7.98306C3.63318 7.96438 3.36345 7.92032 3.09202 7.78202C2.7157 7.59027 2.40974 7.28431 2.21799 6.90799C2.07969 6.63656 2.03563 6.36683 2.01695 6.13824C1.99994 5.93008 1.99997 5.68429 2 5.4319C2 5.42128 2.00001 5.41065 2.00001 5.40001V4.60001C2.00001 4.58936 2 4.57873 2 4.56811C1.99997 4.31572 1.99994 4.06993 2.01695 3.86178C2.03563 3.63318 2.07969 3.36345 2.21799 3.09202C2.40974 2.7157 2.7157 2.40974 3.09202 2.21799C3.36345 2.07969 3.63318 2.03563 3.86178 2.01695C4.06993 1.99994 4.31572 1.99997 4.56811 2ZM5.40001 6.00001C5.69653 6.00001 5.85879 5.99923 5.97537 5.9897C5.98001 5.98932 5.98441 5.98894 5.98856 5.98856C5.98894 5.98441 5.98932 5.98001 5.9897 5.97537C5.99923 5.85879 6.00001 5.69653 6.00001 5.40001V4.60001C6.00001 4.30348 5.99923 4.14122 5.9897 4.02464C5.98932 4.02 5.98894 4.0156 5.98856 4.01145C5.98441 4.01107 5.98001 4.01069 5.97537 4.01031C5.85879 4.00078 5.69653 4.00001 5.40001 4.00001H4.60001C4.30348 4.00001 4.14122 4.00078 4.02464 4.01031C4.02 4.01069 4.0156 4.01107 4.01145 4.01145C4.01107 4.0156 4.01069 4.02 4.01031 4.02464C4.00078 4.14122 4.00001 4.30348 4.00001 4.60001V5.40001C4.00001 5.69653 4.00078 5.85879 4.01031 5.97537C4.01069 5.98001 4.01107 5.98441 4.01145 5.98856C4.0156 5.98894 4.02 5.98932 4.02464 5.9897C4.14122 5.99923 4.30348 6.00001 4.60001 6.00001H5.40001ZM4.60001 18C4.30348 18 4.14122 18.0008 4.02464 18.0103C4.02 18.0107 4.0156 18.0111 4.01145 18.0115C4.01107 18.0156 4.01069 18.02 4.01031 18.0246C4.00078 18.1412 4.00001 18.3035 4.00001 18.6V19.4C4.00001 19.6965 4.00078 19.8588 4.01031 19.9754C4.01069 19.98 4.01107 19.9844 4.01145 19.9885C4.0156 19.9889 4.02 19.9893 4.02464 19.9897C4.14122 19.9992 4.30348 20 4.60001 20H5.40001C5.69653 20 5.85879 19.9992 5.97537 19.9897C5.98001 19.9893 5.98441 19.9889 5.98856 19.9885C5.98894 19.9844 5.98932 19.98 5.9897 19.9754C5.99923 19.8588 6.00001 19.6965 6.00001 19.4V18.6C6.00001 18.3035 5.99923 18.1412 5.9897 18.0246C5.98932 18.02 5.98894 18.0156 5.98856 18.0115C5.98441 18.0111 5.98001 18.0107 5.97537 18.0103C5.85879 18.0008 5.69653 18 5.40001 18H4.60001ZM18 5.40001C18 5.69653 18.0008 5.85879 18.0103 5.97537C18.0107 5.98001 18.0111 5.98441 18.0115 5.98856C18.0156 5.98894 18.02 5.98932 18.0246 5.9897C18.1412 5.99923 18.3035 6.00001 18.6 6.00001H19.4C19.6965 6.00001 19.8588 5.99923 19.9754 5.9897C19.98 5.98932 19.9844 5.98893 19.9886 5.98855C19.9889 5.9844 19.9893 5.98001 19.9897 5.97537C19.9992 5.85879 20 5.69653 20 5.40001V4.60001C20 4.30348 19.9992 4.14122 19.9897 4.02464C19.9893 4.02 19.9889 4.0156 19.9885 4.01145C19.9844 4.01107 19.98 4.01069 19.9754 4.01031C19.8588 4.00078 19.6965 4.00001 19.4 4.00001H18.6C18.3035 4.00001 18.1412 4.00078 18.0246 4.01031C18.02 4.01069 18.0156 4.01107 18.0115 4.01145C18.0111 4.0156 18.0107 4.02 18.0103 4.02464C18.0008 4.14122 18 4.30348 18 4.60001V5.40001ZM18 14C18.5523 14 19 14.4477 19 15V17H21C21.5523 17 22 17.4477 22 18C22 18.5523 21.5523 19 21 19H19V21C19 21.5523 18.5523 22 18 22C17.4477 22 17 21.5523 17 21V19H15C14.4477 19 14 18.5523 14 18C14 17.4477 14.4477 17 15 17H17V15C17 14.4477 17.4477 14 18 14Z"}));function S(){return e.jsx("div",{className:"group absolute z-20 flex h-full w-full items-center justify-center rounded-md border border-theme-border-moderate bg-white/70",children:e.jsx("div",{className:"hidden rounded-md bg-theme-text-primary px-3 py-2 text-text-xs text-theme-text-negative shadow-lg animate-in fade-in-0 fade-out-0 zoom-in-95 group-hover:block",children:"This option is not available for local deployments"})})}const D=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{d:"M15.1636 8.68344V14.9934L20.644 11.8401V5.52344L15.1636 8.68344Z",fill:"#4040B2"}),i.createElement("path",{d:"M9.08185 5.52344L14.5622 8.68344V14.9934L9.08185 11.8368V5.52344Z",fill:"#5C4EE5"}),i.createElement("path",{d:"M3 2V8.31333L8.48033 11.47V5.15667L3 2ZM9.08183 18.8433L14.5622 22V15.6867L9.08183 12.53V18.8433Z",fill:"#5C4EE5"})),$=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.5 4C7.84315 4 6.5 5.34315 6.5 7C6.5 8.65685 7.84315 10 9.5 10C11.1569 10 12.5 8.65685 12.5 7C12.5 5.34315 11.1569 4 9.5 4ZM4.5 7C4.5 4.23858 6.73858 2 9.5 2C12.2614 2 14.5 4.23858 14.5 7C14.5 9.76142 12.2614 12 9.5 12C6.73858 12 4.5 9.76142 4.5 7ZM14.5731 2.91554C14.7803 2.40361 15.3633 2.1566 15.8752 2.36382C17.7058 3.10481 19 4.90006 19 7C19 9.09994 17.7058 10.8952 15.8752 11.6362C15.3633 11.8434 14.7803 11.5964 14.5731 11.0845C14.3658 10.5725 14.6129 9.98953 15.1248 9.7823C16.2261 9.33652 17 8.25744 17 7C17 5.74256 16.2261 4.66348 15.1248 4.2177C14.6129 4.01047 14.3658 3.42748 14.5731 2.91554ZM7.96448 14H11.0355C11.9373 14 12.6647 14 13.2567 14.0404C13.8654 14.0819 14.4037 14.1695 14.9134 14.3806C16.1386 14.8881 17.1119 15.8614 17.6194 17.0866C17.8305 17.5963 17.9181 18.1346 17.9596 18.7433C18 19.3353 18 20.0627 18 20.9645V21C18 21.5523 17.5523 22 17 22C16.4477 22 16 21.5523 16 21C16 20.0544 15.9995 19.3953 15.9643 18.8794C15.9297 18.3725 15.865 18.0773 15.7716 17.8519C15.4672 17.1169 14.8831 16.5328 14.1481 16.2284C13.9227 16.135 13.6275 16.0703 13.1206 16.0357C12.6047 16.0005 11.9456 16 11 16H8C7.05444 16 6.39534 16.0005 5.87945 16.0357C5.37254 16.0703 5.07733 16.135 4.85195 16.2284C4.11687 16.5328 3.53284 17.1169 3.22836 17.8519C3.135 18.0773 3.07033 18.3725 3.03574 18.8794C3.00054 19.3953 3 20.0544 3 21C3 21.5523 2.55229 22 2 22C1.44772 22 1 21.5523 1 21L1 20.9645C0.999993 20.0627 0.999988 19.3353 1.04038 18.7433C1.08191 18.1346 1.16948 17.5963 1.3806 17.0866C1.88807 15.8614 2.86144 14.8881 4.08658 14.3806C4.59628 14.1695 5.13456 14.0819 5.74331 14.0404C6.33531 14 7.06272 14 7.96448 14ZM18.0316 14.8768C18.1692 14.3419 18.7144 14.0199 19.2493 14.1576C21.4056 14.7126 23 16.6688 23 19V21C23 21.5523 22.5523 22 22 22C21.4477 22 21 21.5523 21 21V19C21 17.6035 20.0449 16.4275 18.7507 16.0945C18.2159 15.9568 17.8939 15.4116 18.0316 14.8768Z"}));function C({children:s,className:r,...t}){return e.jsx(T,{...t,className:B("h-full w-full space-y-1 px-6 py-5",r),children:s})}function u({children:s}){return e.jsx(e.Fragment,{children:s})}function j({children:s}){return e.jsx("div",{className:"space-y-0.5",children:s})}function f({children:s}){return e.jsx("div",{className:"flex items-center gap-1",children:s})}function p({children:s}){return e.jsx("h2",{className:"text-text-lg font-semibold",children:s})}function g({children:s}){return e.jsx("p",{className:"text-theme-text-secondary",children:s})}function y({children:s}){return e.jsx("div",{className:"flex w-full flex-wrap items-start justify-between gap-y-1",children:s})}function v({hasTerraform:s=!1}){return e.jsxs("div",{className:"flex items-center gap-2",children:[s&&e.jsx(D,{className:"h-4 w-4 shrink-0"}),e.jsx(L,{className:"h-4 w-4",provider:"aws"}),e.jsx(L,{className:"h-4 w-4",provider:"gcp"}),e.jsx(L,{className:"h-4 w-4",provider:"azure"})]})}function w({min:s}){return e.jsxs("div",{className:"flex items-center gap-0.5",children:[e.jsx(F,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"}),e.jsxs("p",{className:"text-text-xs text-theme-text-tertiary",children:["Estimated time: ",s," mins"]})]})}function N({flexibility:s,children:r}){return e.jsxs("div",{className:"flex w-full items-center gap-0.5 lg:w-1/3",children:[e.jsxs("div",{className:"flex items-center gap-0.5",children:[e.jsx("span",{className:"text-theme-text-secondary",children:"Flexibility"}),r]}),e.jsx(P,{className:"h-1 flex-1 shrink-0 rounded-rounded",value:s})]})}function k({children:s}){return e.jsx("div",{className:"flex flex-wrap items-center justify-between gap-y-1 text-text-xs",children:s})}function b({recommendataion:s}){return e.jsxs("div",{className:"flex items-center gap-0.5 text-text-xs text-theme-text-success",children:[e.jsx($,{className:"h-3 w-3 shrink-0 fill-theme-text-success"}),e.jsxs("p",{children:["Recommended for ",s]})]})}const H="https://docs.zenml.io/how-to/infrastructure-deployment/stack-deployment/deploy-a-cloud-stack";function q(){const{isError:s,isPending:r,data:t}=V();if(r)return e.jsx(M,{className:"h-[200px] w-full"});if(s)return e.jsx("div",{children:"Failed to load server info"});const o=E(t.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Create New Infrastructure"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Use our smart tools to create a new Cloud infrastructure a quick and simplified way."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(O,{isLocalDeployment:o}),e.jsx(A,{isLocalDeployment:o})]})]})}function O({isLocalDeployment:s}){const[r]=z(),t=d.stacks.create.newInfra+(r.size>=1?`?${r.toString()}`:"");return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:t,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(Z,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"In-browser Experience"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Deploy the necessary pieces of infrastructure on your selected cloud provider and get you started on remote stack with a single click."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:H,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Provision cloud infrastructure via browser UI. No local installs needed. Quick setup for cloud resources."})]}),e.jsx(b,{recommendataion:"data scientists"}),e.jsxs(k,{children:[e.jsx(w,{min:"5"}),e.jsx(N,{flexibility:25,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Low flexibility:"})," Best for straightforward setups with minimal customization."]})]})})})]})]})})]})}function A({isLocalDeployment:s}){const[r]=z(),t=d.stacks.create.terraform+(r.size>=1?`?${r.toString()}`:"");return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:t,children:e.jsxs(C,{className:"flex flex-col justify-between space-y-0",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(U,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{hasTerraform:!0})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Infrastructure-as-code"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Infrastructure-as-code (IaC) refers to using a dynamic codebase to provision and manage infrastructure, rather than deferring to manual processes."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:H,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Use Terraform modules to deploy infrastructure and register it back to ZenML."})]})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(b,{recommendataion:"infrastructure engineers"}),e.jsxs(k,{children:[e.jsx(w,{min:"3"}),e.jsx(N,{flexibility:75,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"High flexibility:"})," Offers extensive customization for advanced users or complex setups."]})]})})})]})]})]})})]})}const I="https://docs.zenml.io/how-to/infrastructure-deployment/stack-deployment/deploy-a-cloud-stack";function G(){const{isError:s,isPending:r,data:t}=V();if(r)return e.jsx(M,{className:"h-[200px] w-full"});if(s)return e.jsx("div",{children:"Failed to load server info"});const o=E(t.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Connect Existing Infrastructure"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Register your stack and components using existing resources that are already provisioned."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(J,{isLocalDeployment:o}),e.jsx(Q,{})]})]})}function Q(){const[s]=z(),r=d.stacks.create.manual+(s.size>=1?`?${s.toString()}`:"");return e.jsx("div",{className:"relative",children:e.jsx(h,{to:r,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(_,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Manual Setup"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"Customize your ML stack by selecting each component individually through the ZenML interface. Choose from a list of pre-configured components or add new ones tailored to your needs."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:I,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Register stack and components manually using ZenML. Recommended for advanced or custom configurations."})]}),e.jsx(b,{recommendataion:"advanced users"}),e.jsxs(k,{children:[e.jsx(w,{min:"5-10"}),e.jsx(N,{flexibility:100,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Full flexibility:"})," Complete control and customization. For expert users and highly specialized requirements."]})]})})})]})]})})})}function J({isLocalDeployment:s}){return e.jsxs("div",{className:"relative",children:[s&&e.jsx(S,{}),e.jsx(h,{to:d.stacks.create.existingInfra,children:e.jsxs(C,{children:[e.jsxs(y,{children:[e.jsx(u,{children:e.jsx(R,{className:"h-6 w-6 fill-primary-400"})}),e.jsx(v,{})]}),e.jsxs(j,{children:[e.jsxs(f,{children:[e.jsx(p,{children:"Scan your Cloud"}),e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(m,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{align:"start",side:"bottom",className:"z-50 flex max-w-[480px] flex-col gap-2 bg-theme-surface-primary p-5 text-text-sm text-theme-text-primary",children:[e.jsx("p",{children:"The stack wizard allows you to browse through your existing infrastructure and use it to register a ZenML cloud stack."}),e.jsx("a",{className:"link text-primary-400",target:"_blank",href:I,children:"Learn More"})]})]})})]}),e.jsx(g,{children:"Input your credentials and scan existing infrastructure on your cloud provider. Best for users with existing resources."})]}),e.jsx(b,{recommendataion:"infrastructure engineers"}),e.jsxs(k,{children:[e.jsx(w,{min:"5"}),e.jsx(N,{flexibility:50,children:e.jsx(a,{children:e.jsxs(l,{children:[e.jsx(n,{asChild:!0,children:e.jsx("div",{className:"z-10",children:e.jsx(x,{className:"h-3 w-3 shrink-0 fill-theme-text-tertiary"})})}),e.jsxs(c,{className:"z-50 max-w-[480px] bg-theme-surface-primary text-theme-text-primary",children:[e.jsx("strong",{children:"Medium flexibility:"})," Balances ease-of-use with some customization options."]})]})})})]})]})})]})}function n1(){return e.jsxs("section",{className:"layout-container space-y-5 py-5",children:[e.jsx(q,{}),e.jsx(G,{})]})}export{n1 as default};
|
@@ -1 +1 @@
|
|
1
|
-
import{z as t}from"./index-
|
1
|
+
import{z as t}from"./index-BygJE88j.js";import{d as s}from"./persist-SSTTV5q0.js";const r="create-terraform-data",e=t.object({provider:s,stackName:t.string().min(1).trim(),location:t.string().min(1).trim(),timestamp:t.string().min(1).trim()});function n(a){localStorage.setItem(r,JSON.stringify(a))}function l(){try{const a=localStorage.getItem(r),o=a?JSON.parse(a):{};return e.safeParse(o)}catch{return i(),e.safeParse({})}}function i(){localStorage.removeItem(r)}export{i as c,l as p,n as s};
|
@@ -1 +1 @@
|
|
1
|
-
import{z as a}from"./index-
|
1
|
+
import{z as a}from"./index-BygJE88j.js";import{s as i}from"./sharedSchema-BACERDat.js";const o=a.enum(["aws","gcp","azure"]),p=a.object({provider:o}),g=a.object({region:a.string().trim().min(1),stackName:i}),r="new-infra-data",e=a.object({provider:o,stackName:a.string().min(1).trim(),location:a.string().min(1).trim(),timestamp:a.string().min(1).trim()});function d(t){localStorage.setItem(r,JSON.stringify(t))}function f(){try{const t=localStorage.getItem(r),s=t?JSON.parse(t):{};return e.safeParse(s)}catch{return c(),e.safeParse({})}}function c(){localStorage.removeItem(r)}export{g as a,p as b,c,o as d,f as p,d as s};
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{q as y,b as w}from"./@tanstack-CSxjHCME.js";import{o as l,q as f,j as u,s as h,F as p,p as m,z as i,h as j,
|
1
|
+
import{q as y,b as w}from"./@tanstack-CSxjHCME.js";import{o as l,q as f,j as u,s as h,F as p,p as m,z as i,h as j,a5 as A}from"./index-BygJE88j.js";import{j as a,r as g}from"./@radix-C7hRs6Kx.js";import{C as x}from"./CodeSnippet-Di-loaZu.js";import{I as v}from"./Infobox-Bai0JtFs.js";import{T}from"./Tick-ay3Bgtro.js";import{d as K}from"./@react-router-CNP6g_RL.js";async function b({params:e}){const r=l(m.serviceAccounts.all)+"?"+f(e),s=await u(r,{method:"GET",headers:{"Content-Type":"application/json"}});if(s.status===404&&h(),!s.ok){const t=await s.json().then(n=>Array.isArray(n.detail)?n.detail[1]:n.detail).catch(()=>"Failed to fetch service accounts");throw new p({status:s.status,statusText:s.statusText,message:t})}return s.json()}async function k({serviceAccountId:e}){const r=l(m.serviceAccounts.detail(e)),s=await u(r,{method:"GET",headers:{"Content-Type":"application/json"}});if(s.status===404&&h(),!s.ok){const t=await s.json().then(n=>Array.isArray(n.detail)?n.detail[1]:n.detail).catch(()=>`Failed to fetch service account ${e}`);throw new p({status:s.status,statusText:s.statusText,message:t})}return s.json()}async function N({serviceAccountId:e,params:r}){const s=l(m.serviceAccounts.apiKeys.all(e))+"?"+f(r),t=await u(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&h(),!t.ok){const n=await t.json().then(o=>Array.isArray(o.detail)?o.detail[1]:o.detail).catch(()=>"Failed to list of api keys");throw new p({status:t.status,statusText:t.statusText,message:n})}return t.json()}async function S({serviceAccountId:e,apiKeyId:r}){const s=l(m.serviceAccounts.apiKeys.detail(e,r)),t=await u(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&h(),!t.ok){const n=await t.json().then(o=>Array.isArray(o.detail)?o.detail[1]:o.detail).catch(()=>`Failed to fetch api key ${r}`);throw new p({status:t.status,statusText:t.statusText,message:n})}return t.json()}const $={serviceAccountList:e=>y({queryKey:[...c.serviceAccountsKey(),e],queryFn:async()=>b({params:e})}),serviceAccountDetail:e=>y({queryKey:[...c.serviceAccountsKey(),e],queryFn:async()=>k({serviceAccountId:e})}),serviceAccountApiKeys:(e,r)=>y({queryKey:[...c.apiKeysKey(e),r],queryFn:async()=>N({serviceAccountId:e,params:r})}),ApiKeysDetail:(e,r)=>y({queryKey:[...c.apiKeysKey(e),r],queryFn:async()=>S({serviceAccountId:e,apiKeyId:r})})},c={serviceAccountsKey:()=>["service_accounts"],apiKeysKey:e=>[...c.serviceAccountsKey(),e,"api_keys"]};async function C({body:e,serviceAccountId:r}){const s=l(m.serviceAccounts.apiKeys.all(r)),t=await u(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const n=await t.json().then(o=>Array.isArray(o.detail)?o.detail[1]:o.detail).catch(()=>"Failed to create service account");throw new p({status:t.status,statusText:t.statusText,message:n})}return t.json()}function I(e){return w({...e,mutationFn:async({serviceAccountId:r,body:s})=>C({body:s,serviceAccountId:r})})}const F=i.object({name:i.string().min(1,"Service Account Name is required"),description:i.string()}),R=F.extend({createDefault:i.boolean()});function U({value:e}){return a.jsxs("div",{className:"space-y-3 overflow-x-hidden px-7 py-5 text-text-md text-theme-text-primary",children:[a.jsxs("div",{className:"space-y-0.5",children:[a.jsx("p",{className:"text-text-md font-semibold text-theme-text-primary",children:"Here is your new API Key"}),a.jsx("p",{className:"text-text-md text-theme-text-secondary",children:"Your key was created successfully"})]}),a.jsx(P,{}),a.jsx(E,{value:e}),a.jsx("div",{className:"h-[1px] bg-theme-border-moderate","aria-hidden":"true"}),a.jsxs("div",{className:"space-y-3 pt-5",children:[a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("p",{className:"text-text-md font-semibold text-theme-text-primary",children:"Using your API Key"}),a.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://docs.zenml.io/how-to/project-setup-and-management/connecting-to-zenml/connect-with-a-service-account",className:"link text-text-sm text-primary-400",children:"Learn More"})]}),a.jsx("p",{className:"text-theme-text-secondary",children:"To log in to the ZenML server using the generated key, you can run the following CLI command and enter the API key when prompted:"}),a.jsx(x,{highlightCode:!0,wrap:!0,code:`zenml login --api-key ${window.location.origin}`}),a.jsx("p",{className:"text-theme-text-secondary",children:"Alternatively, you can set the following environment variables to configure workloads where CLI interaction is not possible:"}),a.jsx(x,{highlightCode:!0,wrap:!0,code:`ZENML_STORE_URL: ${window.location.origin}
|
2
2
|
ZENML_STORE_API_KEY: ${e}`})]})]})}function E({value:e}){const[r,s]=g.useState(!1);function t(n){navigator.clipboard&&(navigator.clipboard.writeText(n),s(!0),setTimeout(()=>{s(!1)},2e3))}return a.jsxs("section",{className:"flex w-full items-center justify-between gap-5 overflow-hidden py-5 text-text-md",children:[a.jsx("code",{className:"w-[3/4] min-w-0 flex-1 overflow-x-auto font-sans text-display-xs",children:e}),r?a.jsxs(a.Fragment,{children:[a.jsx(T,{className:"h-5 w-5 shrink-0 fill-theme-text-tertiary"}),a.jsx("p",{className:"sr-only",children:"copied successfully"})]}):a.jsxs(j,{intent:"secondary",emphasis:"subtle",onClick:()=>t(e),size:"md",children:[a.jsx(A,{className:"h-4 w-4 shrink-0 fill-theme-text-primary"}),a.jsx("p",{children:"Copy"})]})]})}function P(){return a.jsx(v,{children:"Important: This key is your authentication for API access and will not be shown again. Please copy it and store it securely."})}const d=1,D=i.object({page:i.coerce.number().min(d).optional().default(d).catch(d),name:i.string().optional(),operator:i.enum(["and","or"]).optional()});function Z(){const[e]=K(),{page:r,name:s,operator:t}=D.parse({page:e.get("page")||void 0,name:e.get("name")||void 0,operator:e.get("operator")||void 0});return{page:r,name:s,logical_operator:t}}export{U as A,Z as a,$ as b,R as c,F as d,c as s,I as u};
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import{f as C}from"./index-8uhUi12k.js";import{g as S}from"./@radix-C7hRs6Kx.js";import{z as F}from"./index-BygJE88j.js";var d,y;function j(){if(y)return d;y=1,d=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},u=void 0,i=void 0,c=void 0,s=[];return function(){var p=o(r),g=new Date().getTime(),P=!u||g-u>p;u=g;for(var b=arguments.length,l=Array(b),f=0;f<b;f++)l[f]=arguments[f];if(P&&a.leading)return a.accumulate?Promise.resolve(t.call(this,[l])).then(function(v){return v[0]}):Promise.resolve(t.call.apply(t,[this].concat(l)));if(i?clearTimeout(c):i=n(),s.push(l),c=setTimeout(D.bind(this),p),a.accumulate){var w=s.length-1;return i.promise.then(function(v){return v[w]})}return i.promise};function D(){var m=i;clearTimeout(c),Promise.resolve(a.accumulate?t.call(this,s):t.apply(this,s[s.length-1])).then(m.resolve,m.reject),s=[],i=null}};function o(e){return typeof e=="function"?e():e}function n(){var e={};return e.promise=new Promise(function(t,r){e.resolve=t,e.reject=r}),e}return d}var k=j();const O=S(k);function T(o){var n=null,e=null,t=new Promise(function(r,a){n=r,e=a});return o&&o.then(function(r){n&&n(r)},function(r){e&&e(r)}),{promise:t,resolve:function(r){n&&n(r)},reject:function(r){e&&e(r)},cancel:function(){n=null,e=null}}}function x(o){var n=null,e=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];n&&n();var a=o.apply(void 0,t),u=T(a),i=u.promise,c=u.cancel;return n=c,i};return e}/*! *****************************************************************************
|
2
|
+
Copyright (c) Microsoft Corporation. All rights reserved.
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
4
|
+
this file except in compliance with the License. You may obtain a copy of the
|
5
|
+
License at http://www.apache.org/licenses/LICENSE-2.0
|
6
|
+
|
7
|
+
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
8
|
+
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
9
|
+
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
10
|
+
MERCHANTABLITY OR NON-INFRINGEMENT.
|
11
|
+
|
12
|
+
See the Apache Version 2.0 License for specific language governing permissions
|
13
|
+
and limitations under the License.
|
14
|
+
***************************************************************************** */var h=function(){return h=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(n[a]=e[a])}return n},h.apply(this,arguments)},A={key:function(){return null},onlyResolvesLast:!0},R=function(){function o(n){this.config=n,this.debounceSingleton=null,this.debounceCache={}}return o.prototype._createDebouncedFunction=function(){var n=O(this.config.func,this.config.wait,this.config.options);return this.config.options.onlyResolvesLast&&(n=x(n)),{func:n}},o.prototype.getDebouncedFunction=function(n){var e,t=(e=this.config.options).key.apply(e,n);return t===null||typeof t>"u"?(this.debounceSingleton||(this.debounceSingleton=this._createDebouncedFunction()),this.debounceSingleton):(this.debounceCache[t]||(this.debounceCache[t]=this._createDebouncedFunction()),this.debounceCache[t])},o}();function q(o,n,e){var t=h({},A,e),r=new R({func:o,wait:n,options:t}),a=function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];var c=r.getDebouncedFunction(u).func;return c.apply(void 0,u)};return a}const L=q(async o=>(await C({name:o})).total===0,500),z=F.string().trim().min(1,"Stack name is required").max(255,"Stack name must be less than 255 characters").refine(o=>L(o),"Stack name is already in use");export{z as s};
|
zenml/zen_server/dashboard/assets/{stack-detail-query-C1GoxBeK.js → stack-detail-query-ihiJr6nq.js}
RENAMED
@@ -1 +1 @@
|
|
1
|
-
import{j as a,o as r,s as n,F as o,p as u}from"./index-
|
1
|
+
import{j as a,o as r,s as n,F as o,p as u}from"./index-BygJE88j.js";import{a as i}from"./@tanstack-CSxjHCME.js";function c({stackId:t}){return["stacks",t]}async function f({stackId:t}){const s=r(u.stacks.detail(t)),e=await a(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(e.status===404&&n(),!e.ok)throw new o({message:`Error while fetching stack ${t}`,status:e.status,statusText:e.statusText});return e.json()}function y(t,s){return i({queryKey:c(t),queryFn:()=>f(t),...s})}export{f,y as u};
|
@@ -1 +1 @@
|
|
1
|
-
import{j as n,o as i,F as o,p as u}from"./index-
|
1
|
+
import{j as n,o as i,F as o,p as u}from"./index-BygJE88j.js";import{b as c}from"./@tanstack-CSxjHCME.js";async function p(e){const r=i(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 o({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};
|
@@ -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-BygJE88j.js"></script>
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/@radix-C7hRs6Kx.js">
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/@tanstack-CSxjHCME.js">
|
11
|
-
<link rel="modulepreload" crossorigin href="/assets/@react-router-
|
11
|
+
<link rel="modulepreload" crossorigin href="/assets/@react-router-CNP6g_RL.js">
|
12
12
|
<link rel="modulepreload" crossorigin href="/assets/@reactflow-CQi1Z1Wq.js">
|
13
13
|
<link rel="stylesheet" crossorigin href="/assets/@reactflow-Fd0xVSp_.css">
|
14
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
15
|
-
<link rel="prefetch" href="/assets/cloud-squares-DeRLMopf.svg"><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-ext-400-normal-hnt3BR84.woff2"><link rel="prefetch" href="/assets/inter-latin-400-normal-BOOGhInR.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-greek-600-normal-Dhlb-90d.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2"><link rel="prefetch" href="/assets/inter-latin-600-normal-D273HNI0.woff2"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-BnYJhD27.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-greek-400-normal-BZzXV7-1.woff"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-BUNmGMP1.woff"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-C1t-h-pH.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-cyrillic-500-normal-DH2hs3aW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-M2hEX8vc.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-500-normal-deR1Tlfd.woff"><link rel="prefetch" href="/assets/inter-latin-ext-500-normal-UMdmhHu2.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-Bt9VVOA-.woff"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BuzJQFbW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-C9WLioJ8.woff"><link rel="prefetch" href="/assets/inter-greek-600-normal-CwicyhtI.woff"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cm6aH8_k.woff"><link rel="prefetch" href="/assets/inter-latin-600-normal-B5cFAncS.woff"><link rel="prefetch" href="/assets/inter-latin-ext-600-normal-CAF0vJDd.woff"><link rel="prefetch" href="/assets/mcp-Cb1aMeoq.webp"><link rel="prefetch" href="/assets/acp-DOsXjFc7.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/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/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-CK5CxKct.css"><link rel="prefetch" href="/assets/page-DLVtrRa5.js"><link rel="prefetch" href="/assets/page-CjRoKEQs.js"><link rel="prefetch" href="/assets/page-BQVPbNps.js"><link rel="prefetch" href="/assets/page-BbygQpf-.js"><link rel="prefetch" href="/assets/page-C30HZCTR.js"><link rel="prefetch" href="/assets/SetPassword-BDFVwnNB.js"><link rel="prefetch" href="/assets/login-mutation-CwraNa5G.js"><link rel="prefetch" href="/assets/page-DKY_U5Sz.js"><link rel="prefetch" href="/assets/page-Bki79xdd.js"><link rel="prefetch" href="/assets/page-CBGeo-7W.js"><link rel="prefetch" href="/assets/not-found-BuK1QrF2.js"><link rel="prefetch" href="/assets/page-BnKwJnOb.js"><link rel="prefetch" href="/assets/page-DpY1koQY.js"><link rel="prefetch" href="/assets/PasswordChecker-lYTOtNom.js"><link rel="prefetch" href="/assets/tick-circle-m94Aa6Zt.js"><link rel="prefetch" href="/assets/page-3lW9eIer.js"><link rel="prefetch" href="/assets/page-DbEn9V9E.js"><link rel="prefetch" href="/assets/page-hVng6ANV.js"><link rel="prefetch" href="/assets/docker-BuDBFEDL.js"><link rel="prefetch" href="/assets/page-_Zt6UwiG.js"><link rel="prefetch" href="/assets/Commands-BwBzFj-5.js"><link rel="prefetch" href="/assets/page-C7buw8xJ.js"><link rel="prefetch" href="/assets/react-error-boundary.esm-fyoUBS25.js"><link rel="prefetch" href="/assets/page-Jw2QAdxa.js"><link rel="prefetch" href="/assets/code-snippets-CqONne41.js"><link rel="prefetch" href="/assets/page-BEibNYiA.js"><link rel="prefetch" href="/assets/SecretTooltip-CCn9HfEh.js"><link rel="prefetch" href="/assets/page-DwIlrsF0.js"><link rel="prefetch" href="/assets/update-server-settings-mutation-DduehrZn.js"><link rel="prefetch" href="/assets/page-Co-FJ5ds.js"><link rel="prefetch" href="/assets/page-BOE2XBFy.js"><link rel="prefetch" href="/assets/dates-3pMLCNrD.js"><link rel="prefetch" href="/assets/key-icon-DO4DPJHZ.js"><link rel="prefetch" href="/assets/service-MHyqhRgp.js"><link rel="prefetch" href="/assets/page-D0QcEBi1.js"><link rel="prefetch" href="/assets/page-9PzQok8O.js"><link rel="prefetch" href="/assets/RunsBody-B6mBjv-_.js"><link rel="prefetch" href="/assets/RunSelector-DoL_gMHJ.js"><link rel="prefetch" href="/assets/delete-run-B5xUZwdP.js"><link rel="prefetch" href="/assets/DeleteAlertDialog-Bp0o-UXZ.js"><link rel="prefetch" href="/assets/Tabs-BuZG8ft1.js"><link rel="prefetch" href="/assets/all-pipeline-runs-query-D9XfZpmV.js"><link rel="prefetch" href="/assets/NestedCollapsible-Ce1bmT8N.js"><link rel="prefetch" href="/assets/ExecutionStatus-HnZXi9bW.js"><link rel="prefetch" href="/assets/page-CZgeF_wQ.js"><link rel="prefetch" href="/assets/page-CIDo1Ajk.js"><link rel="prefetch" href="/assets/page-Cu8vuohQ.js"><link rel="prefetch" href="/assets/StackList-dhdUtky3.js"><link rel="prefetch" href="/assets/DialogItem-DHw2ihTx.js"><link rel="prefetch" href="/assets/AlertDialogDropdownItem-C_qWs-4u.js"><link rel="prefetch" href="/assets/CollapsibleCard-9sSz7n1R.js"><link rel="prefetch" href="/assets/refresh-CM5T3QeU.js"><link rel="prefetch" href="/assets/SearchField-DHl5flXv.js"><link rel="prefetch" href="/assets/page-CgJcperk.js"><link rel="prefetch" href="/assets/code-browser-j2EpcxIA.js"><link rel="prefetch" href="/assets/clock-CPA5cYxq.js"><link rel="prefetch" href="/assets/page-0AIX3VK8.js"><link rel="prefetch" href="/assets/page-DrS4WOup.js"><link rel="prefetch" href="/assets/flavor-select-DOLAl-S4.js"><link rel="prefetch" href="/assets/constants-DP3ZEnXH.js"><link rel="prefetch" href="/assets/arrow-left-CwgF2MEM.js"><link rel="prefetch" href="/assets/configuration-form-Ci_QlfZC.js"><link rel="prefetch" href="/assets/terminal-square-DMtel8mb.js"><link rel="prefetch" href="/assets/index-BoWZ9rXk.js"><link rel="prefetch" href="/assets/InlineAvatar-CrAwe7Pl.js"><link rel="prefetch" href="/assets/DisplayDate-CYVBBSgr.js"><link rel="prefetch" href="/assets/index-DR30v9MZ.js"><link rel="prefetch" href="/assets/page-DQHU5o_C.js"><link rel="prefetch" href="/assets/Lock-DW-0_M0o.js"><link rel="prefetch" href="/assets/components-Br2ezRib.js"><link rel="prefetch" href="/assets/create-stack-CoQ5SEJL.js"><link rel="prefetch" href="/assets/index-ojAuWXMf.js"><link rel="prefetch" href="/assets/type-guards-CaeD8wHO.js"><link rel="prefetch" href="/assets/trash-BWSZ7NRK.js"><link rel="prefetch" href="/assets/page-Czj8fu8q.js"><link rel="prefetch" href="/assets/persist-xOAq24Bm.js"><link rel="prefetch" href="/assets/Partials-DjTM0Oe-.js"><link rel="prefetch" href="/assets/logs-B5n0U7tB.js"><link rel="prefetch" href="/assets/link-external-DUhCSKNm.js"><link rel="prefetch" href="/assets/NumberBox-D2A7ENHb.js"><link rel="prefetch" href="/assets/Infobox-C4Op55B8.js"><link rel="prefetch" href="/assets/WizardFooter-CnM-50jL.js"><link rel="prefetch" href="/assets/Wizard-BSH_lIfi.js"><link rel="prefetch" href="/assets/ProviderRadio-BWFJPEY2.js"><link rel="prefetch" href="/assets/persist-DLvsEXh0.js"><link rel="prefetch" href="/assets/ComponentBadge-CMx2DbsV.js"><link rel="prefetch" href="/assets/ProviderIcon-B8W7AGNk.js"><link rel="prefetch" href="/assets/sharedSchema-CQA5lnlU.js"><link rel="prefetch" href="/assets/index-e8udi7QT.js"><link rel="prefetch" href="/assets/stack-detail-query-C1GoxBeK.js"><link rel="prefetch" href="/assets/ComponentIcon-CSxdApv8.js"><link rel="prefetch" href="/assets/layout-h3cbx8WZ.js"><link rel="prefetch" href="/assets/login-command-CkqxPtV3.js"><link rel="prefetch" href="/assets/CodeSnippet-nRnOvbOJ.js"><link rel="prefetch" href="/assets/zod-C0xYeTvL.js"><link rel="prefetch" href="/assets/index.esm-D7jFlf5N.js"><link rel="prefetch" href="/assets/ProCta-BYSSivgY.js"><link rel="prefetch" href="/assets/check-DK77doTf.js"><link rel="prefetch" href="/assets/check-circle-mvyzYvIW.js"><link rel="prefetch" href="/assets/form-schemas-BaEJ1z87.js"><link rel="prefetch" href="/assets/EmptyState-M1jafpg6.js"><link rel="prefetch" href="/assets/UsageReason-DOMAzO02.js"><link rel="prefetch" href="/assets/gcp-CHNvgEss.js"><link rel="prefetch" href="/assets/kubernetes-D6OUjwSK.js"><link rel="prefetch" href="/assets/rocket-Cf-B-XOR.js"><link rel="prefetch" href="/assets/UpdatePasswordSchemas-3gg2tC-H.js"><link rel="prefetch" href="/assets/chevron-right-double-uNWbJT-C.js"><link rel="prefetch" href="/assets/plus-COjQg3AG.js"><link rel="prefetch" href="/assets/chevron-down-A-rmltmI.js"><link rel="prefetch" href="/assets/Error-DRhVeVHQ.js"><link rel="prefetch" href="/assets/Helpbox-Dsr3ZYcL.js"><link rel="prefetch" href="/assets/help-DyMolRxD.js"><link rel="prefetch" href="/assets/Tick-C4gtED35.js"><link rel="prefetch" href="/assets/file-text-BdxZdjP_.js"><link rel="prefetch" href="/assets/package-D1Mhqeh8.js"><link rel="prefetch" href="/assets/page-HIAPXq4w.js"><link rel="prefetch" href="/assets/page-KRP_w5zH.js"><link rel="prefetch" href="/assets/ProBadge-CDEqgzh8.js"><link rel="prefetch" href="/assets/page-B5clbTo4.js"><link rel="prefetch" href="/assets/page-DHDeVaMO.js"><link rel="prefetch" href="/assets/page-C-6XUKSp.js"><link rel="prefetch" href="/assets/404-o3nB5iwI.js"><link rel="prefetch" href="/assets/CsvVizualization-lxB2iyEh.js"><link rel="prefetch" href="/assets/MarkdownVisualization-URCyUPcZ.js"></head>
|
14
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DmTFrHJm.css">
|
15
|
+
<link rel="prefetch" href="/assets/cloud-squares-DeRLMopf.svg"><link rel="prefetch" href="/assets/inter-cyrillic-ext-400-normal-Dc4VJyIJ.woff2"><link rel="prefetch" href="/assets/inter-greek-ext-400-normal-Bput3-QP.woff2"><link rel="prefetch" href="/assets/inter-cyrillic-400-normal-BLGc9T1a.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-ext-400-normal-hnt3BR84.woff2"><link rel="prefetch" href="/assets/inter-latin-400-normal-BOOGhInR.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-greek-600-normal-Dhlb-90d.woff2"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cc8MFFhd.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-greek-ext-400-normal-DCpCPQOf.woff"><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-400-normal-BZzXV7-1.woff"><link rel="prefetch" href="/assets/inter-vietnamese-400-normal-BUNmGMP1.woff"><link rel="prefetch" href="/assets/inter-latin-ext-400-normal-C1t-h-pH.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-cyrillic-500-normal-DH2hs3aW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-500-normal-M2hEX8vc.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-vietnamese-500-normal-DQPw2Hwd.woff"><link rel="prefetch" href="/assets/inter-cyrillic-ext-600-normal-Bt9VVOA-.woff"><link rel="prefetch" href="/assets/inter-cyrillic-600-normal-BuzJQFbW.woff"><link rel="prefetch" href="/assets/inter-greek-ext-600-normal-C9WLioJ8.woff"><link rel="prefetch" href="/assets/inter-greek-600-normal-CwicyhtI.woff"><link rel="prefetch" href="/assets/inter-vietnamese-600-normal-Cm6aH8_k.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/mcp-Cb1aMeoq.webp"><link rel="prefetch" href="/assets/acp-DOsXjFc7.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-CK5CxKct.css"><link rel="prefetch" href="/assets/page-bUVHi7DE.js"><link rel="prefetch" href="/assets/page-8AzB83Py.js"><link rel="prefetch" href="/assets/page-B0r9dBEU.js"><link rel="prefetch" href="/assets/page-uN0n_DE2.js"><link rel="prefetch" href="/assets/page-D_5R6E7b.js"><link rel="prefetch" href="/assets/SetPassword-CBHW-Su8.js"><link rel="prefetch" href="/assets/login-mutation-DywLqguW.js"><link rel="prefetch" href="/assets/page-CI4a9CXs.js"><link rel="prefetch" href="/assets/page-B3DscprQ.js"><link rel="prefetch" href="/assets/page-CSQOpvvK.js"><link rel="prefetch" href="/assets/not-found-BOoklIG4.js"><link rel="prefetch" href="/assets/page-kzSGEVUs.js"><link rel="prefetch" href="/assets/page-DkY7AIhj.js"><link rel="prefetch" href="/assets/PasswordChecker-lYTOtNom.js"><link rel="prefetch" href="/assets/tick-circle-m94Aa6Zt.js"><link rel="prefetch" href="/assets/page-cOEvFs_l.js"><link rel="prefetch" href="/assets/page-D2TtSfnb.js"><link rel="prefetch" href="/assets/page-B1Uq1S1Q.js"><link rel="prefetch" href="/assets/docker-BuDBFEDL.js"><link rel="prefetch" href="/assets/page-ByXQN8A-.js"><link rel="prefetch" href="/assets/Commands-CD9Y7FOE.js"><link rel="prefetch" href="/assets/page-uDGvpa5g.js"><link rel="prefetch" href="/assets/react-error-boundary.esm-fyoUBS25.js"><link rel="prefetch" href="/assets/page-4nVakAEl.js"><link rel="prefetch" href="/assets/code-snippets-CqONne41.js"><link rel="prefetch" href="/assets/page-CPLlVRXx.js"><link rel="prefetch" href="/assets/SecretTooltip-LLGP7AIC.js"><link rel="prefetch" href="/assets/page-Ccnk_5ji.js"><link rel="prefetch" href="/assets/update-server-settings-mutation-CK6COmw9.js"><link rel="prefetch" href="/assets/page-EXvws1ss.js"><link rel="prefetch" href="/assets/page-BIYqUwTI.js"><link rel="prefetch" href="/assets/dates-3pMLCNrD.js"><link rel="prefetch" href="/assets/key-icon-DO4DPJHZ.js"><link rel="prefetch" href="/assets/service-BRoAA1Kq.js"><link rel="prefetch" href="/assets/page-D-ry_oLs.js"><link rel="prefetch" href="/assets/page-BTzhAVEn.js"><link rel="prefetch" href="/assets/RunsBody-DexNouV4.js"><link rel="prefetch" href="/assets/RunSelector-j0C_TPVp.js"><link rel="prefetch" href="/assets/delete-run-DzcYxUnd.js"><link rel="prefetch" href="/assets/DeleteAlertDialog-9RTDnEx3.js"><link rel="prefetch" href="/assets/Tabs-C2ufJX4t.js"><link rel="prefetch" href="/assets/all-pipeline-runs-query-BUT1PiTp.js"><link rel="prefetch" href="/assets/NestedCollapsible-DbhKdWx-.js"><link rel="prefetch" href="/assets/ExecutionStatus-B-ysY113.js"><link rel="prefetch" href="/assets/page-BE8jdyaM.js"><link rel="prefetch" href="/assets/page-2BsNK_sZ.js"><link rel="prefetch" href="/assets/page-DmteSSj6.js"><link rel="prefetch" href="/assets/StackList-S-9I1R4n.js"><link rel="prefetch" href="/assets/DialogItem-0fWTH7ki.js"><link rel="prefetch" href="/assets/AlertDialogDropdownItem-CRZjthRL.js"><link rel="prefetch" href="/assets/CollapsibleCard-Dr5zb5T5.js"><link rel="prefetch" href="/assets/refresh-CM5T3QeU.js"><link rel="prefetch" href="/assets/SearchField-DMCywawn.js"><link rel="prefetch" href="/assets/page-xa1EAPcI.js"><link rel="prefetch" href="/assets/code-browser-j2EpcxIA.js"><link rel="prefetch" href="/assets/clock-CPA5cYxq.js"><link rel="prefetch" href="/assets/page--hSXKqyG.js"><link rel="prefetch" href="/assets/page-DfTsntQI.js"><link rel="prefetch" href="/assets/flavor-select-BTEwByv6.js"><link rel="prefetch" href="/assets/constants-DP3ZEnXH.js"><link rel="prefetch" href="/assets/arrow-left-CwgF2MEM.js"><link rel="prefetch" href="/assets/configuration-form-DBZSb0FV.js"><link rel="prefetch" href="/assets/terminal-square-DMtel8mb.js"><link rel="prefetch" href="/assets/index-wYtmKLnQ.js"><link rel="prefetch" href="/assets/InlineAvatar-Cpj0lVRQ.js"><link rel="prefetch" href="/assets/DisplayDate-CYVBBSgr.js"><link rel="prefetch" href="/assets/index-DR30v9MZ.js"><link rel="prefetch" href="/assets/page-Dt3wHeWX.js"><link rel="prefetch" href="/assets/Lock-DW-0_M0o.js"><link rel="prefetch" href="/assets/components-Br2ezRib.js"><link rel="prefetch" href="/assets/dots-horizontal-BGRJCPCs.js"><link rel="prefetch" href="/assets/create-stack-BXLyjE58.js"><link rel="prefetch" href="/assets/index-D9-ukAem.js"><link rel="prefetch" href="/assets/type-guards-CaeD8wHO.js"><link rel="prefetch" href="/assets/trash-BWSZ7NRK.js"><link rel="prefetch" href="/assets/page-K9yjbnd4.js"><link rel="prefetch" href="/assets/persist-CEeDYHW5.js"><link rel="prefetch" href="/assets/Partials-BNBtCjuT.js"><link rel="prefetch" href="/assets/logs-B5n0U7tB.js"><link rel="prefetch" href="/assets/link-external-DUhCSKNm.js"><link rel="prefetch" href="/assets/NumberBox-D2A7ENHb.js"><link rel="prefetch" href="/assets/Infobox-Bai0JtFs.js"><link rel="prefetch" href="/assets/WizardFooter-dNDpuero.js"><link rel="prefetch" href="/assets/Wizard-DIllc07n.js"><link rel="prefetch" href="/assets/ProviderRadio-26EB5tY-.js"><link rel="prefetch" href="/assets/persist-SSTTV5q0.js"><link rel="prefetch" href="/assets/ComponentBadge-BgGnzcLu.js"><link rel="prefetch" href="/assets/ProviderIcon-kkODO9tx.js"><link rel="prefetch" href="/assets/sharedSchema-BACERDat.js"><link rel="prefetch" href="/assets/index-8uhUi12k.js"><link rel="prefetch" href="/assets/stack-detail-query-ihiJr6nq.js"><link rel="prefetch" href="/assets/ComponentIcon-B_7Y_oV-.js"><link rel="prefetch" href="/assets/layout-h3cbx8WZ.js"><link rel="prefetch" href="/assets/login-command-CkqxPtV3.js"><link rel="prefetch" href="/assets/CodeSnippet-Di-loaZu.js"><link rel="prefetch" href="/assets/zod-C0xYeTvL.js"><link rel="prefetch" href="/assets/index.esm-D7jFlf5N.js"><link rel="prefetch" href="/assets/ProCta-BoTLdAdV.js"><link rel="prefetch" href="/assets/check-DK77doTf.js"><link rel="prefetch" href="/assets/check-circle-mvyzYvIW.js"><link rel="prefetch" href="/assets/form-schemas-BJN_25Ua.js"><link rel="prefetch" href="/assets/EmptyState-M1jafpg6.js"><link rel="prefetch" href="/assets/UsageReason-C8sD2bOU.js"><link rel="prefetch" href="/assets/gcp-CHNvgEss.js"><link rel="prefetch" href="/assets/kubernetes-D6OUjwSK.js"><link rel="prefetch" href="/assets/rocket-Cf-B-XOR.js"><link rel="prefetch" href="/assets/UpdatePasswordSchemas-p3RX0P-Q.js"><link rel="prefetch" href="/assets/chevron-right-double-uNWbJT-C.js"><link rel="prefetch" href="/assets/plus-COjQg3AG.js"><link rel="prefetch" href="/assets/chevron-down-A-rmltmI.js"><link rel="prefetch" href="/assets/Error-vBjUYjb-.js"><link rel="prefetch" href="/assets/Helpbox-Dt3q7NGd.js"><link rel="prefetch" href="/assets/help-DyMolRxD.js"><link rel="prefetch" href="/assets/Tick-ay3Bgtro.js"><link rel="prefetch" href="/assets/file-text-BdxZdjP_.js"><link rel="prefetch" href="/assets/package-D1Mhqeh8.js"><link rel="prefetch" href="/assets/page-DHnkTzqs.js"><link rel="prefetch" href="/assets/page-B7Aj2XbV.js"><link rel="prefetch" href="/assets/ProBadge-3vtouJQf.js"><link rel="prefetch" href="/assets/page-DP2Ed-2m.js"><link rel="prefetch" href="/assets/page-RV8wpZ_4.js"><link rel="prefetch" href="/assets/page-Ci_n_x3a.js"><link rel="prefetch" href="/assets/404-D4aYbspS.js"><link rel="prefetch" href="/assets/CsvVizualization-CDrjL6bW.js"><link rel="prefetch" href="/assets/MarkdownVisualization-URCyUPcZ.js"></head>
|
16
16
|
<body>
|
17
17
|
<div id="root"></div>
|
18
18
|
</body>
|
@@ -80,7 +80,7 @@ class DaemonServerDeploymentConfig(LocalServerDeploymentConfig):
|
|
80
80
|
"""
|
81
81
|
return f"http://{self.ip_address}:{self.port}"
|
82
82
|
|
83
|
-
model_config = ConfigDict(extra="
|
83
|
+
model_config = ConfigDict(extra="ignore")
|
84
84
|
|
85
85
|
|
86
86
|
class DaemonZenServerConfig(LocalDaemonServiceConfig):
|
@@ -82,7 +82,7 @@ class DockerServerDeploymentConfig(LocalServerDeploymentConfig):
|
|
82
82
|
"""
|
83
83
|
return f"http://{DEFAULT_LOCAL_SERVICE_IP_ADDRESS}:{self.port}"
|
84
84
|
|
85
|
-
model_config = ConfigDict(extra="
|
85
|
+
model_config = ConfigDict(extra="ignore")
|
86
86
|
|
87
87
|
|
88
88
|
class DockerZenServerConfig(ContainerServiceConfig):
|
@@ -47,10 +47,11 @@ from zenml.zen_server.rbac.endpoint_utils import (
|
|
47
47
|
verify_permissions_and_create_entity,
|
48
48
|
verify_permissions_and_delete_entity,
|
49
49
|
)
|
50
|
-
from zenml.zen_server.rbac.models import Action
|
50
|
+
from zenml.zen_server.rbac.models import Action, ResourceType
|
51
51
|
from zenml.zen_server.rbac.utils import (
|
52
52
|
dehydrate_page,
|
53
53
|
dehydrate_response_model,
|
54
|
+
get_allowed_resource_ids,
|
54
55
|
verify_permission_for_model,
|
55
56
|
)
|
56
57
|
from zenml.zen_server.routers.models_endpoints import (
|
@@ -147,33 +148,23 @@ def list_model_versions(
|
|
147
148
|
|
148
149
|
Returns:
|
149
150
|
The model versions according to query filters.
|
150
|
-
|
151
|
-
Raises:
|
152
|
-
ValueError: If the model is missing from the filter.
|
153
151
|
"""
|
154
|
-
if model_name_or_id:
|
155
|
-
model_version_filter_model.model = model_name_or_id
|
156
|
-
|
157
|
-
if not model_version_filter_model.model:
|
158
|
-
raise ValueError("Model missing from the filter")
|
159
|
-
|
160
152
|
# A project scoped request must always be scoped to a specific
|
161
153
|
# project. This is required for the RBAC check to work.
|
162
154
|
set_filter_project_scope(model_version_filter_model)
|
163
155
|
assert isinstance(model_version_filter_model.project, UUID)
|
164
156
|
|
165
|
-
|
166
|
-
model_version_filter_model.model
|
167
|
-
project=model_version_filter_model.project,
|
168
|
-
)
|
169
|
-
|
170
|
-
# Check read permissions on the model
|
171
|
-
verify_permission_for_model(model, action=Action.READ)
|
157
|
+
if model_name_or_id:
|
158
|
+
model_version_filter_model.model = model_name_or_id
|
172
159
|
|
160
|
+
allowed_model_ids = get_allowed_resource_ids(
|
161
|
+
resource_type=ResourceType.MODEL,
|
162
|
+
project_id=model_version_filter_model.project,
|
163
|
+
)
|
173
164
|
model_version_filter_model.configure_rbac(
|
174
|
-
authenticated_user_id=auth_context.user.id
|
165
|
+
authenticated_user_id=auth_context.user.id,
|
166
|
+
model_id=allowed_model_ids,
|
175
167
|
)
|
176
|
-
|
177
168
|
model_versions = zen_store().list_model_versions(
|
178
169
|
model_version_filter_model=model_version_filter_model,
|
179
170
|
hydrate=hydrate,
|
@@ -161,6 +161,7 @@ def get_run(
|
|
161
161
|
run_id: UUID,
|
162
162
|
hydrate: bool = True,
|
163
163
|
refresh_status: bool = False,
|
164
|
+
include_python_packages: bool = False,
|
164
165
|
_: AuthContext = Security(authorize),
|
165
166
|
) -> PipelineRunResponse:
|
166
167
|
"""Get a specific pipeline run using its ID.
|
@@ -171,6 +172,8 @@ def get_run(
|
|
171
172
|
by including metadata fields in the response.
|
172
173
|
refresh_status: Flag deciding whether we should try to refresh
|
173
174
|
the status of the pipeline run using its orchestrator.
|
175
|
+
include_python_packages: Flag deciding whether to include the
|
176
|
+
Python packages in the response.
|
174
177
|
|
175
178
|
Returns:
|
176
179
|
The pipeline run.
|
@@ -179,7 +182,10 @@ def get_run(
|
|
179
182
|
RuntimeError: If the stack or the orchestrator of the run is deleted.
|
180
183
|
"""
|
181
184
|
run = verify_permissions_and_get_entity(
|
182
|
-
id=run_id,
|
185
|
+
id=run_id,
|
186
|
+
get_method=zen_store().get_run,
|
187
|
+
hydrate=hydrate,
|
188
|
+
include_python_packages=include_python_packages,
|
183
189
|
)
|
184
190
|
if refresh_status:
|
185
191
|
try:
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"""Release [0.82.0].
|
2
|
+
|
3
|
+
Revision ID: 0.82.0
|
4
|
+
Revises: 0.81.0
|
5
|
+
Create Date: 2025-04-30 14:10:24.569601
|
6
|
+
|
7
|
+
"""
|
8
|
+
|
9
|
+
# revision identifiers, used by Alembic.
|
10
|
+
revision = "0.82.0"
|
11
|
+
down_revision = "0.81.0"
|
12
|
+
branch_labels = None
|
13
|
+
depends_on = None
|
14
|
+
|
15
|
+
|
16
|
+
def upgrade() -> None:
|
17
|
+
"""Upgrade database schema and/or data, creating a new revision."""
|
18
|
+
pass
|
19
|
+
|
20
|
+
|
21
|
+
def downgrade() -> None:
|
22
|
+
"""Downgrade database schema and/or data back to the previous revision."""
|
23
|
+
pass
|
@@ -24,7 +24,8 @@ from sqlmodel import Field, Relationship
|
|
24
24
|
from zenml.config.pipeline_configurations import PipelineConfiguration
|
25
25
|
from zenml.config.pipeline_spec import PipelineSpec
|
26
26
|
from zenml.config.step_configurations import Step
|
27
|
-
from zenml.constants import MEDIUMTEXT_MAX_LENGTH
|
27
|
+
from zenml.constants import MEDIUMTEXT_MAX_LENGTH, TEXT_FIELD_MAX_LENGTH
|
28
|
+
from zenml.logger import get_logger
|
28
29
|
from zenml.models import (
|
29
30
|
PipelineDeploymentRequest,
|
30
31
|
PipelineDeploymentResponse,
|
@@ -48,6 +49,8 @@ if TYPE_CHECKING:
|
|
48
49
|
from zenml.zen_stores.schemas.pipeline_run_schemas import PipelineRunSchema
|
49
50
|
from zenml.zen_stores.schemas.step_run_schemas import StepRunSchema
|
50
51
|
|
52
|
+
logger = get_logger(__name__)
|
53
|
+
|
51
54
|
|
52
55
|
class PipelineDeploymentSchema(BaseSchema, table=True):
|
53
56
|
"""SQL Model for pipeline deployments."""
|
@@ -185,6 +188,14 @@ class PipelineDeploymentSchema(BaseSchema, table=True):
|
|
185
188
|
Returns:
|
186
189
|
The created `PipelineDeploymentSchema`.
|
187
190
|
"""
|
191
|
+
client_env = json.dumps(request.client_environment)
|
192
|
+
if len(client_env) > TEXT_FIELD_MAX_LENGTH:
|
193
|
+
logger.warning(
|
194
|
+
"Client environment is too large to be stored in the database. "
|
195
|
+
"Skipping."
|
196
|
+
)
|
197
|
+
client_env = "{}"
|
198
|
+
|
188
199
|
return cls(
|
189
200
|
stack_id=request.stack,
|
190
201
|
project_id=request.project,
|
@@ -201,7 +212,7 @@ class PipelineDeploymentSchema(BaseSchema, table=True):
|
|
201
212
|
sort_keys=False,
|
202
213
|
default=pydantic_encoder,
|
203
214
|
),
|
204
|
-
client_environment=
|
215
|
+
client_environment=client_env,
|
205
216
|
client_version=request.client_version,
|
206
217
|
server_version=request.server_version,
|
207
218
|
pipeline_version_hash=request.pipeline_version_hash,
|
@@ -217,6 +228,7 @@ class PipelineDeploymentSchema(BaseSchema, table=True):
|
|
217
228
|
self,
|
218
229
|
include_metadata: bool = False,
|
219
230
|
include_resources: bool = False,
|
231
|
+
include_python_packages: bool = False,
|
220
232
|
**kwargs: Any,
|
221
233
|
) -> PipelineDeploymentResponse:
|
222
234
|
"""Convert a `PipelineDeploymentSchema` to a `PipelineDeploymentResponse`.
|
@@ -224,6 +236,7 @@ class PipelineDeploymentSchema(BaseSchema, table=True):
|
|
224
236
|
Args:
|
225
237
|
include_metadata: Whether the metadata will be filled.
|
226
238
|
include_resources: Whether the resources will be filled.
|
239
|
+
include_python_packages: Whether the python packages will be filled.
|
227
240
|
**kwargs: Keyword arguments to allow schema specific logic
|
228
241
|
|
229
242
|
|
@@ -244,12 +257,16 @@ class PipelineDeploymentSchema(BaseSchema, table=True):
|
|
244
257
|
for s, c in step_configurations.items():
|
245
258
|
step_configurations[s] = Step.model_validate(c)
|
246
259
|
|
260
|
+
client_environment = json.loads(self.client_environment)
|
261
|
+
if not include_python_packages:
|
262
|
+
client_environment.pop("python_packages", None)
|
263
|
+
|
247
264
|
metadata = PipelineDeploymentResponseMetadata(
|
248
265
|
project=self.project.to_model(),
|
249
266
|
run_name_template=self.run_name_template,
|
250
267
|
pipeline_configuration=pipeline_configuration,
|
251
268
|
step_configurations=step_configurations,
|
252
|
-
client_environment=
|
269
|
+
client_environment=client_environment,
|
253
270
|
client_version=self.client_version,
|
254
271
|
server_version=self.server_version,
|
255
272
|
pipeline=self.pipeline.to_model() if self.pipeline else None,
|
@@ -23,11 +23,13 @@ from sqlalchemy import UniqueConstraint
|
|
23
23
|
from sqlmodel import TEXT, Column, Field, Relationship
|
24
24
|
|
25
25
|
from zenml.config.pipeline_configurations import PipelineConfiguration
|
26
|
+
from zenml.constants import TEXT_FIELD_MAX_LENGTH
|
26
27
|
from zenml.enums import (
|
27
28
|
ExecutionStatus,
|
28
29
|
MetadataResourceTypes,
|
29
30
|
TaggableResourceTypes,
|
30
31
|
)
|
32
|
+
from zenml.logger import get_logger
|
31
33
|
from zenml.models import (
|
32
34
|
PipelineRunRequest,
|
33
35
|
PipelineRunResponse,
|
@@ -64,6 +66,8 @@ if TYPE_CHECKING:
|
|
64
66
|
from zenml.zen_stores.schemas.step_run_schemas import StepRunSchema
|
65
67
|
from zenml.zen_stores.schemas.tag_schemas import TagSchema
|
66
68
|
|
69
|
+
logger = get_logger(__name__)
|
70
|
+
|
67
71
|
|
68
72
|
class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
69
73
|
"""SQL Model for pipeline runs."""
|
@@ -239,6 +243,12 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
239
243
|
The created `PipelineRunSchema`.
|
240
244
|
"""
|
241
245
|
orchestrator_environment = json.dumps(request.orchestrator_environment)
|
246
|
+
if len(orchestrator_environment) > TEXT_FIELD_MAX_LENGTH:
|
247
|
+
logger.warning(
|
248
|
+
"Orchestrator environment is too large to be stored in the "
|
249
|
+
"database. Skipping."
|
250
|
+
)
|
251
|
+
orchestrator_environment = "{}"
|
242
252
|
|
243
253
|
return cls(
|
244
254
|
project_id=request.project,
|
@@ -282,6 +292,7 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
282
292
|
self,
|
283
293
|
include_metadata: bool = False,
|
284
294
|
include_resources: bool = False,
|
295
|
+
include_python_packages: bool = False,
|
285
296
|
**kwargs: Any,
|
286
297
|
) -> "PipelineRunResponse":
|
287
298
|
"""Convert a `PipelineRunSchema` to a `PipelineRunResponse`.
|
@@ -289,6 +300,7 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
289
300
|
Args:
|
290
301
|
include_metadata: Whether the metadata will be filled.
|
291
302
|
include_resources: Whether the resources will be filled.
|
303
|
+
include_python_packages: Whether the python packages will be filled.
|
292
304
|
**kwargs: Keyword arguments to allow schema specific logic
|
293
305
|
|
294
306
|
|
@@ -299,7 +311,10 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
299
311
|
RuntimeError: if the model creation fails.
|
300
312
|
"""
|
301
313
|
if self.deployment is not None:
|
302
|
-
deployment = self.deployment.to_model(
|
314
|
+
deployment = self.deployment.to_model(
|
315
|
+
include_metadata=True,
|
316
|
+
include_python_packages=include_python_packages,
|
317
|
+
)
|
303
318
|
|
304
319
|
config = deployment.pipeline_configuration
|
305
320
|
new_substitutions = config._get_full_substitutions(self.start_time)
|
@@ -383,6 +398,11 @@ class PipelineRunSchema(NamedSchema, RunMetadataInterface, table=True):
|
|
383
398
|
if self.orchestrator_environment
|
384
399
|
else {}
|
385
400
|
)
|
401
|
+
|
402
|
+
if not include_python_packages:
|
403
|
+
client_environment.pop("python_packages", None)
|
404
|
+
orchestrator_environment.pop("python_packages", None)
|
405
|
+
|
386
406
|
metadata = PipelineRunResponseMetadata(
|
387
407
|
project=self.project.to_model(),
|
388
408
|
run_metadata=self.fetch_metadata(),
|
@@ -68,7 +68,7 @@ class HashiCorpVaultSecretsStoreConfiguration(SecretsStoreConfiguration):
|
|
68
68
|
vault_namespace: Optional[str] = None
|
69
69
|
mount_point: Optional[str] = None
|
70
70
|
max_versions: int = 1
|
71
|
-
model_config = ConfigDict(extra="
|
71
|
+
model_config = ConfigDict(extra="ignore")
|
72
72
|
|
73
73
|
|
74
74
|
class HashiCorpVaultSecretsStore(BaseSecretsStore):
|