<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>infrastructure as code Archives | XOAP</title>
	<atom:link href="https://dev.xoap.io/tag/infrastructure-as-code/feed/" rel="self" type="application/rss+xml" />
	<link>https://dev.xoap.io/tag/infrastructure-as-code/</link>
	<description>Platform for IT infrastructure and workplace automation</description>
	<lastBuildDate>Fri, 22 Aug 2025 06:30:37 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://dev.xoap.io/wp-content/uploads/2023/11/cropped-favicon-32x32.png</url>
	<title>infrastructure as code Archives | XOAP</title>
	<link>https://dev.xoap.io/tag/infrastructure-as-code/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>XOAP is a game-changer, even if you already use Microsoft Autopilot</title>
		<link>https://dev.xoap.io/xoap-is-a-game-changer-even-if-you-already-use-microsoft-autopilot/</link>
		
		<dc:creator><![CDATA[Mario]]></dc:creator>
		<pubDate>Tue, 22 Jul 2025 14:06:55 +0000</pubDate>
				<category><![CDATA[Company & culture]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[infrastructure as code]]></category>
		<category><![CDATA[terraform]]></category>
		<guid isPermaLink="false">https://dev.xoap.io/?p=24659</guid>

					<description><![CDATA[<p>Even with Microsoft Autopilot in place, XOAP takes device management further by offering full lifecycle control, security and multi-tenant support.</p>
<p>The post <a href="https://dev.xoap.io/xoap-is-a-game-changer-even-if-you-already-use-microsoft-autopilot/">XOAP is a game-changer, even if you already use Microsoft Autopilot</a> appeared first on <a href="https://dev.xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="24659" class="elementor elementor-24659" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-86c21a6 e-flex e-con-boxed e-con e-parent" data-id="86c21a6" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-05c1ca8 e-con-full e-flex e-con e-child" data-id="05c1ca8" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-f9543e8 e-con-full e-flex e-con e-child" data-id="f9543e8" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-2c46337 e-con-full e-flex e-con e-child" data-id="2c46337" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-a37a44e elementor-toc--content-ellipsis elementor-toc--minimized-on-tablet elementor-widget elementor-widget-table-of-contents" data-id="a37a44e" data-element_type="widget" data-e-type="widget" data-settings="{&quot;headings_by_tags&quot;:[&quot;h2&quot;],&quot;container&quot;:&quot;main&quot;,&quot;exclude_headings_by_selector&quot;:[],&quot;marker_view&quot;:&quot;bullets&quot;,&quot;icon&quot;:{&quot;value&quot;:&quot;fas fa-arrow-right&quot;,&quot;library&quot;:&quot;fa-solid&quot;,&quot;rendered_tag&quot;:&quot;&lt;svg class=\&quot;e-font-icon-svg e-fas-arrow-right\&quot; viewBox=\&quot;0 0 448 512\&quot; xmlns=\&quot;http:\/\/www.w3.org\/2000\/svg\&quot;&gt;&lt;path d=\&quot;M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;&quot;},&quot;no_headings_message&quot;:&quot;No headings were found on this page.&quot;,&quot;minimize_box&quot;:&quot;yes&quot;,&quot;minimized_on&quot;:&quot;tablet&quot;,&quot;hierarchical_view&quot;:&quot;yes&quot;,&quot;min_height&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}" data-widget_type="table-of-contents.default">
				<div class="elementor-widget-container">
									<div class="elementor-toc__header">
						<h4 class="elementor-toc__header-title">
				Table of contents			</h4>
										<div class="elementor-toc__toggle-button elementor-toc__toggle-button--expand" role="button" tabindex="0" aria-controls="elementor-toc__a37a44e" aria-expanded="true" aria-label="Open table of contents"><svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-down" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"></path></svg></div>
				<div class="elementor-toc__toggle-button elementor-toc__toggle-button--collapse" role="button" tabindex="0" aria-controls="elementor-toc__a37a44e" aria-expanded="true" aria-label="Close table of contents"><svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-up" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"></path></svg></div>
					</div>
				<div id="elementor-toc__a37a44e" class="elementor-toc__body">
			<div class="elementor-toc__spinner-container">
				<svg class="elementor-toc__spinner eicon-animation-spin e-font-icon-svg e-eicon-loading" aria-hidden="true" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M500 975V858C696 858 858 696 858 500S696 142 500 142 142 304 142 500H25C25 237 238 25 500 25S975 237 975 500 763 975 500 975Z"></path></svg>			</div>
		</div>
						</div>
				</div>
				</div>
				</div>
				<div class="elementor-element elementor-element-a91d282 elementor-widget elementor-widget-text-editor" data-id="a91d282" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Microsoft Autopilot has become the go-to solution for many IT teams when it comes to modern device provisioning. It simplifies the setup process, saves time, and enables a seamless experience for end users. But what comes after the initial provisioning or what about the use cases Autopilot doesn’t cover?</p><p><span lang="en-US">That’s where </span><a href="https://dev.xoap.io/" target="_blank" rel="noopener"><span lang="de">XOAP</span></a><span lang="en-US"> steps in and </span><span lang="de">adds tremendous value</span><span lang="en-US">, even for companies that have already standardized on Autopilot.</span></p>								</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-d4c7ac4 e-con-full e-flex e-con e-child" data-id="d4c7ac4" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-42c5d93 elementor-widget elementor-widget-heading" data-id="42c5d93" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">1. Autopilot covers the start, XOAP covers the full journey</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-3d4f9aa elementor-widget elementor-widget-text-editor" data-id="3d4f9aa" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span lang="en-US">Autopilot focuses on </span><strong><span lang="de">out-of-box provisioning,</span></strong><span lang="en-US"> getting new devices ready for users. But enterprise IT often needs much more:</span></p><ul type="disc"><li>What about existing devices?</li><li>How do you ensure devices are compliant and secure from day one?</li><li>How do you manage multiple tenants and environments efficiently?</li></ul><p>XOAP fills these gaps with a powerful, centralized platform that supports the full device lifecycle – from imaging to application deployment and configuration hardening.</p><p>Moreover, XOAP makes it easy to image systems directly from the console across major cloud platforms like <strong>AWS, Azure, and Google Cloud.</strong> Imaging with <strong>vSphere and Nutanix</strong> is also supported.</p><p>For<strong> bare metal devices</strong>, XOAP fully integrates with <strong>OSDCloud</strong>, allowing fast and flexible deployment using:</p><ul><li>PXE boot</li><li>Microsoft WDS </li><li><a href="https://dev.xoap.io/offline-domain-join-xoap-azure-blob/" target="_blank" rel="noopener">Azure Blob Storage </a></li></ul><p>This gives you powerful<strong> imaging across cloud, virtual, and on-prem environments</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-be2e8c1 elementor-widget elementor-widget-heading" data-id="be2e8c1" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">2. One interface for every deployment type
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-30023d0 elementor-widget elementor-widget-text-editor" data-id="30023d0" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>In reality, most organizations are hybrid:</p><ul type="disc"><li>Autopilot for new devices</li><li>Classic imaging for training rooms or shared environments</li><li>VMs, Citrix or RDS hosts for specialized scenarios</li></ul><p>XOAP gives you a<strong> unified UI</strong> to manage all of these, removing silos and reducing operational complexity.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a07da2c elementor-widget elementor-widget-heading" data-id="a07da2c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default"><a href="https://dev.xoap.io/platformXO/" target="_blank">3. Security and compliance  baked into the deployment process</a></h2>				</div>
				</div>
				<div class="elementor-element elementor-element-0e76239 elementor-widget elementor-widget-text-editor" data-id="0e76239" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Provisioning a device is one thing; making sure it’s secure and compliant is another.</p><p><span lang="en-US">With </span><span lang="de">XOAPs <a href="https://dev.xoap.io/configuration-management/" target="_blank" rel="noopener">Configuration Management module</a></span><span lang="en-US">, you can:</span></p><ul type="disc"><li><span lang="en-US">Enforce </span><span lang="de"><strong>CIS, STIG, or BSI</strong> compliance</span><span lang="en-US"> automatically during or after deployment</span></li><li><span lang="en-US">Integrate </span><strong><span lang="de">Windows LAPS</span></strong><span lang="en-US">, firewall settings, and configuration policies by design</span></li><li><span lang="en-US">Use<strong> c</strong></span><strong><span lang="de">onfiguration as code</span></strong><span lang="en-US"> to ensure all systems remain aligned with security policies</span></li></ul><p>This level of control goes far beyond what Autopilot alone provides.</p><blockquote><p lang="hr"><strong>Read more about:</strong></p><p lang="hr"><a href="https://dev.xoap.io/cis-compliance/" target="_blank" rel="noopener">→ CIS compliance</a><br /><a href="https://dev.xoap.io/stig-security-standards/" target="_blank" rel="noopener">→ STIG security standards</a><br /><a href="https://dev.xoap.io/stig-security-standards/" target="_blank" rel="noopener">→</a><a href="https://dev.xoap.io/nis2-compliance-automation/" target="_blank" rel="noopener"> NIS2 compliance</a></p></blockquote>								</div>
				</div>
				<div class="elementor-element elementor-element-6ee47cc elementor-widget elementor-widget-heading" data-id="6ee47cc" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">4. Smarter software deployment across environments

</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3eec4c elementor-widget elementor-widget-text-editor" data-id="c3eec4c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Autopilot doesn’t install software, except in Autopilot Pre-Provisioning scenario, formerly known as &#8216;white glove&#8217;.  Usually that’s handled through Intune. But what if you need more?</p><p>With <a href="https://dev.xoap.io/application-management/" target="_blank" rel="noopener">Application Management module</a>, you get:</p><ul><li>A rich, reusable<strong> package library</strong></li><li>Centralized packaging support across multiple tenants</li><li>A solution that works beyond Intune, including <strong>SCCM, hybrid setups, and disconnected environments</strong></li></ul><p>It’s a modern take on application delivery, with better flexibility and fewer limitations.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-09df46c elementor-widget elementor-widget-heading" data-id="09df46c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">5. Multi-tenant management made easy</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2fcd25c elementor-widget elementor-widget-text-editor" data-id="2fcd25c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span lang="en-US">For MSPs or large enterprises managing multiple tenants, </span><span lang="de">Intune becomes difficult to scale</span><span lang="en-US">.</span></p><p>XOAP solves this by offering:</p><ul type="disc"><li><span lang="en-US">Unified control for </span><strong><span lang="de">all tenants</span></strong></li><li>Reusable scripts, packages, and compliance templates</li><li>Per-tenant customization without duplicated effort</li></ul><p>A major efficiency booster for complex environments.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a82da45 elementor-widget elementor-widget-heading" data-id="a82da45" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">6. Visibility and troubleshooting finally made simple
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-1f6d266 elementor-widget elementor-widget-text-editor" data-id="1f6d266" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>One of the biggest pain points with Autopilot is the lack of visibility when something goes wrong.</p><p>With <strong>central insights and reporting</strong>, you get:</p><ul><li>Transparent, real-time status reporting</li><li>Detailed logs and execution history</li><li>Proactive alerts before small issues become big problems</li></ul><p>Especially useful in hybrid environments where Intune, SCCM, and on-prem AD coexist.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-169bd91 elementor-widget elementor-widget-heading" data-id="169bd91" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">XOAP is the natural evolution for Autopilot-powered environments</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e0a9a44 elementor-widget elementor-widget-text-editor" data-id="e0a9a44" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Microsoft Autopilot is a solid starting point, but XOAP transforms it into a powerful, secure, and scalable automation strategy:</p><ul><li>More control</li><li>Better compliance</li><li>Broader reach</li><li>Unified automation</li></ul><p><strong>Autopilot gets your devices ready – XOAP makes them productive, secure, and compliant.</strong></p><p>Want to see XOAP in action?<a href="https://calendly.com/xoap/30min" target="_blank" rel="noopener"> Book a personalized demo</a> today.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-e38b769 elementor-widget elementor-widget-spacer" data-id="e38b769" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-4d386dd e-con-full e-flex e-con e-child" data-id="4d386dd" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-ba9e329 e-con-full e-flex e-con e-child" data-id="ba9e329" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;gradient&quot;,&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-8a4b2cf e-con-full e-flex e-con e-child" data-id="8a4b2cf" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-329cfa0 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="329cfa0" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;none&quot;,&quot;_animation_tablet&quot;:&quot;fadeInDown&quot;}" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default"><a href="https://auth.dev.xoap.io/auth/realms/my.dev.xoap.io/protocol/openid-connect/registrations?client_id=portal&#038;response_type=code&#038;scope=openid%20email&#038;redirect_uri=https://my.dev.xoap.io&#038;kc_locale=en&#038;_ga=2.120291981.440170699.1710334465-1088457358.1705491014" target="_blank">Take your Autopilot deployment to the next level with XOAP</a></h2>				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-6519c7b e-con-full e-flex e-con e-child" data-id="6519c7b" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-030b06a elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-global elementor-global-18898 elementor-widget-button" data-id="030b06a" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation_mobile&quot;:&quot;none&quot;}" title="Get lifetime access" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://auth.dev.xoap.io/auth/realms/my.dev.xoap.io/protocol/openid-connect/registrations?client_id=portal&#038;response_type=code&#038;scope=openid%20email&#038;redirect_uri=https://my.dev.xoap.io&#038;kc_locale=en" target="_blank" title="Start for free">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Start for free</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				<div class="elementor-element elementor-element-9144c9e elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-global elementor-global-18905 elementor-widget-button" data-id="9144c9e" data-element_type="widget" data-e-type="widget" title="Get lifetime access" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://calendly.com/xoap/30min" target="_blank" title="Book a demo">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Book a demo</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				</div>
				</div>
				</div>
				</div>
		<p>The post <a href="https://dev.xoap.io/xoap-is-a-game-changer-even-if-you-already-use-microsoft-autopilot/">XOAP is a game-changer, even if you already use Microsoft Autopilot</a> appeared first on <a href="https://dev.xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Rethinking infrastructure as code in 2025</title>
		<link>https://dev.xoap.io/rethinking-infrastructure-as-code-in-2025/</link>
		
		<dc:creator><![CDATA[Mario]]></dc:creator>
		<pubDate>Fri, 06 Jun 2025 10:28:41 +0000</pubDate>
				<category><![CDATA[Company & culture]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[infrastructure as code]]></category>
		<category><![CDATA[terraform]]></category>
		<guid isPermaLink="false">https://dev.xoap.io/?p=23415</guid>

					<description><![CDATA[<p>Infrastructure as code in 2025 is no longer just about provisioning cloud resources. It's about speed, automation and solutions that match modern development workflows.</p>
<p>The post <a href="https://dev.xoap.io/rethinking-infrastructure-as-code-in-2025/">Rethinking infrastructure as code in 2025</a> appeared first on <a href="https://dev.xoap.io">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="23415" class="elementor elementor-23415" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-86c21a6 e-flex e-con-boxed e-con e-parent" data-id="86c21a6" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-05c1ca8 e-con-full e-flex e-con e-child" data-id="05c1ca8" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-f9543e8 e-con-full e-flex e-con e-child" data-id="f9543e8" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-2c46337 e-con-full e-flex e-con e-child" data-id="2c46337" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-a37a44e elementor-toc--content-ellipsis elementor-toc--minimized-on-tablet elementor-widget elementor-widget-table-of-contents" data-id="a37a44e" data-element_type="widget" data-e-type="widget" data-settings="{&quot;headings_by_tags&quot;:[&quot;h2&quot;],&quot;container&quot;:&quot;main&quot;,&quot;exclude_headings_by_selector&quot;:[],&quot;marker_view&quot;:&quot;bullets&quot;,&quot;icon&quot;:{&quot;value&quot;:&quot;fas fa-arrow-right&quot;,&quot;library&quot;:&quot;fa-solid&quot;,&quot;rendered_tag&quot;:&quot;&lt;svg class=\&quot;e-font-icon-svg e-fas-arrow-right\&quot; viewBox=\&quot;0 0 448 512\&quot; xmlns=\&quot;http:\/\/www.w3.org\/2000\/svg\&quot;&gt;&lt;path d=\&quot;M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;&quot;},&quot;no_headings_message&quot;:&quot;No headings were found on this page.&quot;,&quot;minimize_box&quot;:&quot;yes&quot;,&quot;minimized_on&quot;:&quot;tablet&quot;,&quot;hierarchical_view&quot;:&quot;yes&quot;,&quot;min_height&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}" data-widget_type="table-of-contents.default">
				<div class="elementor-widget-container">
									<div class="elementor-toc__header">
						<h4 class="elementor-toc__header-title">
				Table of contents			</h4>
										<div class="elementor-toc__toggle-button elementor-toc__toggle-button--expand" role="button" tabindex="0" aria-controls="elementor-toc__a37a44e" aria-expanded="true" aria-label="Open table of contents"><svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-down" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"></path></svg></div>
				<div class="elementor-toc__toggle-button elementor-toc__toggle-button--collapse" role="button" tabindex="0" aria-controls="elementor-toc__a37a44e" aria-expanded="true" aria-label="Close table of contents"><svg aria-hidden="true" class="e-font-icon-svg e-fas-chevron-up" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"><path d="M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"></path></svg></div>
					</div>
				<div id="elementor-toc__a37a44e" class="elementor-toc__body">
			<div class="elementor-toc__spinner-container">
				<svg class="elementor-toc__spinner eicon-animation-spin e-font-icon-svg e-eicon-loading" aria-hidden="true" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M500 975V858C696 858 858 696 858 500S696 142 500 142 142 304 142 500H25C25 237 238 25 500 25S975 237 975 500 763 975 500 975Z"></path></svg>			</div>
		</div>
						</div>
				</div>
				</div>
				</div>
				<div class="elementor-element elementor-element-a91d282 elementor-widget elementor-widget-text-editor" data-id="a91d282" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="hr">Infrastructure as code has come a long way. What started as a breakthrough in cloud provisioning has now become a<strong> standard part of how teams build and manage modern applications</strong>.</p><p lang="hr">But as development practices have matured, expectations around infrastructure have shifted. Today, we’re not just defining cloud resources; we’re orchestrating fast, automated, and dynamic environments that match the speed of software delivery.</p><p lang="hr">It’s a good time to ask: Are the tools we’ve used still the right ones?</p>								</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-d4c7ac4 e-con-full e-flex e-con e-child" data-id="d4c7ac4" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-42c5d93 elementor-widget elementor-widget-heading" data-id="42c5d93" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Terraform’s role in the early days
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-3d4f9aa elementor-widget elementor-widget-text-editor" data-id="3d4f9aa" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="hr">As we rethink infrastructure as code in 2025, it’s natural to revisit the tools that defined its early adoption – and Terraform is at the top of that list. When it first became popular, it introduced a new way of thinking about infrastructure. It let teams describe their environments in code, track changes in version control, and apply updates in a controlled, repeatable way. At a time when most infrastructure was long-lived and manually managed, this was a major improvement.</p><p lang="hr">Teams could use Terraform to build production systems with confidence. It worked well for environments that changed slowly, were managed by dedicated ops teams, and followed careful planning and review processes.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-be2e8c1 elementor-widget elementor-widget-heading" data-id="be2e8c1" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">The way we work has changed
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-30023d0 elementor-widget elementor-widget-text-editor" data-id="30023d0" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="hr">Today, software moves faster. Developers deploy code more often, infrastructure is spun up and torn down as part of test pipelines, and different teams contribute to the same codebase. Changes are no longer occasional; they’re constant. That shift has put pressure on tools that weren’t built with this kind of speed and flexibility in mind.</p><p><span lang="hr">Terraform can still handle these cases, but it often needs extra tooling and a</span><span lang="de"> lot of </span><span lang="hr">coordination. Managing shared state, writing wrapper scripts, and organizing modules across environments takes time. It works, but it can be heavy. And when you’re moving fast, that weight starts to matter.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-a07da2c elementor-widget elementor-widget-heading" data-id="a07da2c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default"><a href="https://dev.xoap.io/platformXO/" target="_blank">Modern infrastructure might need something extra
</a></h2>				</div>
				</div>
				<div class="elementor-element elementor-element-0e76239 elementor-widget elementor-widget-text-editor" data-id="0e76239" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="hr">The new reality of<strong> software delivery demands infrastructure that fits directly into automated workflows</strong>. Instead of provisioning being a separate task, it’s part of every commit, every pull request, and every deployment.</p><p><span lang="hr">This has led to new expectations. Teams want infrastructure changes to be easy to review, easy to test, and easy to track. They want developers </span><span lang="de">and operations </span><span lang="hr">to be able to contribute without deep knowledge of tooling. And they want infrastructure to follow the same principles as their application code: fast feedback, versioned history, and safe automation.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-30e9359 elementor-widget elementor-widget-heading" data-id="30e9359" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default"><a href="https://dev.xoap.io/platformXO/" target="_blank">Wrong fit for infrastructure</a></h2>				</div>
				</div>
				<div class="elementor-element elementor-element-33c3138 elementor-widget elementor-widget-text-editor" data-id="33c3138" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>DevOps and Agile were built for software delivery, not infrastructure operations. Infrastructure prioritizes stability, predictability, and security – not constant iteration. Furthermore, applying DevOps patterns to infrastructure ties high-cost experts to day-to-day tasks. Those experts should focus on architecture and strategy, not routine operations. Result: wasted talent and rising costs.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6ee47cc elementor-widget elementor-widget-heading" data-id="6ee47cc" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">A quiet shift toward already existing solutions

</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3eec4c elementor-widget elementor-widget-text-editor" data-id="c3eec4c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span lang="hr">In response, e</span><span lang="de">xisting </span><span lang="hr">solutions have b</span><span lang="de">een around for a long time </span><span lang="hr">that still follow the core ideas of infrastructure as code, but with different priorities. </span><span lang="hr">Instead of </span><span lang="de">being dependent</span><span lang="hr"> on state files a</span><span lang="de">nd extensive tooling</span><span lang="hr">, t</span><span lang="de">hey are often enough to fulfill the needs of modern infrastructure deployments. We are discussing<strong> cloud-provider SDKs and command-line interfaces (CLIs)</strong>.</span></p><p lang="de">These tools offer first-class feature access without the Terraform delay. And they give you<strong> finer control and custom logic</strong> through programmatic control and additional conditional logic, which is sometimes cumbersome or verbose in Terraform.</p><p lang="de">Often, the approach to implementing small-scale tasks leads to easier maintainability, faster execution, more predictable deployments, and less stress for the teams involved.</p><p lang="de">Last but not least, it reduces abstraction overhead; <strong>native tools do exactly what the API says</strong>, no translation or misalignment.</p><p lang="de">We could still say that with Terraform, you have one language that you have to learn to automate your entire infrastructure deployment on different platforms, but although you are using only one language, you still have to adjust all resource definitions to the cloud-specific parameters. So, why not use platform-specific tools directly from the start?</p>								</div>
				</div>
				<div class="elementor-element elementor-element-169bd91 elementor-widget elementor-widget-heading" data-id="169bd91" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Evolving with the times
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e0a9a44 elementor-widget elementor-widget-text-editor" data-id="e0a9a44" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="hr"><span data-teams="true">Infrastructure as code in 2025 goes beyond basic provisioning; it must plug directly into fast, automated workflows. Terraform earned its place when environments changed slowly and were long-lived, but today’s rapid, continuous changes add coordination overhead (state, wrappers, module orchestration). Many teams are quietly shifting parts of their workflows to cloud-native SDKs and CLIs for first-class features, finer control, less abstraction, and more predictable deployments.</span></p><p lang="hr"><strong>The goal isn’t to get rid of what works, but to find tools that grow with your team&#8217;s needs.</strong> As the world of infrastructure changes, solutions will change too. For example, <a href="https://dev.xoap.io" target="_blank" rel="noopener">XOAP</a> is one of the new generation solutions built for fast-paced development (and no extra complexity). Experts define the foundation once (images, platforms, policies) and operators handle daily work independently via GUI and automation. Outcome? Stable infrastructure, experts freed to focus on high-value work, and lower costs aligned with the new generation of tools designed for fast-paced delivery (without extra complexity).</p><p lang="hr">You can see how it works for free, just click the &#8220;Start for free&#8221; button below!</p>								</div>
				</div>
				<div class="elementor-element elementor-element-5b2e0ff elementor-widget elementor-widget-text-editor" data-id="5b2e0ff" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<blockquote><p><strong>You may also be interested in:<br /></strong><a href="https://dev.xoap.io/why-configuration-as-code-is-essential-for-modern-devops/" target="_blank" rel="noopener">→ Why configuration as code is essential for modern DevOps</a><br /><a href="https://dev.xoap.io/convert-group-policy-into-dsc-with-baselinemanagement-module/" target="_blank" rel="noopener">→ </a><a href="https://dev.xoap.io/why-automation-matters-and-how-it-teams-can-get-started/" target="_blank" rel="noopener">Why automation matters and how IT teams can get started</a><br /><a href="https://dev.xoap.io/how-to-use-layered-dsc-configurations/" target="_blank" rel="noopener">→ </a><a href="https://dev.xoap.io/ivanti-workspace-control-vdx-best-alternative/" target="_blank" rel="noopener"><span lang="en-US">Feature-rich alternative to Ivanti</span></a></p></blockquote>								</div>
				</div>
				<div class="elementor-element elementor-element-e38b769 elementor-widget elementor-widget-spacer" data-id="e38b769" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-4d386dd e-con-full e-flex e-con e-child" data-id="4d386dd" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-ba9e329 e-con-full e-flex e-con e-child" data-id="ba9e329" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;gradient&quot;,&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-8a4b2cf e-con-full e-flex e-con e-child" data-id="8a4b2cf" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-329cfa0 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="329cfa0" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;none&quot;,&quot;_animation_tablet&quot;:&quot;fadeInDown&quot;}" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default"><a href="https://auth.dev.xoap.io/auth/realms/my.dev.xoap.io/protocol/openid-connect/registrations?client_id=portal&#038;response_type=code&#038;scope=openid%20email&#038;redirect_uri=https://my.dev.xoap.io&#038;kc_locale=en&#038;_ga=2.120291981.440170699.1710334465-1088457358.1705491014" target="_blank">Speed up your infrastructure management</a></h2>				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-6519c7b e-con-full e-flex e-con e-child" data-id="6519c7b" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-030b06a elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-global elementor-global-18898 elementor-widget-button" data-id="030b06a" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation_mobile&quot;:&quot;none&quot;}" title="Get lifetime access" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://auth.dev.xoap.io/auth/realms/my.dev.xoap.io/protocol/openid-connect/registrations?client_id=portal&#038;response_type=code&#038;scope=openid%20email&#038;redirect_uri=https://my.dev.xoap.io&#038;kc_locale=en" target="_blank" title="Start for free">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Start for free</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				<div class="elementor-element elementor-element-9144c9e elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-widget elementor-widget-global elementor-global-18905 elementor-widget-button" data-id="9144c9e" data-element_type="widget" data-e-type="widget" title="Get lifetime access" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-sm" href="https://calendly.com/xoap/30min" target="_blank" title="Book a demo">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Book a demo</span>
					</span>
					</a>
				</div>
								</div>
				</div>
				</div>
				</div>
				</div>
				</div>
		<p>The post <a href="https://dev.xoap.io/rethinking-infrastructure-as-code-in-2025/">Rethinking infrastructure as code in 2025</a> appeared first on <a href="https://dev.xoap.io">XOAP</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
