@stacksjs/ts-cloud 0.16.84 → 0.16.86

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/aws/index.js +1 -1
  2. package/dist/bin/{chunk-sbm0ft8c.js → chunk-0e56zmps.js} +1 -1
  3. package/dist/bin/{chunk-vr9jcw65.js → chunk-1vw6khps.js} +1 -1
  4. package/dist/bin/{chunk-j1dpdjec.js → chunk-2dbyh1g2.js} +5 -5
  5. package/dist/bin/{chunk-b61yq5rn.js → chunk-4k2x5x3k.js} +1 -1
  6. package/dist/bin/{chunk-c4krzg7x.js → chunk-4mep3m41.js} +1 -1
  7. package/dist/bin/{chunk-7477zgt9.js → chunk-6wvjr3ne.js} +1 -1
  8. package/dist/bin/{chunk-kvwm9z1r.js → chunk-71fa7yed.js} +1 -1
  9. package/dist/bin/{chunk-hkgbbph1.js → chunk-76ekkat8.js} +1 -1
  10. package/dist/bin/chunk-7aqzsbak.js +1 -0
  11. package/dist/bin/{chunk-7yhy2a7h.js → chunk-86w3vzx8.js} +1 -1
  12. package/dist/bin/chunk-8tfqpp9m.js +1 -0
  13. package/dist/bin/{chunk-5xvvxh1f.js → chunk-9bmaq8q7.js} +8 -8
  14. package/dist/bin/chunk-9tt7ahdf.js +1 -0
  15. package/dist/bin/{chunk-08sws53b.js → chunk-bxks81wn.js} +2 -2
  16. package/dist/bin/{chunk-9p6hkb64.js → chunk-bycbwddj.js} +1 -1
  17. package/dist/bin/{chunk-mhmvr5w3.js → chunk-em9swj0k.js} +1 -1
  18. package/dist/bin/{chunk-2bghtp9b.js → chunk-ff3x4pgw.js} +1 -1
  19. package/dist/bin/{chunk-r5zsebn5.js → chunk-g9820x34.js} +28 -28
  20. package/dist/bin/{chunk-8dzqjsz1.js → chunk-mwprtzxp.js} +1 -1
  21. package/dist/bin/chunk-ndjpa2tq.js +1 -0
  22. package/dist/bin/{chunk-yd2vnd4y.js → chunk-ndvma07s.js} +1 -1
  23. package/dist/bin/{chunk-ydbvafmk.js → chunk-nemj07g1.js} +1 -1
  24. package/dist/bin/{chunk-rpsnnr53.js → chunk-nfxxr6g7.js} +1 -1
  25. package/dist/bin/{chunk-f1jkvaxm.js → chunk-v1a0b9yq.js} +8 -8
  26. package/dist/bin/{chunk-8erhr0vh.js → chunk-v3trt4q1.js} +2 -2
  27. package/dist/bin/{chunk-cbb6wqqz.js → chunk-xkp5r2ye.js} +90 -90
  28. package/dist/bin/{chunk-eqw1dk00.js → chunk-xycxw00z.js} +7 -7
  29. package/dist/bin/cli.js +147 -147
  30. package/dist/bin/dashboard-server.js +1 -1
  31. package/dist/chunk-03gf4e58.js +1 -0
  32. package/dist/{chunk-pbkev5pe.js → chunk-2yqvgbmn.js} +39 -39
  33. package/dist/{chunk-q61qcpp4.js → chunk-3bvhthfb.js} +14 -14
  34. package/dist/{chunk-42vtybcm.js → chunk-4pztf7ws.js} +3 -3
  35. package/dist/{chunk-rq650jaz.js → chunk-5t92a838.js} +10 -10
  36. package/dist/{chunk-18dqxyz5.js → chunk-8kn7rszy.js} +1 -1
  37. package/dist/{chunk-8drf81qf.js → chunk-ax320pn8.js} +1 -1
  38. package/dist/{chunk-dvw5dy32.js → chunk-cq079p4a.js} +4 -4
  39. package/dist/{chunk-pk8ppz98.js → chunk-e75dvdqf.js} +2 -2
  40. package/dist/{chunk-0f23y8ba.js → chunk-fpad8xw9.js} +1 -1
  41. package/dist/{chunk-cz4dw2hk.js → chunk-gdw52mn4.js} +2 -2
  42. package/dist/{chunk-bhbv9qqn.js → chunk-gpgmp9dt.js} +1 -1
  43. package/dist/{chunk-kcb203be.js → chunk-m35z9vyn.js} +1 -1
  44. package/dist/{chunk-tb5hy7rm.js → chunk-ncet7ba7.js} +1 -1
  45. package/dist/{chunk-7ea0q5tg.js → chunk-py8dq1ey.js} +4 -4
  46. package/dist/{chunk-rec9q5vz.js → chunk-s56rah0t.js} +99 -99
  47. package/dist/{chunk-xyhh44eq.js → chunk-tr54e9c0.js} +1 -1
  48. package/dist/deploy/index.js +1 -1
  49. package/dist/dns/index.js +1 -1
  50. package/dist/drivers/hetzner/client.d.ts +6 -0
  51. package/dist/drivers/hetzner/driver.d.ts +1 -0
  52. package/dist/drivers/hetzner/reverse-dns.d.ts +6 -0
  53. package/dist/drivers/index.js +1 -1
  54. package/dist/index.js +16 -16
  55. package/dist/mail/index.js +1 -1
  56. package/dist/operations/index.js +1 -1
  57. package/dist/protection/index.js +1 -1
  58. package/dist/spend/index.js +1 -1
  59. package/dist/ui/404.html +1 -1
  60. package/dist/ui/accept-invitation.html +1 -1
  61. package/dist/ui/access-denied.html +1 -1
  62. package/dist/ui/account/automation.html +5 -5
  63. package/dist/ui/account/security.html +2 -2
  64. package/dist/ui/applications/compose.html +6 -6
  65. package/dist/ui/applications/new.html +2 -2
  66. package/dist/ui/data/backups.html +6 -6
  67. package/dist/ui/data/services.html +6 -6
  68. package/dist/ui/data/volumes.html +6 -6
  69. package/dist/ui/index.html +6 -6
  70. package/dist/ui/infrastructure/topology.html +5 -5
  71. package/dist/ui/integrations.html +1 -1
  72. package/dist/ui/operations/alerts.html +6 -6
  73. package/dist/ui/operations/configuration.html +6 -6
  74. package/dist/ui/operations/jobs.html +6 -6
  75. package/dist/ui/operations/maintenance.html +5 -5
  76. package/dist/ui/operations/observability.html +6 -6
  77. package/dist/ui/operations/previews.html +6 -6
  78. package/dist/ui/operations/queue.html +6 -6
  79. package/dist/ui/operations/regions.html +5 -5
  80. package/dist/ui/operations/releases.html +6 -6
  81. package/dist/ui/operations/spend.html +5 -5
  82. package/dist/ui/operations/workloads.html +6 -6
  83. package/dist/ui/security.html +1 -1
  84. package/dist/ui/server/actions.html +6 -6
  85. package/dist/ui/server/activity.html +2 -2
  86. package/dist/ui/server/capacity.html +5 -5
  87. package/dist/ui/server/database.html +5 -5
  88. package/dist/ui/server/deployments.html +6 -6
  89. package/dist/ui/server/diagnostics.html +2 -2
  90. package/dist/ui/server/firewall.html +6 -6
  91. package/dist/ui/server/fleet.html +6 -6
  92. package/dist/ui/server/logs.html +6 -6
  93. package/dist/ui/server/metrics.html +6 -6
  94. package/dist/ui/server/security.html +2 -2
  95. package/dist/ui/server/services.html +1 -1
  96. package/dist/ui/server/sites.html +6 -6
  97. package/dist/ui/server/ssh-keys.html +6 -6
  98. package/dist/ui/server/team.html +6 -6
  99. package/dist/ui/server/terminal.html +2 -2
  100. package/dist/ui/serverless/alarms.html +6 -6
  101. package/dist/ui/serverless/assets.html +2 -2
  102. package/dist/ui/serverless/cost.html +2 -2
  103. package/dist/ui/serverless/data.html +6 -6
  104. package/dist/ui/serverless/deployments.html +2 -2
  105. package/dist/ui/serverless/firewall.html +1 -1
  106. package/dist/ui/serverless/functions.html +6 -6
  107. package/dist/ui/serverless/logs.html +6 -6
  108. package/dist/ui/serverless/metrics.html +2 -2
  109. package/dist/ui/serverless/queues.html +6 -6
  110. package/dist/ui/serverless/secrets.html +6 -6
  111. package/dist/ui/serverless/traces.html +6 -6
  112. package/dist/ui/serverless.html +5 -5
  113. package/package.json +3 -3
  114. package/dist/bin/chunk-1nnt30xt.js +0 -1
  115. package/dist/bin/chunk-24g6snzv.js +0 -1
  116. package/dist/bin/chunk-4a9p7fd0.js +0 -1
  117. package/dist/bin/chunk-q82s4yzg.js +0 -1
  118. package/dist/chunk-2ntc2qz2.js +0 -1
