{"id":36679,"date":"2026-10-12T14:29:57","date_gmt":"2026-10-12T12:29:57","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=36679"},"modified":"2026-10-12T14:29:59","modified_gmt":"2026-10-12T12:29:59","slug":"infrastructure-as-code-in-code-we-trust","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/","title":{"rendered":"Infrastructure as Code: in code we trust"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Infrastructure as code (IaC) \u00e8 il modo per gestire e provvisionare infrastrutture attraverso il codice, invece che farlo manualmente. Un concetto, all&#8217;epoca ma tuttora, rivoluzionario nel design e nella gestione di infrastrutture informatiche.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pensando a quanto sia pi\u00f9 naturale scrivere, in relativamente pochi file, la configurazione di una rete, il provisioning di alcune macchine, la gestione dei dischi e dello scaling, senza dover fare venti click e ricordarsi ogni singolo passaggio, si capisce subito perch\u00e9 sia stato un cambio di paradigma.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Definire l&#8217;infrastruttura attraverso il codice, e conservarla in file, rende pi\u00f9 facile generarla, scriverla e distribuirla. Ma c&#8217;\u00e8 di pi\u00f9: quel codice diventa anche la documentazione stessa. Non serve andare a cercare dentro documenti quali macchine esistono o come sono collegate le reti, basta leggere i file o forgiare degli output in modo furbo e sono sempre allineati con quello che gira davvero, perch\u00e9 \u00e8 da l\u00ec che nasce l&#8217;infrastruttura. In pi\u00f9, tutto questo si pu\u00f2 versionare.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Abbandonare un approccio manuale ed abbracciare questo tipo di gestione porta con s\u00e9 molti benefici:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>la capacit\u00e0 di creare infrastruttura immutabili<\/li>\n\n\n\n<li>garantire riproducibilit\u00e0 del sistema<\/li>\n\n\n\n<li>ridurre l&#8217;impatto dell&#8217;errore umano<\/li>\n\n\n\n<li>aumentare il livello di comprensione e condivisione della conoscenza<\/li>\n\n\n\n<li>aumentare l&#8217;organizzazione e gestione di risorse in gruppi<\/li>\n\n\n\n<li>abilita il versioneamento e la possibilit\u00e0 di utilizzare analisi di codice statico.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Per scegliere uno strumento in modo consapevole e non dettato dalla moda del momento, conviene prima capire che esistono principalmente due tipi di approccio, imperativo e dichiarativo, ciascuno con vantaggi e compromessi diversi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nell&#8217;approccio imperativo si opera ad un livello di astrazione pi\u00f9 basso e vengono definiti i comandi da eseguire per raggiungere lo stato che vogliamo; quasi come una ricetta da seguire. Questo approccio aiuta ad avere una maggiore capacit\u00e0 di implementare logiche complesse e rendere procedure di troubleshooting pi\u00f9 semplici, ma comporta un impatto maggiore del fattore umano e minore opportunit\u00e0 di collaborazione.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nell&#8217;approccio dichiarativo, invece, non descriviamo il percorso, ma la destinazione che vogliamo raggiungere. Dichiarando lo stato desiderato del sistema, lo strumento ha il compito di dedurre come arrivarci; l&#8217;astrazione \u00e8 alta, la scrittura del codice pi\u00f9 veloce e il fattore umano incide meno non dovendo pensare ogni singola azione, il lato negativo \u00e8 che si complicano le attivit\u00e0 di troubleshooting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ci sono casi in cui gli strumenti usano entrambi gli approcci.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png\" alt=\"\" class=\"wp-image-36681\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17-300x168.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17-768x429.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">L&#8217;utilizzo del infrastructure as code abilita direttamente le metriche DORA:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deployment Frequency: passando da un processo manuale ad uno automatizzato ed inserito all&#8217;interno di pipeline di CI\/CD permette di creare, modificare o distruggere ambienti in pochi minuti e in modo pi\u00f9 frequente. Quindi, rendendo possibile misurare questo tipo di attivit\u00e0.<\/li>\n\n\n\n<li>Lead Time for Changes: una modifica all&#8217;infrastruttura passa dallo stesso ciclo di review e deploy del codice applicativo, quindi il tempo tra una richiesta di cambiamento e la sua messa in produzione si riduce drasticamente.<\/li>\n\n\n\n<li>Mean Time to Recover \/ Restore: in caso di problemi consente di ricostruire l&#8217;intera infrastruttura da zero in modo rapido oppure di effettuare un rollback, potenzialmente ampliando la platea di persone che possono innescare il restore.<\/li>\n\n\n\n<li>Change Failure Rate: riducendo l&#8217;intervento manuale, si riducono gli errori umani e si limita il configuration drift. O comunque si \u00e8 in grado di misurarli.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Questi elementi, messi insieme, mostrano perch\u00e9 adottare IaC non \u00e8 solo una scelta tecnica, ma un abilitatore di efficienza ed efficacia. Ma quando ha senso valutare davvero l&#8217;adozione?<\/p>\n\n\n\n<h3 id=\"h-quando-usarlo\" class=\"wp-block-heading\"><strong>Quando usarlo?<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u00e0 dalle righe qui sopra possiamo intuire come la riduzione della distanza tra gli sviluppatori e la fornitura di infrastrutture sia una pratica interessante e in grado di fornire velocit\u00e0, consistenza e sicurezza; riducendo gli errori e il tempo necessario per avere un&#8217;infrastruttura pronta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Prima si abbraccia questo modo di gestire le infrastrutture e prima si crea una storia, grazie a git, evolutiva della stessa: lo stato desiderato oggi \u00e8 questo, ma cosa ci ha portato qui? l&#8217;infrastruttura \u00e8 sempre stata questa? \u00c8 nata bene o sono stati necessari dei fix? Quali? Cos\u00ec facendo, oltre ad avere una &#8220;memoria storica&#8221; condivisa, la conoscenza non resta in mano a una sola persona, che magari domani non c&#8217;\u00e8 pi\u00f9: pu\u00f2 essere acquisita anche da qualcun altro, magari con pi\u00f9 lentezza, ma si aumentano le possibilit\u00e0 di riuscirci. E questo rende pi\u00f9 facile imparare dagli errori fatti, o permette ad altri di non farli nuovamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In pi\u00f9 riusciamo ad avere uno storico di quando una riga di codice \u00e8 cambiata, ma chi \u00e8 l&#8217;autore e magari il numero del task assegnato (cos\u00ec da avere maggiori informazioni).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">E avendo tutta questa storia scritta in codice, possiamo fare un passo oltre: usare l&#8217;AI per interrogarla. Invece di scavare a mano tra commit e pull request, si pu\u00f2 chiedere direttamente &#8220;com\u2019\u00e8 stata configurata questa subnet&#8221; o &#8220;quali modifiche hanno preceduto quell&#8217;incidente&#8221;, e ottenere una risposta contestualizzata. L\u2019inserimento di una persona in un progetto diventa pi\u00f9 semplice: non deve solo leggere la documentazione, pu\u00f2 interrogarla.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per come la vedo io, questa \u00e8 una cosa da avere subito. Un&#8217;azienda moderna non pu\u00f2 prescindere da questa modalit\u00e0.<\/p>\n\n\n\n<h3 id=\"h-quando-non-usarlo\" class=\"wp-block-heading\"><strong>Quando non usarlo?<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Vedi paragrafo precedente, non scherziamo! Se proprio devo trovare un&#8217;eccezione, \u00e8 quella di una startup alle primissime armi, magari con due server buttati sulla scrivania solo per validare un&#8217;idea prima ancora di avere un prodotto vero. In quel caso, un po&#8217; di caos manuale pu\u00f2 starci. Ma onestamente, anche quella fase dura pochissimo: appena superi il prototipo, la scusa finisce l\u00ec.<\/p>\n\n\n\n<h3 id=\"h-sei-nuovo-o-indeciso-facciamoci-due-domande\" class=\"wp-block-heading\"><strong>Sei nuovo, o indeciso? Facciamoci due domande<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Prima di passare agli strumenti, prova a rispondere onestamente:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sapresti dire, senza aprire una console, quali risorse esistono oggi nel tuo ambiente?<\/li>\n\n\n\n<li>Se un server sparisse stanotte, sapresti ricostruirlo in pochi minuti, o servirebbero ore e la memoria di chi lo ha configurato a mano?<\/li>\n\n\n\n<li>Quando cambi qualcosa in produzione, quella modifica resta scritta da qualche parte, o vive solo nella tua testa?<\/li>\n\n\n\n<li>Il resto del team saprebbe rispondere a queste domande come te, o sei l&#8217;unico punto di riferimento?<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Se ti sei riconosciuto pi\u00f9 nella seconda met\u00e0 di ogni domanda, IaC \u00e8 la prossima cosa da imparare.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-18.png\" alt=\"\" class=\"wp-image-36680\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-18.png 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-18-300x168.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-18-768x429.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 id=\"h-chi-fa-il-lavoro-sporco\" class=\"wp-block-heading\"><strong>Chi fa il lavoro sporco?<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Il panorama \u00e8 particolarmente ampio e dipende da quale parte si vuole automatizzare: la maggior parte di questi strumenti adotta comunque un approccio dichiarativo, anche se il modo in cui lo esprimono, e quanto spazio lasciano a chi scrive codice, pu\u00f2 fare una grande differenza, come vedremo tra poco.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per esempio, per quanto riguarda il provisioning di macchine virtuali, subnet di rete e altre risorse cloud, i nomi pi\u00f9 gettonati sono due: Terraform e Pulumi, entrambi pensati per essere agnostici rispetto al cloud provider, quindi utilizzabili sia su AWS che su Azure o Google Cloud con la stessa sintassi di base. Poi ci sono le soluzioni native di ciascun provider: AWS ha CDK e CloudFormation, Azure ha Bicep, Google mette a disposizione strumenti basati su una logica simile a Terraform. La differenza principale tra i due gruppi \u00e8 che gli strumenti agnostici permettono di gestire ambienti multi-cloud con un solo linguaggio, mentre quelli nativi sono pi\u00f9 integrati con l&#8217;ecosistema del provider, ma ti legano a quello.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Io sono particolarmente affezionata a Terraform, ma negli ultimi anni mi sono avvicinata molto a Pulumi. La motivazione principale \u00e8 perch\u00e8 avevo necessit\u00e0 di superare i limiti espressivi di HCL. Per quanto HCL sia potente (e con OpenTofu alcune cose sono migliorate N.d.A.), l&#8217;ho trovato &#8220;rigido&#8221; di fronte ad architetture complesse. Adottando Pulumi ho trovato la potenza espressiva di cui avevo bisogno e avvicina ulteriormente il codice di infrastruttura ad una platea di sviluppatori.<\/p>\n\n\n\n<h3 id=\"h-iac-letto-attraverso-cams\" class=\"wp-block-heading\"><strong>IaC letto attraverso CAMS<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">L&#8217;Infrastructure as Code (IaC) si integra perfettamente nei principi del modello CAMS, fungendo da vero e proprio abilitatore DevOps. Codificare l&#8217;infrastruttura promuove una <strong>Cultura<\/strong> di responsabilit\u00e0 condivisa tra sviluppatori e gestioni operative. Allo stesso tempo, si sposa appieno con il pilastro dell&#8217;<strong>Automazione<\/strong>, consentendo di automatizzare l&#8217;intero ciclo di vita delle risorse, dal provisioning alla configurazione, ed eliminando i processi manuali soggetti a errori. Trattare l&#8217;infrastruttura come codice semplifica enormemente la <strong>Misurazione<\/strong>, poich\u00e9 rende ogni modifica tacciabile, verificabile e facilmente integrabile con strumenti di monitoraggio e compliance. Infine, l&#8217;uso di repository di codice favorisce la <strong>condivisione<\/strong>, rendendo l&#8217;architettura accessibile e comprensibile a un pubblico pi\u00f9 ampio. Le infrastrutture diventano codice che le persone possono verificare, testare e approvare.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Alla fine, la domanda non \u00e8 se adottare l&#8217;Infrastructure as Code, ma quanto tempo vuoi ancora perdere a fare a mano quello che puoi codificare. Un&#8217;infrastruttura scritta, versionata e leggibile non \u00e8 solo pi\u00f9 veloce da gestire: \u00e8 pi\u00f9 facile da capire, da migliorare, e da lasciare in eredit\u00e0 a chi verr\u00e0 dopo di te.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Infrastructure as code (IaC) \u00e8 il modo per gestire e provvisionare infrastrutture attraverso il codice, invece che farlo manualmente. Un concetto, all&#8217;epoca ma tuttora, rivoluzionario nel design e nella gestione di infrastrutture informatiche. Pensando a quanto sia pi\u00f9 naturale scrivere, in relativamente pochi file, la configurazione di una rete, il provisioning di alcune macchine, la&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/\">Read more<\/a><\/p>\n","protected":false},"author":343,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[10269,10263,10287],"tags":[],"collections":[],"class_list":["post-36679","post","type-post","status-publish","format-standard","category-architettura-del-software","category-backend-it","category-devops-it","entry","has-post-thumbnail"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.6 (Yoast SEO v28.6) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Infrastructure as Code: in code we trust - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"Gestisci l&#039;infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Infrastructure as Code: in code we trust\" \/>\n<meta property=\"og:description\" content=\"Gestisci l&#039;infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-12T12:29:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-12T12:29:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"572\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Antonella Falbo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Antonella Falbo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/\"},\"author\":{\"name\":\"Antonella Falbo\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/7e8255719d2f82389d3aee768b7ed06a\"},\"headline\":\"Infrastructure as Code: in code we trust\",\"datePublished\":\"2026-10-12T12:29:57+00:00\",\"dateModified\":\"2026-10-12T12:29:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/\"},\"wordCount\":1406,\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image-17.png\",\"articleSection\":[\"Architettura del software\",\"Backend\",\"DevOps\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/\",\"name\":\"Infrastructure as Code: in code we trust - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image-17.png\",\"datePublished\":\"2026-10-12T12:29:57+00:00\",\"dateModified\":\"2026-10-12T12:29:59+00:00\",\"description\":\"Gestisci l'infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image-17.png\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image-17.png\",\"width\":1024,\"height\":572},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/infrastructure-as-code-in-code-we-trust\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Backend\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/it\\\/backend-it\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Infrastructure as Code: in code we trust\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Codemotion.Italy\\\/\",\"https:\\\/\\\/x.com\\\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/7e8255719d2f82389d3aee768b7ed06a\",\"name\":\"Antonella Falbo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/antonella-falbo-100x100.jpg\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/antonella-falbo-100x100.jpg\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/antonella-falbo-100x100.jpg\",\"caption\":\"Antonella Falbo\"},\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/author\\\/antonella-falbo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Infrastructure as Code: in code we trust - Codemotion Magazine","description":"Gestisci l'infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/","og_locale":"en_US","og_type":"article","og_title":"Infrastructure as Code: in code we trust","og_description":"Gestisci l'infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.","og_url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2026-10-12T12:29:57+00:00","article_modified_time":"2026-10-12T12:29:59+00:00","og_image":[{"width":1024,"height":572,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png","type":"image\/png"}],"author":"Antonella Falbo","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Antonella Falbo","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/"},"author":{"name":"Antonella Falbo","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/7e8255719d2f82389d3aee768b7ed06a"},"headline":"Infrastructure as Code: in code we trust","datePublished":"2026-10-12T12:29:57+00:00","dateModified":"2026-10-12T12:29:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/"},"wordCount":1406,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png","articleSection":["Architettura del software","Backend","DevOps"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/","url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/","name":"Infrastructure as Code: in code we trust - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png","datePublished":"2026-10-12T12:29:57+00:00","dateModified":"2026-10-12T12:29:59+00:00","description":"Gestisci l'infrastruttura come codice per azzerare gli errori umani e velocizzare i deploy. Guida completa a concetti, benefici e tool di Infrastructure as Code.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/09\/image-17.png","width":1024,"height":572},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/infrastructure-as-code-in-code-we-trust\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Backend","item":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/"},{"@type":"ListItem","position":3,"name":"Infrastructure as Code: in code we trust"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/7e8255719d2f82389d3aee768b7ed06a","name":"Antonella Falbo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/02\/antonella-falbo-100x100.jpg","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/02\/antonella-falbo-100x100.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/02\/antonella-falbo-100x100.jpg","caption":"Antonella Falbo"},"url":"https:\/\/www.codemotion.com\/magazine\/author\/antonella-falbo\/"}]}},"featured_image_src":null,"featured_image_src_square":null,"author_info":{"display_name":"Antonella Falbo","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/antonella-falbo\/"},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"small-home-featured":false,"sidebar-featured":false,"genesis-singular-images":false,"archive-featured":false,"gb-block-post-grid-landscape":false,"gb-block-post-grid-square":false},"uagb_author_info":{"display_name":"Antonella Falbo","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/antonella-falbo\/"},"uagb_comment_info":0,"uagb_excerpt":"Infrastructure as code (IaC) \u00e8 il modo per gestire e provvisionare infrastrutture attraverso il codice, invece che farlo manualmente. Un concetto, all&#8217;epoca ma tuttora, rivoluzionario nel design e nella gestione di infrastrutture informatiche. Pensando a quanto sia pi\u00f9 naturale scrivere, in relativamente pochi file, la configurazione di una rete, il provisioning di alcune macchine, la&#8230;&hellip;","lang":"it","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36679","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/343"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=36679"}],"version-history":[{"count":2,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36679\/revisions"}],"predecessor-version":[{"id":36731,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36679\/revisions\/36731"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=36679"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=36679"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=36679"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=36679"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}