[{"data":1,"prerenderedAt":425},["ShallowReactive",2],{"term-c\u002Fcloud-build":3,"related-c\u002Fcloud-build":403},{"id":4,"title":5,"acronym":6,"body":7,"category":381,"description":382,"difficulty":383,"extension":384,"letter":385,"meta":386,"navigation":387,"path":388,"related":389,"seo":397,"sitemap":398,"stem":401,"subcategory":6,"__hash__":402},"terms\u002Fterms\u002Fc\u002Fcloud-build.md","Cloud Build",null,{"type":8,"value":9,"toc":375},"minimark",[10,15,19,23,26,30,364,368,371],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"Cloud Build is GCP's CI\u002FCD service that runs your build, test, and deploy pipeline in the cloud. Push code to GitHub, Cloud Build picks it up, runs your steps (build Docker image, run tests, push to registry, deploy to Cloud Run), and your app is live. Like GitHub Actions but living entirely inside GCP.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"Google Cloud Build is a fully managed CI\u002FCD service that executes builds on GCP infrastructure. Builds are defined as sequences of steps in YAML (cloudbuild.yaml) using builder images. It integrates with Cloud Source Repositories, GitHub, Bitbucket, Artifact Registry, and all GCP deployment targets. Charged per build-minute.",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# cloudbuild.yaml — build, test, and deploy to Cloud Run\nsteps:\n  - name: 'node:18'\n    entrypoint: 'npm'\n    args: ['ci']\n  - name: 'node:18'\n    entrypoint: 'npm'\n    args: ['test']\n  - name: 'gcr.io\u002Fcloud-builders\u002Fdocker'\n    args: ['build', '-t', 'gcr.io\u002F$PROJECT_ID\u002Fmy-app:$COMMIT_SHA', '.']\n  - name: 'gcr.io\u002Fcloud-builders\u002Fdocker'\n    args: ['push', 'gcr.io\u002F$PROJECT_ID\u002Fmy-app:$COMMIT_SHA']\n  - name: 'gcr.io\u002Fgoogle.com\u002Fcloudsdktool\u002Fcloud-sdk'\n    args:\n      - 'gcloud'\n      - 'run'\n      - 'deploy'\n      - 'my-app'\n      - '--image=gcr.io\u002F$PROJECT_ID\u002Fmy-app:$COMMIT_SHA'\n      - '--region=us-central1'\n","yaml","",[38,39,40,49,60,82,97,119,134,147,165,181,227,242,268,284,291,304,316,328,340,352],"code",{"__ignoreMap":36},[41,42,45],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"sHwdD","# cloudbuild.yaml — build, test, and deploy to Cloud Run\n",[41,50,52,56],{"class":43,"line":51},2,[41,53,55],{"class":54},"swJcz","steps",[41,57,59],{"class":58},"sMK4o",":\n",[41,61,63,66,69,72,75,79],{"class":43,"line":62},3,[41,64,65],{"class":58},"  -",[41,67,68],{"class":54}," name",[41,70,71],{"class":58},":",[41,73,74],{"class":58}," '",[41,76,78],{"class":77},"sfazB","node:18",[41,80,81],{"class":58},"'\n",[41,83,85,88,90,92,95],{"class":43,"line":84},4,[41,86,87],{"class":54},"    entrypoint",[41,89,71],{"class":58},[41,91,74],{"class":58},[41,93,94],{"class":77},"npm",[41,96,81],{"class":58},[41,98,100,103,105,108,111,114,116],{"class":43,"line":99},5,[41,101,102],{"class":54},"    args",[41,104,71],{"class":58},[41,106,107],{"class":58}," [",[41,109,110],{"class":58},"'",[41,112,113],{"class":77},"ci",[41,115,110],{"class":58},[41,117,118],{"class":58},"]\n",[41,120,122,124,126,128,130,132],{"class":43,"line":121},6,[41,123,65],{"class":58},[41,125,68],{"class":54},[41,127,71],{"class":58},[41,129,74],{"class":58},[41,131,78],{"class":77},[41,133,81],{"class":58},[41,135,137,139,141,143,145],{"class":43,"line":136},7,[41,138,87],{"class":54},[41,140,71],{"class":58},[41,142,74],{"class":58},[41,144,94],{"class":77},[41,146,81],{"class":58},[41,148,150,152,154,156,158,161,163],{"class":43,"line":149},8,[41,151,102],{"class":54},[41,153,71],{"class":58},[41,155,107],{"class":58},[41,157,110],{"class":58},[41,159,160],{"class":77},"test",[41,162,110],{"class":58},[41,164,118],{"class":58},[41,166,168,170,172,174,176,179],{"class":43,"line":167},9,[41,169,65],{"class":58},[41,171,68],{"class":54},[41,173,71],{"class":58},[41,175,74],{"class":58},[41,177,178],{"class":77},"gcr.io\u002Fcloud-builders\u002Fdocker",[41,180,81],{"class":58},[41,182,184,186,188,190,192,195,197,200,202,205,207,209,211,214,216,218,220,223,225],{"class":43,"line":183},10,[41,185,102],{"class":54},[41,187,71],{"class":58},[41,189,107],{"class":58},[41,191,110],{"class":58},[41,193,194],{"class":77},"build",[41,196,110],{"class":58},[41,198,199],{"class":58},",",[41,201,74],{"class":58},[41,203,204],{"class":77},"-t",[41,206,110],{"class":58},[41,208,199],{"class":58},[41,210,74],{"class":58},[41,212,213],{"class":77},"gcr.io\u002F$PROJECT_ID\u002Fmy-app:$COMMIT_SHA",[41,215,110],{"class":58},[41,217,199],{"class":58},[41,219,74],{"class":58},[41,221,222],{"class":77},".",[41,224,110],{"class":58},[41,226,118],{"class":58},[41,228,230,232,234,236,238,240],{"class":43,"line":229},11,[41,231,65],{"class":58},[41,233,68],{"class":54},[41,235,71],{"class":58},[41,237,74],{"class":58},[41,239,178],{"class":77},[41,241,81],{"class":58},[41,243,245,247,249,251,253,256,258,260,262,264,266],{"class":43,"line":244},12,[41,246,102],{"class":54},[41,248,71],{"class":58},[41,250,107],{"class":58},[41,252,110],{"class":58},[41,254,255],{"class":77},"push",[41,257,110],{"class":58},[41,259,199],{"class":58},[41,261,74],{"class":58},[41,263,213],{"class":77},[41,265,110],{"class":58},[41,267,118],{"class":58},[41,269,271,273,275,277,279,282],{"class":43,"line":270},13,[41,272,65],{"class":58},[41,274,68],{"class":54},[41,276,71],{"class":58},[41,278,74],{"class":58},[41,280,281],{"class":77},"gcr.io\u002Fgoogle.com\u002Fcloudsdktool\u002Fcloud-sdk",[41,283,81],{"class":58},[41,285,287,289],{"class":43,"line":286},14,[41,288,102],{"class":54},[41,290,59],{"class":58},[41,292,294,297,299,302],{"class":43,"line":293},15,[41,295,296],{"class":58},"      -",[41,298,74],{"class":58},[41,300,301],{"class":77},"gcloud",[41,303,81],{"class":58},[41,305,307,309,311,314],{"class":43,"line":306},16,[41,308,296],{"class":58},[41,310,74],{"class":58},[41,312,313],{"class":77},"run",[41,315,81],{"class":58},[41,317,319,321,323,326],{"class":43,"line":318},17,[41,320,296],{"class":58},[41,322,74],{"class":58},[41,324,325],{"class":77},"deploy",[41,327,81],{"class":58},[41,329,331,333,335,338],{"class":43,"line":330},18,[41,332,296],{"class":58},[41,334,74],{"class":58},[41,336,337],{"class":77},"my-app",[41,339,81],{"class":58},[41,341,343,345,347,350],{"class":43,"line":342},19,[41,344,296],{"class":58},[41,346,74],{"class":58},[41,348,349],{"class":77},"--image=gcr.io\u002F$PROJECT_ID\u002Fmy-app:$COMMIT_SHA",[41,351,81],{"class":58},[41,353,355,357,359,362],{"class":43,"line":354},20,[41,356,296],{"class":58},[41,358,74],{"class":58},[41,360,361],{"class":77},"--region=us-central1",[41,363,81],{"class":58},[11,365,367],{"id":366},"when-youll-hear-this","When You'll Hear This",[16,369,370],{},"\"Cloud Build runs the tests and deploys to Cloud Run on every push to main.\" \u002F \"The Cloud Build trigger is connected to the GitHub repo.\"",[372,373,374],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":36,"searchDepth":51,"depth":51,"links":376},[377,378,379,380],{"id":13,"depth":51,"text":14},{"id":21,"depth":51,"text":22},{"id":28,"depth":51,"text":29},{"id":366,"depth":51,"text":367},"cloud","Cloud Build is GCP's CI\u002FCD service that runs your build, test, and deploy pipeline in the cloud.","intermediate","md","c",{},true,"\u002Fterms\u002Fc\u002Fcloud-build",[390,391,392,393,394,395,396],"GCP","Cloud Run","CI\u002FCD","Docker","GitHub Actions","DevOps","Managed Service",{"title":5,"description":382},{"changefreq":399,"priority":400},"weekly",0.7,"terms\u002Fc\u002Fcloud-build","ksN1A1JmX98Fvpi0Otx_wgpijloF9sx_IdOw6QisFuY",[404,407,412,415,419,422],{"title":391,"path":405,"acronym":6,"category":381,"difficulty":383,"description":406},"\u002Fterms\u002Fc\u002Fcloud-run","Cloud Run is GCP's magic platform for running containerized apps without managing servers.",{"title":395,"path":408,"acronym":6,"category":409,"difficulty":410,"description":411},"\u002Fterms\u002Fd\u002Fdevops","cicd","beginner","DevOps is the culture and practice of tearing down the wall between the people who write code (Dev) and the people who run it in production (Ops).",{"title":393,"path":413,"acronym":6,"category":409,"difficulty":410,"description":414},"\u002Fterms\u002Fd\u002Fdocker","Docker is like a lunchbox for your app.",{"title":390,"path":416,"acronym":417,"category":381,"difficulty":410,"description":418},"\u002Fterms\u002Fg\u002Fgcp","Google Cloud Platform","GCP is Google's version of the giant rental computer warehouse.",{"title":394,"path":420,"acronym":6,"category":409,"difficulty":410,"description":421},"\u002Fterms\u002Fg\u002Fgithub-actions","GitHub Actions is CI\u002FCD built right into GitHub. Push code, run tests, deploy — all from YAML files in your repo. No separate CI server needed.",{"title":396,"path":423,"acronym":6,"category":381,"difficulty":410,"description":424},"\u002Fterms\u002Fm\u002Fmanaged-service","A managed service is when the cloud provider runs the thing for you — you don't patch it, back it up, or fix it when it crashes.",1776518265804]