@@ -1,2 +1,2 @@
1
- import{K,ol}from"./chunk-q61qcpp4.js";function U(t,s){return`/var/www/${t}-${s}`}var y=new Set(["laravel","php","statamic","wordpress"]);function zr(t){return t.type!=null&&y.has(t.type)}function Kr(t){let s=t.proxyTo;if(s==null)return[];return(Array.isArray(s)?s:[s]).map((n)=>String(n).trim()).filter((n)=>n.length>0)}function Ad(t){return Kr(t).length>0}function Ao(t){if(t.deploy)return t.deploy;if(zr(t))return"server";if(t.start)return"server";return"bucket"}function d(t){if(t.redirect)return"redirect";if(Ad(t))return"proxy";if(zr(t))return"server-php";if(Ao(t)==="bucket")return"bucket";return t.start?"server-app":"server-static"}function RA(t){return t.infrastructure?.compute!=null||Boolean(t.cloud?.attachTo?.trim())}function zp(t,s={}){let r=[],n=[],a=t.sites||{},p=RA(t),l=ol(t);if(l)r.push(l);let f=new Map;for(let[o,e]of Object.entries(a)){if(!e)continue;let h=Ao(e),c=d(e);if(c==="redirect"){if(!e.domain)r.push(`Site '${o}' is a redirect site but has no \`domain\` to redirect from.`);if(!(typeof e.redirect==="string"?e.redirect:e.redirect?.to))r.push(`Site '${o}' is a redirect site but has no redirect target (\`redirect\` / \`redirect.to\`).`);if(!p)r.push(`Site '${o}' is a redirect site but no \`infrastructure.compute\` is configured to host the gateway that serves the redirect.`);let u=[];if(e.start)u.push("start");if(e.root)u.push("root");if(e.proxyTo)u.push("proxyTo");if(u.length>0)n.push(`Site '${o}' is a redirect site but also sets ${u.join(", ")}. These are ignored.`);continue}if(c==="proxy"){if(!e.domain)r.push(`Site '${o}' is a proxy site but has no \`domain\` to route from.`);if(!p)r.push(`Site '${o}' is a proxy site but no \`infrastructure.compute\` is configured to host the gateway that forwards it.`);let i=[];if(e.start)i.push("start");if(e.root)i.push("root");if(typeof e.port==="number")i.push("port");if(e.build)i.push("build");if(e.preStart&&e.preStart.length>0)i.push("preStart");if(i.length>0)n.push(`Site '${o}' sets \`proxyTo\`, so ts-cloud ships and supervises nothing for it. ${i.join(", ")} ${i.length===1?"is":"are"} ignored — remove ${i.length===1?"it":"them"}, or drop \`proxyTo\` to let ts-cloud own the service.`);continue}if(h==="server"&&!e.start&&!e.root){r.push(`Site '${o}' sets deploy:'server' but declares neither \`start\` (dynamic app) nor \`root\` (static site to serve). Add one.`);continue}if(c==="server-php"){if(!p)r.push(`Site '${o}' is a PHP site (type:'${e.type}') but no \`infrastructure.compute\` is configured. Add a server (infrastructure.compute) with PHP provisioning.`);if(!e.repository?.url)r.push(`Site '${o}' is a PHP site (type:'${e.type}') but has no \`repository.url\` to clone. PHP sites deploy via git.`)}else if(c==="server-app"){if(!p)r.push(`Site '${o}' deploys to a server (deploy:'server'${e.deploy?"":" inferred from `start`"}) but no \`infrastructure.compute\` is configured. Set deploy:'bucket' or add a server (infrastructure.compute).`);if(typeof e.port==="number"){let i=s.occupiedPorts?.get(e.port);if(i)r.push(`Site '${o}' wants port ${e.port}, which project '${i}' already serves on this box. Attached projects share one port namespace. Give '${o}' a free port, or let the attach allocate one.`);let u=f.get(e.port);if(u)r.push(`Sites '${u}' and '${o}' both use port ${e.port}. Server apps sharing a box must use distinct ports.`);else f.set(e.port,o)}}else if(c==="server-static"){if(!e.root)r.push(`Site '${o}' is a server static site (deploy:'server', no \`start\`) but has no \`root\` directory to serve.`);if(!p)r.push(`Site '${o}' deploys to a server (deploy:'server') but no \`infrastructure.compute\` is configured. Set deploy:'bucket' or add a server (infrastructure.compute).`)}else{if(!e.root)r.push(`Site '${o}' deploys to a bucket but has no \`root\` directory to upload.`);let i=[];if(e.start)i.push("start");if(typeof e.port==="number")i.push("port");if(e.preStart&&e.preStart.length>0)i.push("preStart");if(i.length>0)n.push(`Site '${o}' deploys to a bucket but sets server-only field(s): ${i.join(", ")}. These are ignored. Set deploy:'server' to use them.`)}}return{errors:r,warnings:n}}function Kp(t){let s=d(t);return s!=="bucket"&&s!=="redirect"&&s!=="proxy"}function NI(t){return d(t)==="bucket"}function BI(t,s){if(K(t)==="serverless")return!0;let r=Object.entries(t.sites??{}).filter(([,a])=>a!=null),n=s?r.filter(([a])=>a===s):r;if(n.length===0)return!0;return!n.every(([,a])=>{let p=d(a);return p==="redirect"||p==="proxy"})}
1
+ import{K,ol}from"./chunk-3bvhthfb.js";function U(t,s){return`/var/www/${t}-${s}`}var y=new Set(["laravel","php","statamic","wordpress"]);function zr(t){return t.type!=null&&y.has(t.type)}function Kr(t){let s=t.proxyTo;if(s==null)return[];return(Array.isArray(s)?s:[s]).map((n)=>String(n).trim()).filter((n)=>n.length>0)}function Ad(t){return Kr(t).length>0}function Ao(t){if(t.deploy)return t.deploy;if(zr(t))return"server";if(t.start)return"server";return"bucket"}function d(t){if(t.redirect)return"redirect";if(Ad(t))return"proxy";if(zr(t))return"server-php";if(Ao(t)==="bucket")return"bucket";return t.start?"server-app":"server-static"}function RA(t){return t.infrastructure?.compute!=null||Boolean(t.cloud?.attachTo?.trim())}function zp(t,s={}){let r=[],n=[],a=t.sites||{},p=RA(t),l=ol(t);if(l)r.push(l);let f=new Map;for(let[o,e]of Object.entries(a)){if(!e)continue;let h=Ao(e),c=d(e);if(c==="redirect"){if(!e.domain)r.push(`Site '${o}' is a redirect site but has no \`domain\` to redirect from.`);if(!(typeof e.redirect==="string"?e.redirect:e.redirect?.to))r.push(`Site '${o}' is a redirect site but has no redirect target (\`redirect\` / \`redirect.to\`).`);if(!p)r.push(`Site '${o}' is a redirect site but no \`infrastructure.compute\` is configured to host the gateway that serves the redirect.`);let u=[];if(e.start)u.push("start");if(e.root)u.push("root");if(e.proxyTo)u.push("proxyTo");if(u.length>0)n.push(`Site '${o}' is a redirect site but also sets ${u.join(", ")}. These are ignored.`);continue}if(c==="proxy"){if(!e.domain)r.push(`Site '${o}' is a proxy site but has no \`domain\` to route from.`);if(!p)r.push(`Site '${o}' is a proxy site but no \`infrastructure.compute\` is configured to host the gateway that forwards it.`);let i=[];if(e.start)i.push("start");if(e.root)i.push("root");if(typeof e.port==="number")i.push("port");if(e.build)i.push("build");if(e.preStart&&e.preStart.length>0)i.push("preStart");if(i.length>0)n.push(`Site '${o}' sets \`proxyTo\`, so ts-cloud ships and supervises nothing for it. ${i.join(", ")} ${i.length===1?"is":"are"} ignored — remove ${i.length===1?"it":"them"}, or drop \`proxyTo\` to let ts-cloud own the service.`);continue}if(h==="server"&&!e.start&&!e.root){r.push(`Site '${o}' sets deploy:'server' but declares neither \`start\` (dynamic app) nor \`root\` (static site to serve). Add one.`);continue}if(c==="server-php"){if(!p)r.push(`Site '${o}' is a PHP site (type:'${e.type}') but no \`infrastructure.compute\` is configured. Add a server (infrastructure.compute) with PHP provisioning.`);if(!e.repository?.url)r.push(`Site '${o}' is a PHP site (type:'${e.type}') but has no \`repository.url\` to clone. PHP sites deploy via git.`)}else if(c==="server-app"){if(!p)r.push(`Site '${o}' deploys to a server (deploy:'server'${e.deploy?"":" inferred from `start`"}) but no \`infrastructure.compute\` is configured. Set deploy:'bucket' or add a server (infrastructure.compute).`);if(typeof e.port==="number"){let i=s.occupiedPorts?.get(e.port);if(i)r.push(`Site '${o}' wants port ${e.port}, which project '${i}' already serves on this box. Attached projects share one port namespace. Give '${o}' a free port, or let the attach allocate one.`);let u=f.get(e.port);if(u)r.push(`Sites '${u}' and '${o}' both use port ${e.port}. Server apps sharing a box must use distinct ports.`);else f.set(e.port,o)}}else if(c==="server-static"){if(!e.root)r.push(`Site '${o}' is a server static site (deploy:'server', no \`start\`) but has no \`root\` directory to serve.`);if(!p)r.push(`Site '${o}' deploys to a server (deploy:'server') but no \`infrastructure.compute\` is configured. Set deploy:'bucket' or add a server (infrastructure.compute).`)}else{if(!e.root)r.push(`Site '${o}' deploys to a bucket but has no \`root\` directory to upload.`);let i=[];if(e.start)i.push("start");if(typeof e.port==="number")i.push("port");if(e.preStart&&e.preStart.length>0)i.push("preStart");if(i.length>0)n.push(`Site '${o}' deploys to a bucket but sets server-only field(s): ${i.join(", ")}. These are ignored. Set deploy:'server' to use them.`)}}return{errors:r,warnings:n}}function Kp(t){let s=d(t);return s!=="bucket"&&s!=="redirect"&&s!=="proxy"}function NI(t){return d(t)==="bucket"}function BI(t,s){if(K(t)==="serverless")return!0;let r=Object.entries(t.sites??{}).filter(([,a])=>a!=null),n=s?r.filter(([a])=>a===s):r;if(n.length===0)return!0;return!n.every(([,a])=>{let p=d(a);return p==="redirect"||p==="proxy"})}
2
2
  export{U,zr,Kr,Ad,Ao,d,RA,zp,Kp,NI,BI};
