[{"data":1,"prerenderedAt":1329},["ShallowReactive",2],{"navigation":3,"-deploy-providers-azure":225,"-deploy-providers-azure-surround":1324},[4,76,219],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"Docs","/guide","1.guide/0.index",[9,11,16,21,26,31,36,41,46,51,56,61,66,71],{"title":5,"path":6,"stem":7,"icon":10},"ph:book-open-duotone",{"title":12,"path":13,"stem":14,"icon":15},"Server Utils","/guide/utils","1.guide/1.utils","ri:tools-line",{"title":17,"path":18,"stem":19,"icon":20},"Tasks","/guide/tasks","1.guide/10.tasks","codicon:run-all",{"title":22,"path":23,"stem":24,"icon":25},"Server Routes","/guide/routing","1.guide/2.routing","ri:direction-line",{"title":27,"path":28,"stem":29,"icon":30},"WebSocket","/guide/websocket","1.guide/3.websocket","cib:socket-io",{"title":32,"path":33,"stem":34,"icon":35},"KV Storage","/guide/storage","1.guide/4.storage","carbon:datastore",{"title":37,"path":38,"stem":39,"icon":40},"SQL Database","/guide/database","1.guide/5.database","ri:database-2-line",{"title":42,"path":43,"stem":44,"icon":45},"Cache","/guide/cache","1.guide/6.cache","ri:speed-line",{"title":47,"path":48,"stem":49,"icon":50},"Fetch","/guide/fetch","1.guide/7.fetch","ri:global-line",{"title":52,"path":53,"stem":54,"icon":55},"Assets","/guide/assets","1.guide/8.assets","ri:image-2-line",{"title":57,"path":58,"stem":59,"icon":60},"Plugins","/guide/plugins","1.guide/9.plugins","ri:plug-line",{"title":62,"path":63,"stem":64,"icon":65},"Configuration","/guide/configuration","1.guide/97.configuration","ri:settings-3-line",{"title":67,"path":68,"stem":69,"icon":70},"TypeScript","/guide/typescript","1.guide/98.typescript","tabler:brand-typescript",{"title":72,"path":73,"stem":74,"icon":75},"Nightly Channel","/guide/nightly","1.guide/99.nightly","ri:moon-fill",{"title":77,"path":78,"stem":79,"children":80,"icon":82},"Deploy","/deploy","2.deploy/0.index",[81,83,87,113,118],{"title":77,"path":78,"stem":79,"icon":82},"ri:upload-cloud-2-line",{"title":84,"path":85,"stem":86,"icon":50},"Edge Workers","/deploy/workers","2.deploy/1.workers",{"title":88,"path":89,"stem":90,"children":91,"page":112},"Runtimes","/deploy/runtimes","2.deploy/10.runtimes",[92,97,102,107],{"title":93,"path":94,"stem":95,"icon":96},"Node.js","/deploy/runtimes/node","2.deploy/10.runtimes/1.node","akar-icons:node-fill",{"title":98,"path":99,"stem":100,"icon":101},"WinterJS","/deploy/runtimes/_winterjs","2.deploy/10.runtimes/_winterjs","game-icons:cold-heart",{"title":103,"path":104,"stem":105,"icon":106},"Bun","/deploy/runtimes/bun","2.deploy/10.runtimes/bun","simple-icons:bun",{"title":108,"path":109,"stem":110,"icon":111},"Deno","/deploy/runtimes/deno","2.deploy/10.runtimes/deno","simple-icons:deno",false,{"title":114,"path":115,"stem":116,"icon":117},"Custom Preset","/deploy/custom-presets","2.deploy/2.custom-presets","ri:file-code-line",{"title":119,"path":120,"stem":121,"children":122,"page":112},"Providers","/deploy/providers","2.deploy/20.providers",[123,127,131,135,139,143,147,151,155,159,163,167,171,175,179,183,187,191,195,199,203,207,211,215],{"title":124,"path":125,"stem":126},"Alwaysdata","/deploy/providers/alwaysdata","2.deploy/20.providers/alwaysdata",{"title":128,"path":129,"stem":130},"AWS Lambda","/deploy/providers/aws","2.deploy/20.providers/aws",{"title":132,"path":133,"stem":134},"AWS Amplify","/deploy/providers/aws-amplify","2.deploy/20.providers/aws-amplify",{"title":136,"path":137,"stem":138},"Azure","/deploy/providers/azure","2.deploy/20.providers/azure",{"title":140,"path":141,"stem":142},"Cleavr","/deploy/providers/cleavr","2.deploy/20.providers/cleavr",{"title":144,"path":145,"stem":146},"Cloudflare","/deploy/providers/cloudflare","2.deploy/20.providers/cloudflare",{"title":148,"path":149,"stem":150},"Deno Deploy","/deploy/providers/deno-deploy","2.deploy/20.providers/deno-deploy",{"title":152,"path":153,"stem":154},"DigitalOcean","/deploy/providers/digitalocean","2.deploy/20.providers/digitalocean",{"title":156,"path":157,"stem":158},"Edgio","/deploy/providers/edgio","2.deploy/20.providers/edgio",{"title":160,"path":161,"stem":162},"Firebase","/deploy/providers/firebase","2.deploy/20.providers/firebase",{"title":164,"path":165,"stem":166},"Flightcontrol","/deploy/providers/flightcontrol","2.deploy/20.providers/flightcontrol",{"title":168,"path":169,"stem":170},"Genezio","/deploy/providers/genezio","2.deploy/20.providers/genezio",{"title":172,"path":173,"stem":174},"GitHub Pages","/deploy/providers/github-pages","2.deploy/20.providers/github-pages",{"title":176,"path":177,"stem":178},"GitLab Pages","/deploy/providers/gitlab-pages","2.deploy/20.providers/gitlab-pages",{"title":180,"path":181,"stem":182},"Heroku","/deploy/providers/heroku","2.deploy/20.providers/heroku",{"title":184,"path":185,"stem":186},"IIS","/deploy/providers/iis","2.deploy/20.providers/iis",{"title":188,"path":189,"stem":190},"Koyeb","/deploy/providers/koyeb","2.deploy/20.providers/koyeb",{"title":192,"path":193,"stem":194},"Netlify","/deploy/providers/netlify","2.deploy/20.providers/netlify",{"title":196,"path":197,"stem":198},"Platform.sh","/deploy/providers/platform-sh","2.deploy/20.providers/platform-sh",{"title":200,"path":201,"stem":202},"Render.com","/deploy/providers/render","2.deploy/20.providers/render",{"title":204,"path":205,"stem":206},"StormKit","/deploy/providers/stormkit","2.deploy/20.providers/stormkit",{"title":208,"path":209,"stem":210},"Vercel","/deploy/providers/vercel","2.deploy/20.providers/vercel",{"title":212,"path":213,"stem":214},"Zeabur","/deploy/providers/zeabur","2.deploy/20.providers/zeabur",{"title":216,"path":217,"stem":218},"Zerops","/deploy/providers/zerops","2.deploy/20.providers/zerops",{"title":220,"path":221,"stem":222,"children":223,"icon":65},"Config","/config","3.config/0.index",[224],{"title":220,"path":221,"stem":222,"icon":65},{"id":226,"title":136,"body":227,"description":1318,"extension":1319,"meta":1320,"navigation":1321,"path":137,"seo":1322,"stem":138,"__hash__":1323},"content/2.deploy/20.providers/azure.md",{"type":228,"value":229,"toc":1304},"minimark",[230,235,247,252,264,280,285,294,297,357,360,373,378,381,480,484,491,494,498,501,504,548,551,602,605,613,617,624,642,645,650,653,690,697,701,704,801,804,812,815,1287,1291,1300],[231,232,234],"h2",{"id":233},"azure-static-web-apps","Azure static web apps",[236,237,238,242,243],"p",{},[239,240,241],"strong",{},"Preset:"," ",[244,245,246],"code",{},"azure",[248,249],"read-more",{"title":250,"to":251},"Azure Static Web Apps","https://azure.microsoft.com/en-us/products/app-service/static",[253,254,255],"note",{},[236,256,257,258,263],{},"Integration with this provider is possible with ",[259,260,262],"a",{"href":261},"/deploy/#zero-config-providers","zero configuration",".",[236,265,266,270,271,276,277,279],{},[259,267,250],{"href":251,"rel":268},[269],"nofollow"," are designed to be deployed continuously in a ",[259,272,275],{"href":273,"rel":274},"https://docs.microsoft.com/en-us/azure/static-web-apps/github-actions-workflow",[269],"GitHub Actions workflow",". By default, Nitro will detect this deployment environment and enable the ",[244,278,246],{}," preset.",[281,282,284],"h3",{"id":283},"local-preview","Local preview",[236,286,287,288,293],{},"Install ",[259,289,292],{"href":290,"rel":291},"https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local",[269],"Azure Functions Core Tools"," if you want to test locally.",[236,295,296],{},"You can invoke a development environment to preview before deploying.",[298,299,304],"pre",{"className":300,"code":301,"language":302,"meta":303,"style":303},"language-bash shiki shiki-themes github-light github-dark github-dark","NITRO_PRESET=azure npx nypm@latest run build\nnpx @azure/static-web-apps-cli start .output/public --api-location .output/server\n","bash","",[244,305,306,335],{"__ignoreMap":303},[307,308,311,315,319,322,326,329,332],"span",{"class":309,"line":310},"line",1,[307,312,314],{"class":313},"slsVL","NITRO_PRESET",[307,316,318],{"class":317},"so5gQ","=",[307,320,246],{"class":321},"sfrk1",[307,323,325],{"class":324},"shcOC"," npx",[307,327,328],{"class":321}," nypm@latest",[307,330,331],{"class":321}," run",[307,333,334],{"class":321}," build\n",[307,336,338,341,344,347,350,354],{"class":309,"line":337},2,[307,339,340],{"class":324},"npx",[307,342,343],{"class":321}," @azure/static-web-apps-cli",[307,345,346],{"class":321}," start",[307,348,349],{"class":321}," .output/public",[307,351,353],{"class":352},"suiK_"," --api-location",[307,355,356],{"class":321}," .output/server\n",[281,358,62],{"id":359},"configuration",[236,361,362,363,368,369,372],{},"Azure Static Web Apps are ",[259,364,367],{"href":365,"rel":366},"https://learn.microsoft.com/en-us/azure/static-web-apps/configuration",[269],"configured"," using the ",[244,370,371],{},"staticwebapp.config.json"," file.",[236,374,375,376,279],{},"Nitro automatically generates this configuration file whenever the application is built with the ",[244,377,246],{},[236,379,380],{},"Nitro will automatically add the following properties based on the following criteria:",[382,383,384,400],"table",{},[385,386,387],"thead",{},[388,389,390,394,397],"tr",{},[391,392,393],"th",{},"Property",[391,395,396],{},"Criteria",[391,398,399],{},"Default",[401,402,403,430,451],"tbody",{},[388,404,405,415,426],{},[406,407,408],"td",{},[239,409,410],{},[259,411,414],{"href":412,"rel":413},"https://learn.microsoft.com/en-us/azure/static-web-apps/configuration#platform",[269],"platform.apiRuntime",[406,416,417,418,421,422,425],{},"Will automatically set to ",[244,419,420],{},"node:16"," or ",[244,423,424],{},"node:14"," depending on your package configuration.",[406,427,428],{},[244,429,420],{},[388,431,432,441,447],{},[406,433,434],{},[239,435,436],{},[259,437,440],{"href":438,"rel":439},"https://learn.microsoft.com/en-us/azure/static-web-apps/configuration#fallback-routes",[269],"navigationFallback.rewrite",[406,442,443,444],{},"Is always ",[244,445,446],{},"/api/server",[406,448,449],{},[244,450,446],{},[388,452,453,462,475],{},[406,454,455],{},[239,456,457],{},[259,458,461],{"href":459,"rel":460},"https://learn.microsoft.com/en-us/azure/static-web-apps/configuration#routes",[269],"routes",[406,463,464,465,468,469,472,473,263],{},"All prerendered routes are added. Additionally, if you do not have an ",[244,466,467],{},"index.html"," file an empty one is created for you for compatibility purposes and also requests to ",[244,470,471],{},"/index.html"," are redirected to the root directory which is handled by ",[244,474,446],{},[406,476,477],{},[244,478,479],{},"[]",[281,481,483],{"id":482},"custom-configuration","Custom configuration",[236,485,486,487,490],{},"You can alter the Nitro generated configuration using ",[244,488,489],{},"azure.config"," option.",[236,492,493],{},"Custom routes will be added and matched first. In the case of a conflict (determined if an object has the same route property), custom routes will override generated ones.",[281,495,497],{"id":496},"deploy-from-cicd-via-github-actions","Deploy from CI/CD via GitHub actions",[236,499,500],{},"When you link your GitHub repository to Azure Static Web Apps, a workflow file is added to the repository.",[236,502,503],{},"When you are asked to select your framework, select custom and provide the following information:",[382,505,506,516],{},[385,507,508],{},[388,509,510,513],{},[391,511,512],{},"Input",[391,514,515],{},"Value",[401,517,518,528,538],{},[388,519,520,525],{},[406,521,522],{},[239,523,524],{},"app_location",[406,526,527],{},"'/'",[388,529,530,535],{},[406,531,532],{},[239,533,534],{},"api_location",[406,536,537],{},"'.output/server'",[388,539,540,545],{},[406,541,542],{},[239,543,544],{},"output_location",[406,546,547],{},"'.output/public'",[236,549,550],{},"If you miss this step, you can always find the build configuration section in your workflow and update the build configuration:",[298,552,557],{"className":553,"code":554,"filename":555,"language":556,"meta":303,"style":303},"language-yaml shiki shiki-themes github-light github-dark github-dark","###### Repository/Build Configurations ######\napp_location: '/'\napi_location: '.output/server'\noutput_location: '.output/public'\n###### End of Repository/Build Configurations ######\n",".github/workflows/azure-static-web-apps-\u003CRANDOM_NAME>.yml","yaml",[244,558,559,565,576,586,596],{"__ignoreMap":303},[307,560,561],{"class":309,"line":310},[307,562,564],{"class":563},"sCsY4","###### Repository/Build Configurations ######\n",[307,566,567,570,573],{"class":309,"line":337},[307,568,524],{"class":569},"sByVh",[307,571,572],{"class":313},": ",[307,574,575],{"class":321},"'/'\n",[307,577,579,581,583],{"class":309,"line":578},3,[307,580,534],{"class":569},[307,582,572],{"class":313},[307,584,585],{"class":321},"'.output/server'\n",[307,587,589,591,593],{"class":309,"line":588},4,[307,590,544],{"class":569},[307,592,572],{"class":313},[307,594,595],{"class":321},"'.output/public'\n",[307,597,599],{"class":309,"line":598},5,[307,600,601],{"class":563},"###### End of Repository/Build Configurations ######\n",[236,603,604],{},"That's it! Now Azure Static Web Apps will automatically deploy your Nitro-powered application on push.",[236,606,607,608,263],{},"If you are using runtimeConfig, you will likely want to configure the corresponding ",[259,609,612],{"href":610,"rel":611},"https://docs.microsoft.com/en-us/azure/static-web-apps/application-settings",[269],"environment variables on Azure",[231,614,616],{"id":615},"azure-functions","Azure functions",[236,618,619,242,621],{},[239,620,241],{},[244,622,623],{},"azure_functions",[625,626,627],"important",{},[236,628,629,630,635,636,641],{},"If you encounter any issues, please ensure you're using a Node.js 16+ runtime. You can find more information about ",[259,631,634],{"href":632,"rel":633},"https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-node?tabs=v2#setting-the-node-version",[269],"how to set the Node version in the Azure docs",".\nPlease see ",[259,637,640],{"href":638,"rel":639},"https://github.com/nitrojs/nitro/issues/2114",[269],"nitrojs/nitro#2114"," for some common issues.",[281,643,284],{"id":644},"local-preview-1",[236,646,287,647,293],{},[259,648,292],{"href":290,"rel":649},[269],[236,651,652],{},"You can invoke a development environment from the serverless directory.",[298,654,656],{"className":300,"code":655,"language":302,"meta":303,"style":303},"NITRO_PRESET=azure_functions npx nypm@latest run build\ncd .output\nfunc start\n",[244,657,658,674,682],{"__ignoreMap":303},[307,659,660,662,664,666,668,670,672],{"class":309,"line":310},[307,661,314],{"class":313},[307,663,318],{"class":317},[307,665,623],{"class":321},[307,667,325],{"class":324},[307,669,328],{"class":321},[307,671,331],{"class":321},[307,673,334],{"class":321},[307,675,676,679],{"class":309,"line":337},[307,677,678],{"class":352},"cd",[307,680,681],{"class":321}," .output\n",[307,683,684,687],{"class":309,"line":578},[307,685,686],{"class":324},"func",[307,688,689],{"class":321}," start\n",[236,691,692,693,696],{},"You can now visit ",[244,694,695],{},"http://localhost:7071/"," in your browser and browse your site running locally on Azure Functions.",[281,698,700],{"id":699},"deploy-from-your-local-machine","Deploy from your local machine",[236,702,703],{},"To deploy, just run the following command:",[298,705,707],{"className":300,"code":706,"language":302,"meta":303,"style":303},"# To publish the bundled zip file\naz functionapp deployment source config-zip -g \u003Cresource-group> -n \u003Capp-name> --src dist/deploy.zip\n# Alternatively you can publish from source\ncd dist && func azure functionapp publish --javascript \u003Capp-name>\n",[244,708,709,714,764,769],{"__ignoreMap":303},[307,710,711],{"class":309,"line":310},[307,712,713],{"class":563},"# To publish the bundled zip file\n",[307,715,716,719,722,725,728,731,734,737,740,742,745,748,750,753,756,758,761],{"class":309,"line":337},[307,717,718],{"class":324},"az",[307,720,721],{"class":321}," functionapp",[307,723,724],{"class":321}," deployment",[307,726,727],{"class":321}," source",[307,729,730],{"class":321}," config-zip",[307,732,733],{"class":352}," -g",[307,735,736],{"class":317}," \u003C",[307,738,739],{"class":321},"resource-grou",[307,741,236],{"class":313},[307,743,744],{"class":317},">",[307,746,747],{"class":352}," -n",[307,749,736],{"class":317},[307,751,752],{"class":321},"app-nam",[307,754,755],{"class":313},"e",[307,757,744],{"class":317},[307,759,760],{"class":352}," --src",[307,762,763],{"class":321}," dist/deploy.zip\n",[307,765,766],{"class":309,"line":578},[307,767,768],{"class":563},"# Alternatively you can publish from source\n",[307,770,771,773,776,779,781,784,786,789,792,794,796,798],{"class":309,"line":588},[307,772,678],{"class":352},[307,774,775],{"class":321}," dist",[307,777,778],{"class":313}," && ",[307,780,686],{"class":324},[307,782,783],{"class":321}," azure",[307,785,721],{"class":321},[307,787,788],{"class":321}," publish",[307,790,791],{"class":352}," --javascript",[307,793,736],{"class":317},[307,795,752],{"class":321},[307,797,755],{"class":313},[307,799,800],{"class":317},">\n",[281,802,497],{"id":803},"deploy-from-cicd-via-github-actions-1",[236,805,806,807,263],{},"First, obtain your Azure Functions Publish Profile and add it as a secret to your GitHub repository settings following ",[259,808,811],{"href":809,"rel":810},"https://github.com/Azure/functions-action#using-publish-profile-as-deployment-credential-recommended",[269],"these instructions",[236,813,814],{},"Then create the following file as a workflow:",[298,816,819],{"className":553,"code":817,"filename":818,"language":556,"meta":303,"style":303},"name: azure\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    branches:\n      - main\njobs:\n  deploy:\n    runs-on: ${{ matrix.os }}\n    strategy:\n      matrix:\n        os: [ ubuntu-latest ]\n        node: [ 14 ]\n    steps:\n      - uses: actions/setup-node@v2\n        with:\n          node-version: ${{ matrix.node }}\n\n      - name: Checkout\n        uses: actions/checkout@master\n\n      - name: Get yarn cache directory path\n        id: yarn-cache-dir-path\n        run: echo \"::set-output name=dir::$(yarn cache dir)\"\n\n      - uses: actions/cache@v2\n        id: yarn-cache\n        with:\n          path: ${{ steps.yarn-cache-dir-path.outputs.dir }}\n          key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}\n          restore-keys: |\n            ${{ runner.os }}-yarn-azure\n\n      - name: Install Dependencies\n        if: steps.cache.outputs.cache-hit != 'true'\n        run: yarn\n\n      - name: Build\n        run: npm run build\n        env:\n          NITRO_PRESET: azure_functions\n\n      - name: 'Deploy to Azure Functions'\n        uses: Azure/functions-action@v1\n        with:\n          app-name: \u003Cyour-app-name>\n          package: .output/deploy.zip\n          publish-profile: ${{ secrets.AZURE_FUNCTIONAPP_PUBLISH_PROFILE }}\n",".github/workflows/azure.yml",[244,820,821,831,839,846,853,861,869,876,883,891,899,910,918,926,941,954,962,975,983,994,1001,1013,1024,1029,1041,1052,1063,1068,1080,1090,1097,1108,1119,1130,1136,1141,1153,1164,1174,1179,1191,1201,1209,1220,1225,1237,1247,1254,1265,1276],{"__ignoreMap":303},[307,822,823,826,828],{"class":309,"line":310},[307,824,825],{"class":569},"name",[307,827,572],{"class":313},[307,829,830],{"class":321},"azure\n",[307,832,833,836],{"class":309,"line":337},[307,834,835],{"class":352},"on",[307,837,838],{"class":313},":\n",[307,840,841,844],{"class":309,"line":578},[307,842,843],{"class":569},"  push",[307,845,838],{"class":313},[307,847,848,851],{"class":309,"line":588},[307,849,850],{"class":569},"    branches",[307,852,838],{"class":313},[307,854,855,858],{"class":309,"line":598},[307,856,857],{"class":313},"      - ",[307,859,860],{"class":321},"main\n",[307,862,864,867],{"class":309,"line":863},6,[307,865,866],{"class":569},"  pull_request",[307,868,838],{"class":313},[307,870,872,874],{"class":309,"line":871},7,[307,873,850],{"class":569},[307,875,838],{"class":313},[307,877,879,881],{"class":309,"line":878},8,[307,880,857],{"class":313},[307,882,860],{"class":321},[307,884,886,889],{"class":309,"line":885},9,[307,887,888],{"class":569},"jobs",[307,890,838],{"class":313},[307,892,894,897],{"class":309,"line":893},10,[307,895,896],{"class":569},"  deploy",[307,898,838],{"class":313},[307,900,902,905,907],{"class":309,"line":901},11,[307,903,904],{"class":569},"    runs-on",[307,906,572],{"class":313},[307,908,909],{"class":321},"${{ matrix.os }}\n",[307,911,913,916],{"class":309,"line":912},12,[307,914,915],{"class":569},"    strategy",[307,917,838],{"class":313},[307,919,921,924],{"class":309,"line":920},13,[307,922,923],{"class":569},"      matrix",[307,925,838],{"class":313},[307,927,929,932,935,938],{"class":309,"line":928},14,[307,930,931],{"class":569},"        os",[307,933,934],{"class":313},": [ ",[307,936,937],{"class":321},"ubuntu-latest",[307,939,940],{"class":313}," ]\n",[307,942,944,947,949,952],{"class":309,"line":943},15,[307,945,946],{"class":569},"        node",[307,948,934],{"class":313},[307,950,951],{"class":352},"14",[307,953,940],{"class":313},[307,955,957,960],{"class":309,"line":956},16,[307,958,959],{"class":569},"    steps",[307,961,838],{"class":313},[307,963,965,967,970,972],{"class":309,"line":964},17,[307,966,857],{"class":313},[307,968,969],{"class":569},"uses",[307,971,572],{"class":313},[307,973,974],{"class":321},"actions/setup-node@v2\n",[307,976,978,981],{"class":309,"line":977},18,[307,979,980],{"class":569},"        with",[307,982,838],{"class":313},[307,984,986,989,991],{"class":309,"line":985},19,[307,987,988],{"class":569},"          node-version",[307,990,572],{"class":313},[307,992,993],{"class":321},"${{ matrix.node }}\n",[307,995,997],{"class":309,"line":996},20,[307,998,1000],{"emptyLinePlaceholder":999},true,"\n",[307,1002,1004,1006,1008,1010],{"class":309,"line":1003},21,[307,1005,857],{"class":313},[307,1007,825],{"class":569},[307,1009,572],{"class":313},[307,1011,1012],{"class":321},"Checkout\n",[307,1014,1016,1019,1021],{"class":309,"line":1015},22,[307,1017,1018],{"class":569},"        uses",[307,1020,572],{"class":313},[307,1022,1023],{"class":321},"actions/checkout@master\n",[307,1025,1027],{"class":309,"line":1026},23,[307,1028,1000],{"emptyLinePlaceholder":999},[307,1030,1032,1034,1036,1038],{"class":309,"line":1031},24,[307,1033,857],{"class":313},[307,1035,825],{"class":569},[307,1037,572],{"class":313},[307,1039,1040],{"class":321},"Get yarn cache directory path\n",[307,1042,1044,1047,1049],{"class":309,"line":1043},25,[307,1045,1046],{"class":569},"        id",[307,1048,572],{"class":313},[307,1050,1051],{"class":321},"yarn-cache-dir-path\n",[307,1053,1055,1058,1060],{"class":309,"line":1054},26,[307,1056,1057],{"class":569},"        run",[307,1059,572],{"class":313},[307,1061,1062],{"class":321},"echo \"::set-output name=dir::$(yarn cache dir)\"\n",[307,1064,1066],{"class":309,"line":1065},27,[307,1067,1000],{"emptyLinePlaceholder":999},[307,1069,1071,1073,1075,1077],{"class":309,"line":1070},28,[307,1072,857],{"class":313},[307,1074,969],{"class":569},[307,1076,572],{"class":313},[307,1078,1079],{"class":321},"actions/cache@v2\n",[307,1081,1083,1085,1087],{"class":309,"line":1082},29,[307,1084,1046],{"class":569},[307,1086,572],{"class":313},[307,1088,1089],{"class":321},"yarn-cache\n",[307,1091,1093,1095],{"class":309,"line":1092},30,[307,1094,980],{"class":569},[307,1096,838],{"class":313},[307,1098,1100,1103,1105],{"class":309,"line":1099},31,[307,1101,1102],{"class":569},"          path",[307,1104,572],{"class":313},[307,1106,1107],{"class":321},"${{ steps.yarn-cache-dir-path.outputs.dir }}\n",[307,1109,1111,1114,1116],{"class":309,"line":1110},32,[307,1112,1113],{"class":569},"          key",[307,1115,572],{"class":313},[307,1117,1118],{"class":321},"${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}\n",[307,1120,1122,1125,1127],{"class":309,"line":1121},33,[307,1123,1124],{"class":569},"          restore-keys",[307,1126,572],{"class":313},[307,1128,1129],{"class":317},"|\n",[307,1131,1133],{"class":309,"line":1132},34,[307,1134,1135],{"class":321},"            ${{ runner.os }}-yarn-azure\n",[307,1137,1139],{"class":309,"line":1138},35,[307,1140,1000],{"emptyLinePlaceholder":999},[307,1142,1144,1146,1148,1150],{"class":309,"line":1143},36,[307,1145,857],{"class":313},[307,1147,825],{"class":569},[307,1149,572],{"class":313},[307,1151,1152],{"class":321},"Install Dependencies\n",[307,1154,1156,1159,1161],{"class":309,"line":1155},37,[307,1157,1158],{"class":569},"        if",[307,1160,572],{"class":313},[307,1162,1163],{"class":321},"steps.cache.outputs.cache-hit != 'true'\n",[307,1165,1167,1169,1171],{"class":309,"line":1166},38,[307,1168,1057],{"class":569},[307,1170,572],{"class":313},[307,1172,1173],{"class":321},"yarn\n",[307,1175,1177],{"class":309,"line":1176},39,[307,1178,1000],{"emptyLinePlaceholder":999},[307,1180,1182,1184,1186,1188],{"class":309,"line":1181},40,[307,1183,857],{"class":313},[307,1185,825],{"class":569},[307,1187,572],{"class":313},[307,1189,1190],{"class":321},"Build\n",[307,1192,1194,1196,1198],{"class":309,"line":1193},41,[307,1195,1057],{"class":569},[307,1197,572],{"class":313},[307,1199,1200],{"class":321},"npm run build\n",[307,1202,1204,1207],{"class":309,"line":1203},42,[307,1205,1206],{"class":569},"        env",[307,1208,838],{"class":313},[307,1210,1212,1215,1217],{"class":309,"line":1211},43,[307,1213,1214],{"class":569},"          NITRO_PRESET",[307,1216,572],{"class":313},[307,1218,1219],{"class":321},"azure_functions\n",[307,1221,1223],{"class":309,"line":1222},44,[307,1224,1000],{"emptyLinePlaceholder":999},[307,1226,1228,1230,1232,1234],{"class":309,"line":1227},45,[307,1229,857],{"class":313},[307,1231,825],{"class":569},[307,1233,572],{"class":313},[307,1235,1236],{"class":321},"'Deploy to Azure Functions'\n",[307,1238,1240,1242,1244],{"class":309,"line":1239},46,[307,1241,1018],{"class":569},[307,1243,572],{"class":313},[307,1245,1246],{"class":321},"Azure/functions-action@v1\n",[307,1248,1250,1252],{"class":309,"line":1249},47,[307,1251,980],{"class":569},[307,1253,838],{"class":313},[307,1255,1257,1260,1262],{"class":309,"line":1256},48,[307,1258,1259],{"class":569},"          app-name",[307,1261,572],{"class":313},[307,1263,1264],{"class":321},"\u003Cyour-app-name>\n",[307,1266,1268,1271,1273],{"class":309,"line":1267},49,[307,1269,1270],{"class":569},"          package",[307,1272,572],{"class":313},[307,1274,1275],{"class":321},".output/deploy.zip\n",[307,1277,1279,1282,1284],{"class":309,"line":1278},50,[307,1280,1281],{"class":569},"          publish-profile",[307,1283,572],{"class":313},[307,1285,1286],{"class":321},"${{ secrets.AZURE_FUNCTIONAPP_PUBLISH_PROFILE }}\n",[281,1288,1290],{"id":1289},"optimizing-azure-functions","Optimizing Azure functions",[236,1292,1293,1294,1299],{},"Consider ",[259,1295,1298],{"href":1296,"rel":1297},"https://docs.microsoft.com/en-us/azure/app-service/deploy-run-package",[269],"turning on immutable packages"," to support running your app from the zip file. This can speed up cold starts.",[1301,1302,1303],"style",{},"html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}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 .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sByVh, html code.shiki .sByVh{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#85E89D}",{"title":303,"searchDepth":337,"depth":337,"links":1305},[1306,1312],{"id":233,"depth":337,"text":234,"children":1307},[1308,1309,1310,1311],{"id":283,"depth":578,"text":284},{"id":359,"depth":578,"text":62},{"id":482,"depth":578,"text":483},{"id":496,"depth":578,"text":497},{"id":615,"depth":337,"text":616,"children":1313},[1314,1315,1316,1317],{"id":644,"depth":578,"text":284},{"id":699,"depth":578,"text":700},{"id":803,"depth":578,"text":497},{"id":1289,"depth":578,"text":1290},"Deploy Nitro apps to Azure Static Web apps or functions.","md",{},{},{"title":136,"description":1318},"i6yvmAuiWMShGY9AeGxny77KUCkEkE8CfQgtSSp3I1M",[1325,1327],{"title":132,"path":133,"stem":134,"description":1326,"children":-1},"Deploy Nitro apps to AWS Amplify Hosting.",{"title":140,"path":141,"stem":142,"description":1328,"children":-1},"Deploy Nitro apps to Cleavr.",1775118357808]