[{"data":1,"prerenderedAt":927},["ShallowReactive",2],{"navigation":3,"-deploy-providers-zephyr":407,"-deploy-providers-zephyr-surround":922},[4,93,226,232,392,404],{"title":5,"path":6,"stem":7,"children":8,"icon":92},"","\u002Fdocs","1.docs\u002F1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77,82,87],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-lucide-compass",{"title":13,"path":14,"stem":15,"icon":16},"Quick Start","\u002Fdocs\u002Fquick-start","1.docs\u002F2.quick-start","i-lucide-zap",{"title":18,"path":19,"stem":20,"icon":21},"Renderer","\u002Fdocs\u002Frenderer","1.docs\u002F4.renderer","ri:layout-masonry-line",{"title":23,"path":24,"stem":25,"icon":26},"Routing","\u002Fdocs\u002Frouting","1.docs\u002F5.routing","ri:direction-line",{"title":28,"path":29,"stem":30,"icon":31},"Assets","\u002Fdocs\u002Fassets","1.docs\u002F50.assets","ri:image-2-line",{"title":33,"path":34,"stem":35,"icon":36},"Configuration","\u002Fdocs\u002Fconfiguration","1.docs\u002F50.configuration","ri:settings-3-line",{"title":38,"path":39,"stem":40,"icon":41},"Database","\u002Fdocs\u002Fdatabase","1.docs\u002F50.database","ri:database-2-line",{"title":43,"path":44,"stem":45,"icon":46},"Lifecycle","\u002Fdocs\u002Flifecycle","1.docs\u002F50.lifecycle","i-lucide-layers",{"title":48,"path":49,"stem":50,"icon":51},"OpenAPI","\u002Fdocs\u002Fopenapi","1.docs\u002F50.openapi","ri:contract-line",{"title":53,"path":54,"stem":55,"icon":56},"Plugins","\u002Fdocs\u002Fplugins","1.docs\u002F50.plugins","ri:plug-line",{"title":58,"path":59,"stem":60,"icon":61},"Tasks","\u002Fdocs\u002Ftasks","1.docs\u002F50.tasks","codicon:run-all",{"title":63,"path":64,"stem":65,"icon":66},"WebSocket","\u002Fdocs\u002Fwebsocket","1.docs\u002F50.websocket","ri:broadcast-fill",{"title":68,"path":69,"stem":70,"icon":71},"Server Entry","\u002Fdocs\u002Fserver-entry","1.docs\u002F6.server-entry","ri:server-line",{"title":73,"path":74,"stem":75,"icon":76},"Cache","\u002Fdocs\u002Fcache","1.docs\u002F7.cache","ri:speed-line",{"title":78,"path":79,"stem":80,"icon":81},"KV Storage","\u002Fdocs\u002Fstorage","1.docs\u002F8.storage","carbon:datastore",{"title":83,"path":84,"stem":85,"icon":86},"Migration Guide","\u002Fdocs\u002Fmigration","1.docs\u002F99.migration","ri:arrow-right-up-line",{"title":88,"path":89,"stem":90,"icon":91},"Nightly Channel","\u002Fdocs\u002Fnightly","1.docs\u002F99.nightly","ri:moon-fill","i-lucide-book-open",{"title":94,"path":95,"stem":96,"children":97,"icon":99},"Deploy","\u002Fdeploy","2.deploy\u002F0.index",[98,100,121],{"title":94,"path":95,"stem":96,"icon":99},"ri:upload-cloud-2-line",{"title":101,"path":102,"stem":103,"children":104,"page":120},"Runtimes","\u002Fdeploy\u002Fruntimes","2.deploy\u002F10.runtimes",[105,110,115],{"title":106,"path":107,"stem":108,"icon":109},"Node.js","\u002Fdeploy\u002Fruntimes\u002Fnode","2.deploy\u002F10.runtimes\u002F1.node","akar-icons:node-fill",{"title":111,"path":112,"stem":113,"icon":114},"Bun","\u002Fdeploy\u002Fruntimes\u002Fbun","2.deploy\u002F10.runtimes\u002Fbun","simple-icons:bun",{"title":116,"path":117,"stem":118,"icon":119},"Deno","\u002Fdeploy\u002Fruntimes\u002Fdeno","2.deploy\u002F10.runtimes\u002Fdeno","simple-icons:deno",false,{"title":122,"path":123,"stem":124,"children":125,"page":120},"Providers","\u002Fdeploy\u002Fproviders","2.deploy\u002F20.providers",[126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222],{"title":127,"path":128,"stem":129},"Alwaysdata","\u002Fdeploy\u002Fproviders\u002Falwaysdata","2.deploy\u002F20.providers\u002Falwaysdata",{"title":131,"path":132,"stem":133},"AWS Lambda","\u002Fdeploy\u002Fproviders\u002Faws","2.deploy\u002F20.providers\u002Faws",{"title":135,"path":136,"stem":137},"AWS Amplify","\u002Fdeploy\u002Fproviders\u002Faws-amplify","2.deploy\u002F20.providers\u002Faws-amplify",{"title":139,"path":140,"stem":141},"Azure","\u002Fdeploy\u002Fproviders\u002Fazure","2.deploy\u002F20.providers\u002Fazure",{"title":143,"path":144,"stem":145},"Cleavr","\u002Fdeploy\u002Fproviders\u002Fcleavr","2.deploy\u002F20.providers\u002Fcleavr",{"title":147,"path":148,"stem":149},"Cloudflare","\u002Fdeploy\u002Fproviders\u002Fcloudflare","2.deploy\u002F20.providers\u002Fcloudflare",{"title":151,"path":152,"stem":153},"Deno Deploy","\u002Fdeploy\u002Fproviders\u002Fdeno-deploy","2.deploy\u002F20.providers\u002Fdeno-deploy",{"title":155,"path":156,"stem":157},"DigitalOcean","\u002Fdeploy\u002Fproviders\u002Fdigitalocean","2.deploy\u002F20.providers\u002Fdigitalocean",{"title":159,"path":160,"stem":161},"EdgeOne Pages","\u002Fdeploy\u002Fproviders\u002Fedgeone","2.deploy\u002F20.providers\u002Fedgeone",{"title":163,"path":164,"stem":165},"Firebase","\u002Fdeploy\u002Fproviders\u002Ffirebase","2.deploy\u002F20.providers\u002Ffirebase",{"title":167,"path":168,"stem":169},"Flightcontrol","\u002Fdeploy\u002Fproviders\u002Fflightcontrol","2.deploy\u002F20.providers\u002Fflightcontrol",{"title":171,"path":172,"stem":173},"Genezio","\u002Fdeploy\u002Fproviders\u002Fgenezio","2.deploy\u002F20.providers\u002Fgenezio",{"title":175,"path":176,"stem":177},"GitHub Pages","\u002Fdeploy\u002Fproviders\u002Fgithub-pages","2.deploy\u002F20.providers\u002Fgithub-pages",{"title":179,"path":180,"stem":181},"GitLab Pages","\u002Fdeploy\u002Fproviders\u002Fgitlab-pages","2.deploy\u002F20.providers\u002Fgitlab-pages",{"title":183,"path":184,"stem":185},"Heroku","\u002Fdeploy\u002Fproviders\u002Fheroku","2.deploy\u002F20.providers\u002Fheroku",{"title":187,"path":188,"stem":189},"IIS","\u002Fdeploy\u002Fproviders\u002Fiis","2.deploy\u002F20.providers\u002Fiis",{"title":191,"path":192,"stem":193},"Koyeb","\u002Fdeploy\u002Fproviders\u002Fkoyeb","2.deploy\u002F20.providers\u002Fkoyeb",{"title":195,"path":196,"stem":197},"Netlify","\u002Fdeploy\u002Fproviders\u002Fnetlify","2.deploy\u002F20.providers\u002Fnetlify",{"title":199,"path":200,"stem":201},"Platform.sh","\u002Fdeploy\u002Fproviders\u002Fplatform-sh","2.deploy\u002F20.providers\u002Fplatform-sh",{"title":203,"path":204,"stem":205},"Render.com","\u002Fdeploy\u002Fproviders\u002Frender","2.deploy\u002F20.providers\u002Frender",{"title":207,"path":208,"stem":209},"StormKit","\u002Fdeploy\u002Fproviders\u002Fstormkit","2.deploy\u002F20.providers\u002Fstormkit",{"title":211,"path":212,"stem":213},"Vercel","\u002Fdeploy\u002Fproviders\u002Fvercel","2.deploy\u002F20.providers\u002Fvercel",{"title":215,"path":216,"stem":217},"Zeabur","\u002Fdeploy\u002Fproviders\u002Fzeabur","2.deploy\u002F20.providers\u002Fzeabur",{"title":219,"path":220,"stem":221},"Zephyr Cloud","\u002Fdeploy\u002Fproviders\u002Fzephyr","2.deploy\u002F20.providers\u002Fzephyr",{"title":223,"path":224,"stem":225},"Zerops","\u002Fdeploy\u002Fproviders\u002Fzerops","2.deploy\u002F20.providers\u002Fzerops",{"title":227,"path":228,"stem":229,"children":230,"icon":36},"Config","\u002Fconfig","3.config\u002F0.index",[231],{"title":227,"path":228,"stem":229,"icon":36},{"title":233,"path":234,"stem":235,"children":236,"icon":238},"Examples","\u002Fexamples","4.examples\u002F0.index",[237,239,244,249,254,259,263,268,273,278,283,288,293,297,302,306,310,315,320,325,330,335,340,345,350,355,360,364,369,374,378,383,388],{"title":233,"path":234,"stem":235,"icon":238},"i-lucide-folder-code",{"title":240,"path":241,"stem":242,"icon":243},"API Routes","\u002Fexamples\u002Fapi-routes","4.examples\u002Fapi-routes","i-lucide-route",{"title":245,"path":246,"stem":247,"icon":248},"Auto Imports","\u002Fexamples\u002Fauto-imports","4.examples\u002Fauto-imports","i-lucide-import",{"title":250,"path":251,"stem":252,"icon":253},"Cached Handler","\u002Fexamples\u002Fcached-handler","4.examples\u002Fcached-handler","i-lucide-clock",{"title":255,"path":256,"stem":257,"icon":258},"Custom Error Handler","\u002Fexamples\u002Fcustom-error-handler","4.examples\u002Fcustom-error-handler","i-lucide-alert-circle",{"title":38,"path":260,"stem":261,"icon":262},"\u002Fexamples\u002Fdatabase","4.examples\u002Fdatabase","i-lucide-database",{"title":264,"path":265,"stem":266,"icon":267},"Elysia","\u002Fexamples\u002Felysia","4.examples\u002Felysia","i-skill-icons-elysia-dark",{"title":269,"path":270,"stem":271,"icon":272},"Express","\u002Fexamples\u002Fexpress","4.examples\u002Fexpress","i-simple-icons-express",{"title":274,"path":275,"stem":276,"icon":277},"Fastify","\u002Fexamples\u002Ffastify","4.examples\u002Ffastify","i-simple-icons-fastify",{"title":279,"path":280,"stem":281,"icon":282},"Hello World","\u002Fexamples\u002Fhello-world","4.examples\u002Fhello-world","i-lucide-sparkles",{"title":284,"path":285,"stem":286,"icon":287},"Hono","\u002Fexamples\u002Fhono","4.examples\u002Fhono","i-logos-hono",{"title":289,"path":290,"stem":291,"icon":292},"Import Alias","\u002Fexamples\u002Fimport-alias","4.examples\u002Fimport-alias","i-lucide-at-sign",{"title":294,"path":295,"stem":296,"icon":46},"Middleware","\u002Fexamples\u002Fmiddleware","4.examples\u002Fmiddleware",{"title":298,"path":299,"stem":300,"icon":301},"Mono JSX","\u002Fexamples\u002Fmono-jsx","4.examples\u002Fmono-jsx","i-lucide-brackets",{"title":303,"path":304,"stem":305,"icon":301},"Nano JSX","\u002Fexamples\u002Fnano-jsx","4.examples\u002Fnano-jsx",{"title":53,"path":307,"stem":308,"icon":309},"\u002Fexamples\u002Fplugins","4.examples\u002Fplugins","i-lucide-plug",{"title":311,"path":312,"stem":313,"icon":314},"Custom Renderer","\u002Fexamples\u002Frenderer","4.examples\u002Frenderer","i-lucide-code",{"title":316,"path":317,"stem":318,"icon":319},"Runtime Config","\u002Fexamples\u002Fruntime-config","4.examples\u002Fruntime-config","i-lucide-settings",{"title":321,"path":322,"stem":323,"icon":324},"Server Fetch","\u002Fexamples\u002Fserver-fetch","4.examples\u002Fserver-fetch","i-lucide-arrow-right-left",{"title":326,"path":327,"stem":328,"icon":329},"Shiki","\u002Fexamples\u002Fshiki","4.examples\u002Fshiki","i-lucide-highlighter",{"title":331,"path":332,"stem":333,"icon":334},"Takumi","\u002Fexamples\u002Ftakumi","4.examples\u002Ftakumi","i-lucide-image",{"title":336,"path":337,"stem":338,"icon":339},"Virtual Routes","\u002Fexamples\u002Fvirtual-routes","4.examples\u002Fvirtual-routes","i-lucide-box",{"title":341,"path":342,"stem":343,"icon":344},"Vite Nitro Plugin","\u002Fexamples\u002Fvite-nitro-plugin","4.examples\u002Fvite-nitro-plugin","i-logos-vitejs",{"title":346,"path":347,"stem":348,"icon":349},"Vite RSC","\u002Fexamples\u002Fvite-rsc","4.examples\u002Fvite-rsc","i-logos-react",{"title":351,"path":352,"stem":353,"icon":354},"Vite SSR HTML","\u002Fexamples\u002Fvite-ssr-html","4.examples\u002Fvite-ssr-html","i-logos-html-5",{"title":356,"path":357,"stem":358,"icon":359},"SSR with Preact","\u002Fexamples\u002Fvite-ssr-preact","4.examples\u002Fvite-ssr-preact","i-logos-preact",{"title":361,"path":362,"stem":363,"icon":349},"SSR with React","\u002Fexamples\u002Fvite-ssr-react","4.examples\u002Fvite-ssr-react",{"title":365,"path":366,"stem":367,"icon":368},"SSR with SolidJS","\u002Fexamples\u002Fvite-ssr-solid","4.examples\u002Fvite-ssr-solid","i-logos-solidjs-icon",{"title":370,"path":371,"stem":372,"icon":373},"SSR with TanStack Router","\u002Fexamples\u002Fvite-ssr-tsr-react","4.examples\u002Fvite-ssr-tsr-react","i-simple-icons-tanstack",{"title":375,"path":376,"stem":377,"icon":373},"SSR with TanStack Start","\u002Fexamples\u002Fvite-ssr-tss-react","4.examples\u002Fvite-ssr-tss-react",{"title":379,"path":380,"stem":381,"icon":382},"SSR with Vue Router","\u002Fexamples\u002Fvite-ssr-vue-router","4.examples\u002Fvite-ssr-vue-router","i-logos-vue",{"title":384,"path":385,"stem":386,"icon":387},"Vite + tRPC","\u002Fexamples\u002Fvite-trpc","4.examples\u002Fvite-trpc","i-simple-icons-trpc",{"title":63,"path":389,"stem":390,"icon":391},"\u002Fexamples\u002Fwebsocket","4.examples\u002Fwebsocket","i-lucide-radio",{"title":393,"path":394,"stem":395,"children":396},"Blog","\u002Fblog","9.blog",[397,400],{"title":393,"path":394,"stem":398,"icon":399},"9.blog\u002Findex","i-lucide-file-text",{"title":401,"path":402,"stem":403,"icon":399},"Nitro v3 Beta is here!","\u002Fblog\u002Fv3-beta","9.blog\u002F1.v3-beta",{"title":5,"path":405,"stem":406},"\u002F","index",{"id":408,"title":219,"body":409,"description":916,"extension":917,"meta":918,"navigation":919,"path":220,"seo":920,"stem":221,"__hash__":921},"content\u002F2.deploy\u002F20.providers\u002Fzephyr.md",{"type":410,"value":411,"toc":907},"minimark",[412,424,429,435,445,451,456,459,468,472,475,506,516,520,527,533,623,626,630,633,670,674,684,863,875,879,885,893,903],[413,414,415,419,420],"p",{},[416,417,418],"strong",{},"Preset:"," ",[421,422,423],"code",{},"zephyr",[425,426],"read-more",{"title":427,"to":428},"Zephyr Cloud Docs","https:\u002F\u002Fdocs.zephyr-cloud.io",[413,430,431,432,434],{},"Zephyr support is built into Nitro through the ",[421,433,423],{}," preset.",[413,436,437,438,444],{},"For most Zephyr-specific topics such as BYOC, cloud integrations, environments, and CI\u002FCD authentication, refer to the ",[439,440,443],"a",{"href":428,"rel":441},[442],"nofollow","Zephyr Cloud docs",".",[446,447,448],"note",{},[413,449,450],{},"Zephyr is a little different from most Nitro deployment providers. Instead of targeting a single hosting vendor directly, Zephyr acts as a deployment control plane on top of either Zephyr-managed infrastructure or your own cloud integrations.",[452,453,455],"h2",{"id":454},"byoc-model","BYOC model",[413,457,458],{},"Zephyr supports a BYOC (Bring Your Own Cloud) model. In Zephyr's architecture, the control plane stays managed by Zephyr, while the data plane (workers and storage) runs in your cloud accounts.",[413,460,461,462,467],{},"This lets you keep Zephyr's deployment workflow while using any supported Zephyr cloud integration. See the ",[439,463,466],{"href":464,"rel":465},"https:\u002F\u002Fdocs.zephyr-cloud.io\u002Ffeatures\u002Fbyoc",[442],"Zephyr BYOC docs"," for the current list of supported providers.",[452,469,471],{"id":470},"deploy-with-nitro-cli","Deploy with Nitro CLI",[413,473,474],{},"Use Nitro's deploy command to build and upload your app to Zephyr in one step:",[476,477,481],"pre",{"className":478,"code":479,"language":480,"meta":5,"style":5},"language-bash shiki shiki-themes github-light github-dark github-dark","npx nitro deploy --preset zephyr\n","bash",[421,482,483],{"__ignoreMap":5},[484,485,488,492,496,499,503],"span",{"class":486,"line":487},"line",1,[484,489,491],{"class":490},"shcOC","npx",[484,493,495],{"class":494},"sfrk1"," nitro",[484,497,498],{"class":494}," deploy",[484,500,502],{"class":501},"suiK_"," --preset",[484,504,505],{"class":494}," zephyr\n",[413,507,508,509,512,513,515],{},"Nitro will upload the generated output using ",[421,510,511],{},"zephyr-agent",". If ",[421,514,511],{}," is missing, Nitro will prompt to install it locally and will install it automatically in CI.",[452,517,519],{"id":518},"deploy-during-build","Deploy during build",[413,521,522,523,526],{},"Zephyr is a little different here from most Nitro providers: we recommend enabling deployment during ",[421,524,525],{},"nitro build"," and treating build as the primary deployment step.",[413,528,529,530,532],{},"If your CI pipeline already runs ",[421,531,525],{},", enable deployment during the build step:",[476,534,539],{"className":535,"code":536,"filename":537,"language":538,"meta":5,"style":5},"language-ts shiki shiki-themes github-light github-dark github-dark","import { defineConfig } from \"nitro\";\n\nexport default defineConfig({\n  preset: \"zephyr\",\n  zephyr: {\n    deployOnBuild: true,\n  },\n});\n","nitro.config.ts","ts",[421,540,541,560,567,582,594,600,611,617],{"__ignoreMap":5},[484,542,543,547,551,554,557],{"class":486,"line":487},[484,544,546],{"class":545},"so5gQ","import",[484,548,550],{"class":549},"slsVL"," { defineConfig } ",[484,552,553],{"class":545},"from",[484,555,556],{"class":494}," \"nitro\"",[484,558,559],{"class":549},";\n",[484,561,563],{"class":486,"line":562},2,[484,564,566],{"emptyLinePlaceholder":565},true,"\n",[484,568,570,573,576,579],{"class":486,"line":569},3,[484,571,572],{"class":545},"export",[484,574,575],{"class":545}," default",[484,577,578],{"class":490}," defineConfig",[484,580,581],{"class":549},"({\n",[484,583,585,588,591],{"class":486,"line":584},4,[484,586,587],{"class":549},"  preset: ",[484,589,590],{"class":494},"\"zephyr\"",[484,592,593],{"class":549},",\n",[484,595,597],{"class":486,"line":596},5,[484,598,599],{"class":549},"  zephyr: {\n",[484,601,603,606,609],{"class":486,"line":602},6,[484,604,605],{"class":549},"    deployOnBuild: ",[484,607,608],{"class":501},"true",[484,610,593],{"class":549},[484,612,614],{"class":486,"line":613},7,[484,615,616],{"class":549},"  },\n",[484,618,620],{"class":486,"line":619},8,[484,621,622],{"class":549},"});\n",[413,624,625],{},"Then your normal build command is enough:",[627,628],"pm-run",{"script":629},"build",[413,631,632],{},"After the build finishes, Nitro uploads the generated output to Zephyr, deploys it to the edge, and prints the deployment URL:",[476,634,638],{"className":635,"code":636,"language":637,"meta":5,"style":5},"language-txt shiki shiki-themes github-light github-dark github-dark","◐ Building [Nitro] (preset: zephyr, compatibility: YYYY-MM-DD)\n...\nZEPHYR   Uploaded local snapshot in 110ms\nZEPHYR   Deployed to Zephyr's edge in 700ms.\nZEPHYR\nZEPHYR   https:\u002F\u002Fmy-app.zephyrcloud.app\n","txt",[421,639,640,645,650,655,660,665],{"__ignoreMap":5},[484,641,642],{"class":486,"line":487},[484,643,644],{},"◐ Building [Nitro] (preset: zephyr, compatibility: YYYY-MM-DD)\n",[484,646,647],{"class":486,"line":562},[484,648,649],{},"...\n",[484,651,652],{"class":486,"line":569},[484,653,654],{},"ZEPHYR   Uploaded local snapshot in 110ms\n",[484,656,657],{"class":486,"line":584},[484,658,659],{},"ZEPHYR   Deployed to Zephyr's edge in 700ms.\n",[484,661,662],{"class":486,"line":596},[484,663,664],{},"ZEPHYR\n",[484,666,667],{"class":486,"line":602},[484,668,669],{},"ZEPHYR   https:\u002F\u002Fmy-app.zephyrcloud.app\n",[452,671,673],{"id":672},"ci-authentication","CI authentication",[413,675,676,677,680,681,444],{},"Zephyr requires an API token for non-interactive deployments. The example below uses the simpler personal-token style setup with ",[421,678,679],{},"ZE_SECRET_TOKEN"," together with ",[421,682,683],{},"zephyr.deployOnBuild",[476,685,690],{"className":686,"code":687,"filename":688,"language":689,"meta":5,"style":5},"language-yaml shiki shiki-themes github-light github-dark github-dark","name: Deploy with Zephyr\n\non:\n  push:\n    branches: [main]\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    env:\n      ZE_SECRET_TOKEN: ${{ secrets.ZEPHYR_AUTH_TOKEN }}\n    steps:\n      - uses: actions\u002Fcheckout@v4\n      - uses: actions\u002Fsetup-node@v4\n        with:\n          node-version: 20\n      - run: npm ci\n      - run: npm run build\n",".github\u002Fworkflows\u002Fdeploy.yml","yaml",[421,691,692,704,708,716,723,737,741,748,755,766,774,785,793,807,819,827,838,851],{"__ignoreMap":5},[484,693,694,698,701],{"class":486,"line":487},[484,695,697],{"class":696},"sByVh","name",[484,699,700],{"class":549},": ",[484,702,703],{"class":494},"Deploy with Zephyr\n",[484,705,706],{"class":486,"line":562},[484,707,566],{"emptyLinePlaceholder":565},[484,709,710,713],{"class":486,"line":569},[484,711,712],{"class":501},"on",[484,714,715],{"class":549},":\n",[484,717,718,721],{"class":486,"line":584},[484,719,720],{"class":696},"  push",[484,722,715],{"class":549},[484,724,725,728,731,734],{"class":486,"line":596},[484,726,727],{"class":696},"    branches",[484,729,730],{"class":549},": [",[484,732,733],{"class":494},"main",[484,735,736],{"class":549},"]\n",[484,738,739],{"class":486,"line":602},[484,740,566],{"emptyLinePlaceholder":565},[484,742,743,746],{"class":486,"line":613},[484,744,745],{"class":696},"jobs",[484,747,715],{"class":549},[484,749,750,753],{"class":486,"line":619},[484,751,752],{"class":696},"  deploy",[484,754,715],{"class":549},[484,756,758,761,763],{"class":486,"line":757},9,[484,759,760],{"class":696},"    runs-on",[484,762,700],{"class":549},[484,764,765],{"class":494},"ubuntu-latest\n",[484,767,769,772],{"class":486,"line":768},10,[484,770,771],{"class":696},"    env",[484,773,715],{"class":549},[484,775,777,780,782],{"class":486,"line":776},11,[484,778,779],{"class":696},"      ZE_SECRET_TOKEN",[484,781,700],{"class":549},[484,783,784],{"class":494},"${{ secrets.ZEPHYR_AUTH_TOKEN }}\n",[484,786,788,791],{"class":486,"line":787},12,[484,789,790],{"class":696},"    steps",[484,792,715],{"class":549},[484,794,796,799,802,804],{"class":486,"line":795},13,[484,797,798],{"class":549},"      - ",[484,800,801],{"class":696},"uses",[484,803,700],{"class":549},[484,805,806],{"class":494},"actions\u002Fcheckout@v4\n",[484,808,810,812,814,816],{"class":486,"line":809},14,[484,811,798],{"class":549},[484,813,801],{"class":696},[484,815,700],{"class":549},[484,817,818],{"class":494},"actions\u002Fsetup-node@v4\n",[484,820,822,825],{"class":486,"line":821},15,[484,823,824],{"class":696},"        with",[484,826,715],{"class":549},[484,828,830,833,835],{"class":486,"line":829},16,[484,831,832],{"class":696},"          node-version",[484,834,700],{"class":549},[484,836,837],{"class":501},"20\n",[484,839,841,843,846,848],{"class":486,"line":840},17,[484,842,798],{"class":549},[484,844,845],{"class":696},"run",[484,847,700],{"class":549},[484,849,850],{"class":494},"npm ci\n",[484,852,854,856,858,860],{"class":486,"line":853},18,[484,855,798],{"class":549},[484,857,845],{"class":696},[484,859,700],{"class":549},[484,861,862],{"class":494},"npm run build\n",[413,864,865,866,869,870,444],{},"For more advanced CI\u002FCD setups, Zephyr also documents organization-level server-token authentication using ",[421,867,868],{},"ZE_SERVER_TOKEN",". See the ",[439,871,874],{"href":872,"rel":873},"https:\u002F\u002Fdocs.zephyr-cloud.io\u002Ffeatures\u002Fci-cd-server-token",[442],"Zephyr CI\u002FCD server token docs",[452,876,878],{"id":877},"options","Options",[880,881,883],"h3",{"id":882},"zephyrdeployonbuild",[421,884,683],{},[413,886,887,888,890,891,434],{},"Deploy to Zephyr during ",[421,889,525],{}," when using the ",[421,892,423],{},[894,895,896],"ul",{},[897,898,899,900],"li",{},"Default: ",[421,901,902],{},"false",[904,905,906],"style",{},"html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .sByVh, html code.shiki .sByVh{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#85E89D}",{"title":5,"searchDepth":562,"depth":562,"links":908},[909,910,911,912,913],{"id":454,"depth":562,"text":455},{"id":470,"depth":562,"text":471},{"id":518,"depth":562,"text":519},{"id":672,"depth":562,"text":673},{"id":877,"depth":562,"text":878,"children":914},[915],{"id":882,"depth":569,"text":683},"Deploy Nitro apps to Zephyr Cloud.","md",{},{},{"title":219,"description":916},"BXV5RcAu3le2qwfEBGqc_EJ4siVGlVIEoRC4M0GNN-8",[923,925],{"title":215,"path":216,"stem":217,"description":924,"children":-1},"Deploy Nitro apps to Zeabur.",{"title":223,"path":224,"stem":225,"description":926,"children":-1},"Deploy Nitro apps to Zerops.",1784141545007]