@@ -1 +1 @@
1
- import{Pn,kn,Xu,bs,Yu,Zu,eg,Xa,tg,rg,Ah,ng,v,ig,Cs,Me,sg,og,jS,ag,cg,dg,lg,ug,yh,zS,KS,WS,Sh,Ih,JS,XS,bh,Ch,YS,Es,Cr,Ya,Nn,Bn,Er,lt,Qt,vs,Eh,xn,gg,pg,Za,ws,_n,Rs,pc}from"../chunk-pbkev5pe.js";import{mc,Ln,$n,Ds,Ps,ks,Ns,fc,hc}from"../chunk-dvw5dy32.js";import{Ac}from"../chunk-kcb203be.js";import"../chunk-7ea0q5tg.js";import"../chunk-nftqsker.js";import"../chunk-cz4dw2hk.js";import"../chunk-z56sccfh.js";import"../chunk-fdf181e6.js";import"../chunk-pk8ppz98.js";import"../chunk-c71hhcsb.js";import{Ng,Oc,Bg,De,_c,Yn,xg,Lc,id,ao,sd,tr,Ri,co}from"../chunk-rec9q5vz.js";import"../chunk-bhbv9qqn.js";import"../chunk-vq8bejep.js";import"../chunk-tmp2ym80.js";import"../chunk-c8kf2268.js";import"../chunk-m9szynnf.js";import{Tt,wA,hd,xi,Oi,_i,jp}from"../chunk-0f23y8ba.js";import{U,zr,Kr,Ad,Ao,d,RA,zp,Kp,NI,BI}from"../chunk-xyhh44eq.js";import"../chunk-rq650jaz.js";import"../chunk-q61qcpp4.js";import"../chunk-928z0h9b.js";export{wA as DEFAULT_SITE_PORT_RANGE,Tt as HOST_SITES_DIR,_c as IPV6_EXCLUDED_HOST_LABELS,id as MANAGEMENT_DASHBOARD_SITE,Pn as addSiteToCloudConfig,jp as allocateSitePorts,YS as buildAndPushContainerImage,Ac as buildAndPushServerlessImage,Cr as buildFunctionEnv,Oi as buildHostSitePortsScript,co as buildManagementDashboardArtifact,Qt as buildServerTopology,vs as buildServerlessTopology,Eh as buildTopology,Za as collectEgressMetrics,Ng as collectServerDnsDomains,Ch as createContainerImageDependencies,Sh as createExistingStaticFullStackDependencies,yh as createStaticApiOriginDependencies,_n as dashboardActions,ao as dashboardCredentialsFile,sg as dashboardPageRoutes,lg as deleteFailoverReplicaBuckets,fc as deleteStaticSite,JS as deployExistingStaticFullStack,Ya as deployServerlessApp,BI as deployShipsFiles,ug as deploySite,zS as deployStaticApiOrigin,Ps as deployStaticSite,hc as deployStaticSiteFull,Ln as deployStaticSiteWithExternalDns,$n as deployStaticSiteWithExternalDnsFull,gg as egressReportMetrics,v as ensureDashboardActor,ag as ensureFailoverReplicaBuckets,Ri as ensureManagementDashboard,XS as estimateExistingStaticFullStackMonthlyCost,WS as estimateStaticApiOriginMonthlyCost,pg as fetchEgressReport,Ih as generateExistingStaticFullStackTemplate,mc as generateExternalDnsStaticSiteTemplate,Ds as generateStaticSiteTemplate,cg as grantFailoverReplicaAccess,RA as hasComputeConfigured,Ad as hasProxyUpstream,bh as hashContainerContext,Yn as hostAcceptsIpv6,Es as infraEnvFromOutputs,ig as initializeDashboardControlPlane,Ns as invalidateCache,zr as isPhpSite,Xa as isValidHostname,De as normalizePublicIpv6,xi as occupiedHostPorts,_i as parseHostSiteFragments,hd as parseUpstreamPort,xg as reconcileAddressRecords,Nn as redeployServerlessApp,Bg as removeAddressRecords,kn as removeSiteFromCloudConfig,Oc as removeStaleServerAddressRecords,tg as renderAliasesValue,eg as renderEnvValue,rg as renderRedirectsValue,Ah as renderSiteSnippet,Yu as renderSslValue,Zu as renderStringValue,Rs as resolveDashboardAction,sd as resolveDashboardAuth,xn as resolveDashboardData,og as resolveLegacyDashboardRoute,Kr as resolveProxyUpstreams,Ao as resolveSiteDeployTarget,d as resolveSiteKind,tr as resolveUiSource,Bn as rollbackServerlessApp,jS as routesForDashboard,lt as runRemoteCommand,ws as sanitizeCloudConfig,dg as seedFailoverReplicas,ng as setAttachToInCloudConfig,Er as setMaintenance,bs as setSitePropertyInCloudConfig,Kp as shipsARelease,NI as shipsToBucket,U as siteInstallBase,pc as startLocalDashboardServer,Cs as synchronizeDashboardUsers,Me as trackDashboardOperation,Xu as updateSiteInCloudConfig,ks as uploadStaticFiles,zp as validateDeploymentConfig,Lc as verifyAddressRecord,KS as verifyStaticApiOrigin};
1
+ import{Pn,kn,Xu,bs,Yu,Zu,eg,Xa,tg,rg,Ah,ng,v,ig,Cs,Me,sg,og,jS,ag,cg,dg,lg,ug,yh,zS,KS,WS,Sh,Ih,JS,XS,bh,Ch,YS,Es,Cr,Ya,Nn,Bn,Er,lt,Qt,vs,Eh,xn,gg,pg,Za,ws,_n,Rs,pc}from"../chunk-2yqvgbmn.js";import{mc,Ln,$n,Ds,Ps,ks,Ns,fc,hc}from"../chunk-cq079p4a.js";import{Ac}from"../chunk-m35z9vyn.js";import"../chunk-py8dq1ey.js";import"../chunk-nftqsker.js";import"../chunk-gdw52mn4.js";import"../chunk-z56sccfh.js";import"../chunk-fdf181e6.js";import"../chunk-e75dvdqf.js";import"../chunk-c71hhcsb.js";import{Ng,Oc,Bg,se,_c,Yn,xg,Lc,id,ao,sd,tr,Ri,co}from"../chunk-s56rah0t.js";import"../chunk-gpgmp9dt.js";import"../chunk-vq8bejep.js";import"../chunk-tmp2ym80.js";import"../chunk-c8kf2268.js";import"../chunk-m9szynnf.js";import{Tt,wA,hd,xi,Oi,_i,jp}from"../chunk-fpad8xw9.js";import{U,zr,Kr,Ad,Ao,d,RA,zp,Kp,NI,BI}from"../chunk-tr54e9c0.js";import"../chunk-5t92a838.js";import"../chunk-3bvhthfb.js";import"../chunk-928z0h9b.js";export{wA as DEFAULT_SITE_PORT_RANGE,Tt as HOST_SITES_DIR,_c as IPV6_EXCLUDED_HOST_LABELS,id as MANAGEMENT_DASHBOARD_SITE,Pn as addSiteToCloudConfig,jp as allocateSitePorts,YS as buildAndPushContainerImage,Ac as buildAndPushServerlessImage,Cr as buildFunctionEnv,Oi as buildHostSitePortsScript,co as buildManagementDashboardArtifact,Qt as buildServerTopology,vs as buildServerlessTopology,Eh as buildTopology,Za as collectEgressMetrics,Ng as collectServerDnsDomains,Ch as createContainerImageDependencies,Sh as createExistingStaticFullStackDependencies,yh as createStaticApiOriginDependencies,_n as dashboardActions,ao as dashboardCredentialsFile,sg as dashboardPageRoutes,lg as deleteFailoverReplicaBuckets,fc as deleteStaticSite,JS as deployExistingStaticFullStack,Ya as deployServerlessApp,BI as deployShipsFiles,ug as deploySite,zS as deployStaticApiOrigin,Ps as deployStaticSite,hc as deployStaticSiteFull,Ln as deployStaticSiteWithExternalDns,$n as deployStaticSiteWithExternalDnsFull,gg as egressReportMetrics,v as ensureDashboardActor,ag as ensureFailoverReplicaBuckets,Ri as ensureManagementDashboard,XS as estimateExistingStaticFullStackMonthlyCost,WS as estimateStaticApiOriginMonthlyCost,pg as fetchEgressReport,Ih as generateExistingStaticFullStackTemplate,mc as generateExternalDnsStaticSiteTemplate,Ds as generateStaticSiteTemplate,cg as grantFailoverReplicaAccess,RA as hasComputeConfigured,Ad as hasProxyUpstream,bh as hashContainerContext,Yn as hostAcceptsIpv6,Es as infraEnvFromOutputs,ig as initializeDashboardControlPlane,Ns as invalidateCache,zr as isPhpSite,Xa as isValidHostname,se as normalizePublicIpv6,xi as occupiedHostPorts,_i as parseHostSiteFragments,hd as parseUpstreamPort,xg as reconcileAddressRecords,Nn as redeployServerlessApp,Bg as removeAddressRecords,kn as removeSiteFromCloudConfig,Oc as removeStaleServerAddressRecords,tg as renderAliasesValue,eg as renderEnvValue,rg as renderRedirectsValue,Ah as renderSiteSnippet,Yu as renderSslValue,Zu as renderStringValue,Rs as resolveDashboardAction,sd as resolveDashboardAuth,xn as resolveDashboardData,og as resolveLegacyDashboardRoute,Kr as resolveProxyUpstreams,Ao as resolveSiteDeployTarget,d as resolveSiteKind,tr as resolveUiSource,Bn as rollbackServerlessApp,jS as routesForDashboard,lt as runRemoteCommand,ws as sanitizeCloudConfig,dg as seedFailoverReplicas,ng as setAttachToInCloudConfig,Er as setMaintenance,bs as setSitePropertyInCloudConfig,Kp as shipsARelease,NI as shipsToBucket,U as siteInstallBase,pc as startLocalDashboardServer,Cs as synchronizeDashboardUsers,Me as trackDashboardOperation,Xu as updateSiteInCloudConfig,ks as uploadStaticFiles,zp as validateDeploymentConfig,Lc as verifyAddressRecord,KS as verifyStaticApiOrigin};
package/dist/dns/index.js CHANGED
@@ -1 +1 @@
1
- import{ft,Ae,Ge,H,Jt,Wn,Us,Qs,kr,Nr,Jn,Br,Hs,Gs,Vs,qs,ie,js,zs,Ks,Ws,ye,Js,Xs,Ys,N,Bc,Xn,xc}from"../chunk-pk8ppz98.js";import"../chunk-c71hhcsb.js";import"../chunk-m9szynnf.js";export{H as CloudflareProvider,Xn as DnsProviderFactory,Ge as GoDaddyProvider,ft as PROXIABLE_RECORD_TYPES,Ae as PorkbunProvider,ie as Route53Provider,ye as UnifiedDnsValidator,Vs as applyDeclaredZoneSettings,Ks as applyZoneMigration,N as createDnsProvider,Xs as createGoDaddyValidator,Js as createPorkbunValidator,Ys as createRoute53Validator,Br as delegateZone,Hs as delegateZoneFromConfig,Gs as describeDelegation,qs as describeZoneSettings,Bc as detectDnsProvider,xc as dnsProviders,js as exportRoute53Zone,kr as isNameserverRegistrar,Nr as isZoneHost,zs as planZoneMigration,Jt as policyTag,Wn as qualifyName,Qs as reconcileDeclaredRecords,Us as resolveDeclaredRecords,Jn as sameNameservers,Ws as verifyZoneParity};
1
+ import{ft,ye,Ge,H,Jt,Wn,Us,Qs,kr,Nr,Jn,Br,Hs,Gs,Vs,qs,ie,js,zs,Ks,Ws,Se,Js,Xs,Ys,N,Bc,Xn,xc}from"../chunk-e75dvdqf.js";import"../chunk-c71hhcsb.js";import"../chunk-m9szynnf.js";export{H as CloudflareProvider,Xn as DnsProviderFactory,Ge as GoDaddyProvider,ft as PROXIABLE_RECORD_TYPES,ye as PorkbunProvider,ie as Route53Provider,Se as UnifiedDnsValidator,Vs as applyDeclaredZoneSettings,Ks as applyZoneMigration,N as createDnsProvider,Xs as createGoDaddyValidator,Js as createPorkbunValidator,Ys as createRoute53Validator,Br as delegateZone,Hs as delegateZoneFromConfig,Gs as describeDelegation,qs as describeZoneSettings,Bc as detectDnsProvider,xc as dnsProviders,js as exportRoute53Zone,kr as isNameserverRegistrar,Nr as isZoneHost,zs as planZoneMigration,Jt as policyTag,Wn as qualifyName,Qs as reconcileDeclaredRecords,Us as resolveDeclaredRecords,Jn as sameNameservers,Ws as verifyZoneParity};
@@ -66,10 +66,15 @@ export interface HetznerServer {
66
66
  ipv4?: {
67
67
  ip: string;
68
68
  id?: number;
69
+ dns_ptr?: string;
69
70
  };
70
71
  ipv6?: {
71
72
  ip: string;
72
73
  id?: number;
74
+ dns_ptr?: Array<{
75
+ ip: string;
76
+ dns_ptr: string;
77
+ }>;
73
78
  };
74
79
  };
75
80
  private_net?: Array<{
@@ -281,6 +286,7 @@ export declare class HetznerClient {
281
286
  country: string;
282
287
  }>;
283
288
  getServer(id: number): Promise<HetznerServer>;
289
+ changeServerReverseDns(id: number, ip: string, hostname: string): Promise<HetznerAction>;
284
290
  listVolumes(): Promise<HetznerVolume[]>;
285
291
  getVolume(id: number): Promise<HetznerVolume>;
286
292
  createVolume(options: {
@@ -195,6 +195,7 @@ export declare class HetznerDriver implements CloudDriver {
195
195
  private sshBaseArgs;
196
196
  private scpToHost;
197
197
  private reconcileOwnedServices;
198
+ private reconcileReverseDns;
198
199
  private sshExec;
199
200
  }
200
201
  export declare function resolveHetznerDeployBucketName(slug: string, environment: string): string;
@@ -0,0 +1,6 @@
1
+ import type { HetznerServer } from './client';
2
+ /** Desired PTR changes, after the driver has verified ownership and residency. */
3
+ export declare function planServerReverseDns(server: HetznerServer, hostname?: string): Array<{
4
+ ip: string;
5
+ hostname: string;
6
+ }>;
@@ -1 +1 @@
1
- import{Zn,Xt,Or,Yt,_r,M,$r,ei,ti,Mr,Fr,Uh,Qh,Fg,Ug,Hh,Gh,Vh,Ur,ri,Qg,to,ni,ii,si,oi,ai,$c,Mc,ci,Qr,Ie,Fc,At,Uc,di,Qc,Hr,Gc,qe,se,er,Hg,li,Vc,qc,jc,zc,yt,je,ze,St,ui,gi,Pe,ro,no,Gg,Vg,Kc,qg,It,pi,Wc,jg,zg,Jc,bt,ke,Xc,Kg,Wg,io,mi,Ct,Jg,Xg,Yg,Zg,ep,tp,rp,np,ip,fi,hi,Ai,yi,Si,Ii,bi,sp,op,Gr,F,so,ap,cp,dp,Yc,lp,up,qh,jh,zh,Zc,gp,Kh,Wh,Jh,Ci,Ei,vi,Ti,ed,td,wi,rd,Xh,oo,pp,mp,fp,hp,Ap,nd,Yh,lo,od,Di,ad,yp,Sp,Ip,Zh}from"../chunk-rec9q5vz.js";import{go,mo,fo,eA,ld,B,rr,kI,ho,vp,Ke,G,Ne}from"../chunk-bhbv9qqn.js";import"../chunk-vq8bejep.js";import"../chunk-tmp2ym80.js";import"../chunk-c8kf2268.js";import"../chunk-m9szynnf.js";import"../chunk-xyhh44eq.js";import"../chunk-q61qcpp4.js";import"../chunk-928z0h9b.js";export{rd as AwsBoxProvisioner,$r as AwsDriver,dp as BOOT_PARTITION_LABEL,pp as BOX_PANTRY_BIN_DIR,oo as BOX_PANTRY_CLI_DIR,so as CloudDriverFactory,Ug as DEFAULT_HOST_CLEANUP_ESCALATED,Gh as DEFAULT_HOST_CLEANUP_HIGH_WATER_PERCENT,Hh as DEFAULT_HOST_CLEANUP_LOW_WATER_PERCENT,Fg as DEFAULT_HOST_CLEANUP_RETENTION,Vh as DEFAULT_HOST_CLEANUP_SCHEDULE,go as DEFAULT_RPX_CERTS_DIR,cp as FIRST_BOOT_SCRIPT_PATH,Fr as HOST_ARTIFACT_CACHE_DIR,Uh as HOST_CLEANUP_SCRIPT_PATH,Qh as HOST_CLEANUP_UNIT,wi as HetznerBoxProvisioner,Hr as HetznerClient,Pe as HetznerDriver,zc as LEGACY_DRIVER_STATE_DIR,ro as LocalBoxDriver,Sp as MANAGED_CACHE_POLICY_DISABLED,yp as MANAGED_CACHE_POLICY_OPTIMIZED,Ip as MANAGED_ORIGIN_REQUEST_POLICY_ALL_VIEWER,Wg as RASPBERRY_PI_DEFAULT_SWAP_GB,Qc as REMOTE_SCRIPT_RUNNER,ho as RPX_DIR,vp as RPX_LAUNCHER_PATH,Ke as RPX_SERVICE_NAME,Xc as SSH_BOOTSTRAP_MARKER_DIR,ke as SSH_BOOTSTRAP_VERSION,Ct as SSH_DEFAULTS,bi as SSH_DEPLOY_STORAGE_PATH,Gg as SSH_INSECURE_HOST_KEY_OPTS,Vg as SSH_KEEPALIVE_OPTS,hi as SSH_PREFLIGHT_SCRIPT,sp as SSH_SKIP_BOOTSTRAP_ENV,Gr as SshDriver,bt as SystemSshTransport,ed as UBUNTU_2404_AMI_PARAM,Jh as acquireResizeLock,qh as applyHetznerHostOptimization,gi as applyHetznerVolumes,io as assertArchSupported,op as assertSshComputeConfig,$c as buildAwsArtifactFetch,Ap as buildBoxConvergeScript,mp as buildBoxSandboxConvergeScript,td as buildBoxUserData,Zh as buildCloudFrontOriginConfig,Yc as buildCloudInitFirstBoot,ti as buildComputeStorageInstallScript,Mr as buildComputeStorageSiteScript,up as buildHetznerHostOptimizationScript,ni as buildHostCleanupDeployScript,Qg as buildHostCleanupExecutable,to as buildHostCleanupInstallScript,ri as buildHostCleanupScript,Mc as buildLocalArtifactFetch,B as buildRpxConfig,Ne as buildRpxFragmentRefreshScript,rr as buildRpxLbConfig,G as buildRpxProvisionScript,qg as buildScpArgsFor,si as buildSiteDeployScript,ci as buildSshArgs,Kc as buildSshArgsFor,mi as buildSshBootstrapScript,oi as buildStaticSiteDeployScript,ap as cloudDrivers,jh as collectHetznerHostOptimizationReport,Vc as collectHetznerResizeManifest,Xh as createBoxProvisioner,F as createCloudDriver,od as deployAllComputeSites,lo as deploySiteRelease,ld as deriveRouteId,Zn as describeScriptSyntaxError,yt as driverStateDir,je as driverStatePath,Ei as ensureFirewall,vi as ensureServer,Ci as ensureSshKey,yi as evaluatePreflight,li as executeHetznerServerResize,zg as findKnownHostKey,Ii as formatPreflightFindings,Xt as formatSshFailure,fo as gatewayHostnames,M as generateUbuntuAppCloudInit,mo as hasAutoWwwVariant,no as isBoxMode,Hg as isHetznerCapacityError,_r as isLocalDatabase,jg as knownHostsLine,Wc as knownHostsToken,eA as normalizeRoutePath,qe as normalizeSshPublicKey,nd as parseBoxReport,Ai as parsePreflightFacts,er as planHetznerServerResize,ui as planHetznerVolumes,Si as preflightFailed,qc as prepareHetznerResize,Yh as provisionBox,ze as readDriverState,Kh as readResizeCheckpoint,ai as releaseTarballTmpPath,Di as reloadRpxGateway,di as remoteScriptRunner,hp as renderBoxUnit,fp as renderEnvFile,kI as renderRpxLauncher,ad as renewRpxCertificates,Zc as resizeCheckpointPath,gp as resizeLockPath,ei as resolveComputeVolumes,ii as resolveExecStart,Gc as resolveHetznerApiToken,lp as resolveHetznerHostOptimizationPlan,Ur as resolveHostCleanupConfig,ep as resolveSshHostKeyPolicy,Jg as resolveSshHosts,ip as resolveSshLan,Yg as resolveSshPort,Zg as resolveSshPrivateKeyPath,rp as resolveSshProfile,np as resolveSshPublicIp,fi as resolveSshSettings,tp as resolveSshSudo,Xg as resolveSshUser,pi as scanHostKey,Fc as scpUpload,Ti as serverPublicIpv4,Kg as sshBootstrapMarkerPath,Qr as sshExec,Ie as sshExecOrThrow,It as sshHostKeyFingerprint,Jc as sshKnownHostsPath,Yt as summarizeRemoteFailures,Or as surfaceRemoteNotices,zh as verifyHetznerHostOptimization,jc as verifyHetznerResize,Uc as waitForCloudInit,At as waitForSsh,se as wrapCloudInitUserData,St as writeDriverState,Wh as writeResizeCheckpoint};
1
+ import{Zn,Xt,Or,Yt,_r,M,$r,ei,ti,Mr,Fr,Uh,Qh,Fg,Ug,Hh,Gh,Vh,Ur,ri,Qg,to,ni,ii,si,oi,ai,$c,Mc,ci,Qr,be,Fc,At,Uc,di,Qc,Hr,Gc,qe,oe,er,Hg,li,Vc,qc,jc,zc,yt,je,ze,St,ui,gi,Pe,ro,no,Gg,Vg,Kc,qg,It,pi,Wc,jg,zg,Jc,bt,ke,Xc,Kg,Wg,io,mi,Ct,Jg,Xg,Yg,Zg,ep,tp,rp,np,ip,fi,hi,Ai,yi,Si,Ii,bi,sp,op,Gr,F,so,ap,cp,dp,Yc,lp,up,qh,jh,zh,Zc,gp,Kh,Wh,Jh,Ci,Ei,vi,Ti,ed,td,wi,rd,Xh,oo,pp,mp,fp,hp,Ap,nd,Yh,lo,od,Di,ad,yp,Sp,Ip,Zh}from"../chunk-s56rah0t.js";import{go,mo,fo,eA,ld,B,rr,kI,ho,vp,Ke,G,Ne}from"../chunk-gpgmp9dt.js";import"../chunk-vq8bejep.js";import"../chunk-tmp2ym80.js";import"../chunk-c8kf2268.js";import"../chunk-m9szynnf.js";import"../chunk-tr54e9c0.js";import"../chunk-3bvhthfb.js";import"../chunk-928z0h9b.js";export{rd as AwsBoxProvisioner,$r as AwsDriver,dp as BOOT_PARTITION_LABEL,pp as BOX_PANTRY_BIN_DIR,oo as BOX_PANTRY_CLI_DIR,so as CloudDriverFactory,Ug as DEFAULT_HOST_CLEANUP_ESCALATED,Gh as DEFAULT_HOST_CLEANUP_HIGH_WATER_PERCENT,Hh as DEFAULT_HOST_CLEANUP_LOW_WATER_PERCENT,Fg as DEFAULT_HOST_CLEANUP_RETENTION,Vh as DEFAULT_HOST_CLEANUP_SCHEDULE,go as DEFAULT_RPX_CERTS_DIR,cp as FIRST_BOOT_SCRIPT_PATH,Fr as HOST_ARTIFACT_CACHE_DIR,Uh as HOST_CLEANUP_SCRIPT_PATH,Qh as HOST_CLEANUP_UNIT,wi as HetznerBoxProvisioner,Hr as HetznerClient,Pe as HetznerDriver,zc as LEGACY_DRIVER_STATE_DIR,ro as LocalBoxDriver,Sp as MANAGED_CACHE_POLICY_DISABLED,yp as MANAGED_CACHE_POLICY_OPTIMIZED,Ip as MANAGED_ORIGIN_REQUEST_POLICY_ALL_VIEWER,Wg as RASPBERRY_PI_DEFAULT_SWAP_GB,Qc as REMOTE_SCRIPT_RUNNER,ho as RPX_DIR,vp as RPX_LAUNCHER_PATH,Ke as RPX_SERVICE_NAME,Xc as SSH_BOOTSTRAP_MARKER_DIR,ke as SSH_BOOTSTRAP_VERSION,Ct as SSH_DEFAULTS,bi as SSH_DEPLOY_STORAGE_PATH,Gg as SSH_INSECURE_HOST_KEY_OPTS,Vg as SSH_KEEPALIVE_OPTS,hi as SSH_PREFLIGHT_SCRIPT,sp as SSH_SKIP_BOOTSTRAP_ENV,Gr as SshDriver,bt as SystemSshTransport,ed as UBUNTU_2404_AMI_PARAM,Jh as acquireResizeLock,qh as applyHetznerHostOptimization,gi as applyHetznerVolumes,io as assertArchSupported,op as assertSshComputeConfig,$c as buildAwsArtifactFetch,Ap as buildBoxConvergeScript,mp as buildBoxSandboxConvergeScript,td as buildBoxUserData,Zh as buildCloudFrontOriginConfig,Yc as buildCloudInitFirstBoot,ti as buildComputeStorageInstallScript,Mr as buildComputeStorageSiteScript,up as buildHetznerHostOptimizationScript,ni as buildHostCleanupDeployScript,Qg as buildHostCleanupExecutable,to as buildHostCleanupInstallScript,ri as buildHostCleanupScript,Mc as buildLocalArtifactFetch,B as buildRpxConfig,Ne as buildRpxFragmentRefreshScript,rr as buildRpxLbConfig,G as buildRpxProvisionScript,qg as buildScpArgsFor,si as buildSiteDeployScript,ci as buildSshArgs,Kc as buildSshArgsFor,mi as buildSshBootstrapScript,oi as buildStaticSiteDeployScript,ap as cloudDrivers,jh as collectHetznerHostOptimizationReport,Vc as collectHetznerResizeManifest,Xh as createBoxProvisioner,F as createCloudDriver,od as deployAllComputeSites,lo as deploySiteRelease,ld as deriveRouteId,Zn as describeScriptSyntaxError,yt as driverStateDir,je as driverStatePath,Ei as ensureFirewall,vi as ensureServer,Ci as ensureSshKey,yi as evaluatePreflight,li as executeHetznerServerResize,zg as findKnownHostKey,Ii as formatPreflightFindings,Xt as formatSshFailure,fo as gatewayHostnames,M as generateUbuntuAppCloudInit,mo as hasAutoWwwVariant,no as isBoxMode,Hg as isHetznerCapacityError,_r as isLocalDatabase,jg as knownHostsLine,Wc as knownHostsToken,eA as normalizeRoutePath,qe as normalizeSshPublicKey,nd as parseBoxReport,Ai as parsePreflightFacts,er as planHetznerServerResize,ui as planHetznerVolumes,Si as preflightFailed,qc as prepareHetznerResize,Yh as provisionBox,ze as readDriverState,Kh as readResizeCheckpoint,ai as releaseTarballTmpPath,Di as reloadRpxGateway,di as remoteScriptRunner,hp as renderBoxUnit,fp as renderEnvFile,kI as renderRpxLauncher,ad as renewRpxCertificates,Zc as resizeCheckpointPath,gp as resizeLockPath,ei as resolveComputeVolumes,ii as resolveExecStart,Gc as resolveHetznerApiToken,lp as resolveHetznerHostOptimizationPlan,Ur as resolveHostCleanupConfig,ep as resolveSshHostKeyPolicy,Jg as resolveSshHosts,ip as resolveSshLan,Yg as resolveSshPort,Zg as resolveSshPrivateKeyPath,rp as resolveSshProfile,np as resolveSshPublicIp,fi as resolveSshSettings,tp as resolveSshSudo,Xg as resolveSshUser,pi as scanHostKey,Fc as scpUpload,Ti as serverPublicIpv4,Kg as sshBootstrapMarkerPath,Qr as sshExec,be as sshExecOrThrow,It as sshHostKeyFingerprint,Jc as sshKnownHostsPath,Yt as summarizeRemoteFailures,Or as surfaceRemoteNotices,zh as verifyHetznerHostOptimization,jc as verifyHetznerResize,Uc as waitForCloudInit,At as waitForSsh,oe as wrapCloudInitUserData,St as writeDriverState,Wh as writeResizeCheckpoint};