<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Pulumi Team</title>
    <description>The latest articles on Forem by Pulumi Team (@pulumidev).</description>
    <link>https://forem.com/pulumidev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F572396%2F965d1ec1-69c0-4722-b01e-1d104c1d4ff4.png</url>
      <title>Forem: Pulumi Team</title>
      <link>https://forem.com/pulumidev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/pulumidev"/>
    <language>en</language>
    <item>
      <title>Superintelligence Infrastructure: Managing AI Workloads with General-Purpose Programming Languages</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Wed, 17 Dec 2025 17:42:13 +0000</pubDate>
      <link>https://forem.com/pulumi/superintelligence-infrastructure-managing-ai-workloads-with-general-purpose-programming-languages-37cd</link>
      <guid>https://forem.com/pulumi/superintelligence-infrastructure-managing-ai-workloads-with-general-purpose-programming-languages-37cd</guid>
      <description>&lt;h2&gt;
  
  
  AI Infrastructure Is Outgrowing Static Configuration
&lt;/h2&gt;

&lt;p&gt;AI systems no longer resemble traditional application stacks. Training large models, running distributed inference, and scaling GPU-backed services introduce infrastructure patterns that change constantly. Capacity shifts. Regions rebalance. New services appear and disappear based on demand.&lt;/p&gt;

&lt;p&gt;Static configuration tools struggle in this environment. They assume infrastructure is declared once and applied repeatedly. AI workloads require infrastructure that behaves like software: adaptive, testable, and designed to evolve.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hubs.ly/Q03YvH260" rel="noopener noreferrer"&gt;Superintelligence Infrastructure&lt;/a&gt; is built for that reality.&lt;/p&gt;

&lt;h2&gt;
  
  
  Infrastructure Defined with General-Purpose Programming Languages
&lt;/h2&gt;

&lt;p&gt;Pulumi allows teams to define cloud infrastructure using general-purpose programming languages such as Python, TypeScript, and Go. For AI platforms, this unlocks capabilities that are difficult or impractical to express in declarative templates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Conditional resource creation based on model type or environment&lt;/li&gt;
&lt;li&gt;Loops for provisioning large, dynamic GPU fleets&lt;/li&gt;
&lt;li&gt;Shared abstractions for training, tuning, and inference pipelines&lt;/li&gt;
&lt;li&gt;Unit tests and previews before deploying infrastructure changes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Infrastructure becomes part of the application lifecycle instead of a separate, static artifact.&lt;/p&gt;

&lt;h2&gt;
  
  
  Designed for Large-Scale AI Environments
&lt;/h2&gt;

&lt;p&gt;Superintelligence Infrastructure supports AI workloads operating at massive scale, including environments with tens of thousands of resources across regions and cloud providers.&lt;/p&gt;

&lt;p&gt;Common use cases include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Distributed training clusters with elastic GPU capacity&lt;/li&gt;
&lt;li&gt;Multi-region inference services with low-latency routing&lt;/li&gt;
&lt;li&gt;Automated teardown and rebuild of experimental environments&lt;/li&gt;
&lt;li&gt;Policy-enforced deployments for security, cost, and compliance&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These systems are defined, reviewed, and deployed using the same engineering workflows teams already use for application development.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI-Native Operations with Pulumi
&lt;/h2&gt;

&lt;p&gt;Pulumi integrates AI-assisted workflows directly into infrastructure management. Platform teams can use AI to explore infrastructure state, detect drift, generate updates, and apply changes safely under policy control.&lt;/p&gt;

&lt;p&gt;This approach reduces manual intervention while keeping humans in the loop through previews, approvals, and audit trails.&lt;/p&gt;

&lt;p&gt;Superintelligence Infrastructure combines automation with governance instead of trading one for the other.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Practical Path to Production AI Infrastructure
&lt;/h2&gt;

&lt;p&gt;For teams building AI platforms, the challenge is not experimentation. The challenge is turning prototypes into durable, repeatable production systems.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pulumi provides a foundation that supports:&lt;/li&gt;
&lt;li&gt;Rapid iteration during early model development&lt;/li&gt;
&lt;li&gt;Controlled promotion into production environments&lt;/li&gt;
&lt;li&gt;Ongoing evolution as models, data, and usage change&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Learn &lt;a href="https://hubs.ly/Q03YvH260" rel="noopener noreferrer"&gt;how Superintelligence Infrastructure is used to manage AI systems&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>cloud</category>
      <category>devops</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>What AWS’s 2025 AI and Cloud Updates Mean for Engineers Building Large Systems</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Thu, 11 Dec 2025 15:58:12 +0000</pubDate>
      <link>https://forem.com/pulumi/what-awss-2025-ai-and-cloud-updates-mean-for-engineers-building-large-systems-4jmm</link>
      <guid>https://forem.com/pulumi/what-awss-2025-ai-and-cloud-updates-mean-for-engineers-building-large-systems-4jmm</guid>
      <description>&lt;p&gt;AWS announced major changes this year that affect how teams design, train, and operate large-scale systems. If you work in AI infrastructure, MLOps, or cloud engineering, several releases stand out for their long-term impact.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.pulumi.com/" rel="noopener noreferrer"&gt;Pulumi&lt;/a&gt; put together a full breakdown, but here is the technical signal behind the announcements.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj7r396ojy0ah0b2y2hr0.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj7r396ojy0ah0b2y2hr0.jpeg" alt=" " width="800" height="1192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Nova Forge and the new model training workflow
&lt;/h2&gt;

&lt;p&gt;AWS is shifting model training toward a platform-based workflow. &lt;a href="https://www.aboutamazon.com/news/aws/aws-agentic-ai-amazon-bedrock-nova-models" rel="noopener noreferrer"&gt;Nova Forge&lt;/a&gt; abstracts much of the orchestration, data movement, and scaling logic that teams previously had to build themselves. This is important because training pipelines are becoming too large and too complex for ad-hoc solutions.&lt;/p&gt;

&lt;p&gt;For teams building specialized LLMs or domain-specific models, this lowers both time and operational overhead.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trainium 3 and the next stage of high-throughput compute
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.aboutamazon.com/news/aws/trainium-3-ultraserver-faster-ai-training-lower-cost" rel="noopener noreferrer"&gt;Trainium 3&lt;/a&gt; extends AWS’s hardware roadmap with higher throughput and deeper integration into the broader AI stack. The takeaway is that large-scale training is becoming more predictable and better supported by AWS-native services.&lt;/p&gt;

&lt;p&gt;This matters for iteration speed and total cost at scale.&lt;/p&gt;

&lt;h2&gt;
  
  
  AgentCore’s move toward structured automation
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.aboutamazon.com/news/aws/aws-amazon-bedrock-agent-core-ai-agents" rel="noopener noreferrer"&gt;AgentCore&lt;/a&gt; is evolving from helper APIs into a system that understands user intent and applies guardrails across environments. This is a step toward infrastructure that can participate in operations rather than simply expose endpoints.&lt;/p&gt;

&lt;p&gt;For teams wrestling with multi-environment complexity, this points toward more automated operational patterns.&lt;/p&gt;

&lt;h2&gt;
  
  
  A shift in what cloud engineering workflows look like
&lt;/h2&gt;

&lt;p&gt;The common pattern across these launches is integration. Compute, orchestration, training workflows, and automation are becoming parts of a single continuum rather than separate tools stitched together.&lt;/p&gt;

&lt;p&gt;Pulumi’s analysis places these changes in the bigger shift toward adaptive infrastructure. Tools like &lt;a href="https://www.pulumi.com/product/neo/#video" rel="noopener noreferrer"&gt;Neo&lt;/a&gt; align with this direction by &lt;a href="https://www.pulumi.com/product/superintelligence-infrastructure/" rel="noopener noreferrer"&gt;introducing AI-supported workflows into everyday development&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Read the full analysis
&lt;/h2&gt;

&lt;p&gt;For a deeper look at how AWS is shaping AI and cloud infrastructure going into the next decade, read "&lt;a href="https://www.pulumi.com/blog/aws-reinvent-2025-roundup/" rel="noopener noreferrer"&gt;AWS built an integrated AI Agent training pipeline and they want you to rent it&lt;/a&gt;".&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>machinelearning</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Zero to Production with AI Agentic Workflows – Free Hands-On Course</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Fri, 03 Oct 2025 22:08:38 +0000</pubDate>
      <link>https://forem.com/pulumi/zero-to-production-with-ai-agentic-workflows-free-hands-on-course-21nn</link>
      <guid>https://forem.com/pulumi/zero-to-production-with-ai-agentic-workflows-free-hands-on-course-21nn</guid>
      <description>&lt;p&gt;Manual infrastructure tasks slow teams down. AI agents and agentic workflows offer a new way forward—reducing repetitive work, improving governance, and unlocking more time for strategy and innovation.&lt;/p&gt;

&lt;p&gt;We’re launching a &lt;strong&gt;free, hands-on virtual course&lt;/strong&gt;:&lt;br&gt;
&lt;strong&gt;&lt;a href="https://info.pulumi.com/ai/agentic-workflows-for-platform-engineering-course?utm_source=dev.to&amp;amp;utm_medium=social&amp;amp;utm_campaign=FY2026Q2_AI-Agentic-Workflows-Course&amp;amp;utm_content=Neo"&gt;Zero to Production with AI Agentic Workflows&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Starts October 14&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Over the course of five interactive workshops, you’ll learn how to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Apply AI agents to accelerate platform engineering&lt;/li&gt;
&lt;li&gt;Streamline infrastructure provisioning with automation&lt;/li&gt;
&lt;li&gt;Balance developer autonomy with governance at scale&lt;/li&gt;
&lt;li&gt;Create reusable patterns and templates to boost productivity&lt;/li&gt;
&lt;li&gt;Handle surges in infrastructure demand with intelligent automation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://info.pulumi.com/ai/agentic-workflows-for-platform-engineering-course?utm_source=dev.to&amp;amp;utm_medium=social&amp;amp;utm_campaign=FY2026Q2_AI-Agentic-Workflows-Course&amp;amp;utm_content=Neo"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs82k8tslpdum3miua14i.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Each session includes live instruction, hands-on labs, and Q&amp;amp;A.&lt;br&gt;
&lt;strong&gt;Recordings will be available&lt;/strong&gt; only to registered participants. Participants who attend all the workshops will earn a &lt;strong&gt;completion badge&lt;/strong&gt; to showcase their skills. &lt;a href="https://info.pulumi.com/ai/agentic-workflows-for-platform-engineering-course?utm_source=dev.to&amp;amp;utm_medium=social&amp;amp;utm_campaign=FY2026Q2_AI-Agentic-Workflows-Course&amp;amp;utm_content=Neo"&gt;Register for the course.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>aws</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Meet Neo: Your Newest Platform Engineer</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Thu, 11 Sep 2025 17:27:32 +0000</pubDate>
      <link>https://forem.com/pulumi/meet-neo-your-newest-platform-engineer-4a9d</link>
      <guid>https://forem.com/pulumi/meet-neo-your-newest-platform-engineer-4a9d</guid>
      <description>&lt;p&gt;Infrastructure teams are drowning in demands. While your organization races to adopt AI, platform teams are stretched thin managing the infrastructure demands. What if there was a better way?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Meet Neo, your newest platform engineer teammate.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;See what's possible when intelligence meets infrastructure.&lt;/p&gt;

&lt;p&gt;Join us September 16th at 10:00 AM PT (UTC-7) for the exclusive introduction to Neo. &lt;a href="https://www.pulumi.com/product/neo/#video" rel="noopener noreferrer"&gt;Save the date now, don't miss out!&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>infrastructureascode</category>
      <category>productivity</category>
    </item>
    <item>
      <title>🚀 Pulumi AWS Provider 7.0: Multi-Region AWS IaC &amp; IAM Role Chaining</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Tue, 12 Aug 2025 15:41:29 +0000</pubDate>
      <link>https://forem.com/pulumi/pulumi-aws-provider-70-multi-region-aws-iac-iam-role-chaining-52be</link>
      <guid>https://forem.com/pulumi/pulumi-aws-provider-70-multi-region-aws-iac-iam-role-chaining-52be</guid>
      <description>&lt;p&gt;Pulumi AWS Provider 7.0 is here, bringing major enhancements to &lt;strong&gt;AWS infrastructure as code&lt;/strong&gt; workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  What’s New Highlights
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Multi-region support from a single provider&lt;/strong&gt;: Define resources in different AWS regions without duplicating provider configurations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;IAM role chaining&lt;/strong&gt;: Securely assume multiple roles for complex cross-account deployments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;S3 resource simplification&lt;/strong&gt;: Unified bucket resources for easier migration and management.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why It Matters
&lt;/h3&gt;

&lt;p&gt;These updates make it easier to manage &lt;strong&gt;scalable, secure, multi-region AWS deployments&lt;/strong&gt; in general programming languages such as TypeScript, Python, Go, C#, or Java.&lt;/p&gt;

&lt;p&gt;📖 Full release notes, migration guide, and code examples at &lt;a href="https://www.pulumi.com/blog/announcing-7-0-of-the-pulumi-aws-provider/" rel="noopener noreferrer"&gt;Pulumi AWS Provider 7.0&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>devsecops</category>
      <category>python</category>
    </item>
    <item>
      <title>Kubernetes Best Practices I Wish I Had Known Before</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Thu, 03 Apr 2025 18:23:36 +0000</pubDate>
      <link>https://forem.com/pulumi/kubernetes-best-practices-i-wish-i-had-known-before-427h</link>
      <guid>https://forem.com/pulumi/kubernetes-best-practices-i-wish-i-had-known-before-427h</guid>
      <description>&lt;p&gt;Getting started with Kubernetes can feel like climbing Mount Everest in flip-flops. On the surface, it seems straightforward—deploy your containerized app and go. But then the iceberg hits: YAML sprawl, mysterious Pod evictions, and networking tangles that make you question everything.&lt;/p&gt;

&lt;p&gt;After years wrangling Kubernetes in production, I’ve pulled together a shortlist of lessons I wish someone had handed me on Day 1. These aren't just tips—they're sanity savers.&lt;/p&gt;

&lt;p&gt;🚨 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#1-dont-skimp-on-resource-requests-and-limits"&gt;Don't Skimp on Resource Requests &amp;amp; Limits&lt;/a&gt;&lt;br&gt;
Skipping these? Say hello to throttling and unexpected Pod evictions. Use tools like Prometheus to fine-tune based on real usage.&lt;/p&gt;

&lt;p&gt;📛 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#2-namespace-like-your-life-depends-on-it"&gt;Namespace Like Your Life Depends on It&lt;/a&gt;&lt;br&gt;
Namespaces are more than folders—they’re your key to organizing, securing, and scaling your workloads. Pair them with RBAC for a tighter ship.&lt;/p&gt;

&lt;p&gt;🎯 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#6-lean-on-liveness-readiness-and-startup-probes"&gt;Use Probes for Container Health&lt;/a&gt;&lt;br&gt;
Liveness, readiness, and startup probes let Kubernetes know if your app is working. Without them, your cluster is flying blind.&lt;/p&gt;

&lt;p&gt;🔐 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#7-mind-your-security-rbac-pod-security-and-secrets"&gt;Security: Non-Negotiable&lt;/a&gt;&lt;br&gt;
Set RBAC from Day 1. Use Pod Security Standards. Store secrets securely (hint: not in environment variables—use tools like Pulumi ESC or external secrets stores).&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#4-use-a-package-manager-for-your-yaml-files"&gt;Don’t Handcraft YAML Forever&lt;/a&gt;&lt;br&gt;
Use Helm, Kustomize, or tools like Pulumi to manage infra with code. Your future self (and teammates) will thank you.&lt;/p&gt;

&lt;p&gt;📊 &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#8-monitor-everything-and-then-monitor-some-more"&gt;Monitor Everything&lt;/a&gt;&lt;br&gt;
From metrics (Prometheus) to logs (Loki, EFK) and traces (Jaeger), observability is your safety net. Set alerts before things break.&lt;/p&gt;

&lt;p&gt;⚙️ &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication#9-automate-deployments-with-cicd"&gt;Automate Deployments&lt;/a&gt;&lt;br&gt;
Embrace CI/CD and GitOps to avoid the “it works on my machine” dilemma. Tools like Argo CD or GitHub Actions are your friends.&lt;/p&gt;

&lt;p&gt;This is just &lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication"&gt;the tip of the iceberg&lt;/a&gt;. Want to avoid common Kubernetes pitfalls and keep your clusters running smoothly&lt;/p&gt;

&lt;p&gt;👉 Read the full article:&lt;a href="https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication"&gt; Kubernetes Best Practices I Wish I Had Known Before&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>devops</category>
      <category>development</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Cloud Container Iceberg - At least 105 ways to run a container in the cloud</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Fri, 28 Feb 2025 16:45:57 +0000</pubDate>
      <link>https://forem.com/pulumi/the-cloud-container-iceberg-at-least-105-ways-to-run-a-container-in-the-cloud-3kb5</link>
      <guid>https://forem.com/pulumi/the-cloud-container-iceberg-at-least-105-ways-to-run-a-container-in-the-cloud-3kb5</guid>
      <description>&lt;p&gt;If it connects to the internet, someone has tried running a container on it. From AWS racks packed with phones to quantum computers, the world of container deployment extends far beyond the usual cloud providers. You might think you know where containers run—but that’s just the tip of the iceberg.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl9frrdjjzz4bih99pkjs.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl9frrdjjzz4bih99pkjs.jpg" alt="The Container Iceberg" width="800" height="1422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At the surface, there are the well-known cloud platforms: AWS, Azure, and Google Cloud, with services like Kubernetes, Fargate, and Cloud Run. But below the waterline? That’s where things get interesting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Beyond the Surface: The Hidden Depths of Container Hosting
&lt;/h2&gt;

&lt;p&gt;Just below the mainstream, you’ll find alternative cloud platforms and regional providers—some offering K8s with local flair, others designed for hyper-specific workloads. Venture deeper, and you’ll discover serverless platforms that use containers in unexpected ways, experimental multi-cloud orchestration, and hybrid deployments that let you run containers across data centers, IoT devices, and even mail-delivered hardware.&lt;/p&gt;

&lt;p&gt;And if you're willing to go all the way down? Containers at the edge—running on factory equipment, Raspberry Pis, and, yes, even smart toasters.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Deep Does the Iceberg Go?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Usual Suspects&lt;/strong&gt; – The mainstream cloud container services you already know.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Lesser-Known Options&lt;/strong&gt; – Specialized K8s providers, regional cloud giants, and alternative deployment platforms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Experimental Zone&lt;/strong&gt; – Serverless containerized workloads, hybrid-cloud solutions, and multi-cloud orchestration nightmares.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Abyss&lt;/strong&gt; – Containers in places they should never be: quantum computers, edge devices, and mobile test farms. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The world of container hosting is far bigger than it seems. What starts with Kubernetes in the cloud quickly spirals into a rabbit hole of specialized services, hybrid solutions, and experimental edge cases.&lt;/p&gt;

&lt;p&gt;Want to see the full breakdown?&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;Dive into the complete article here:&lt;/strong&gt; &lt;a href="https://www.pulumi.com/blog/cursed-container-iceberg/?utm_source=dev.to&amp;amp;utm_medium=referral&amp;amp;utm_campaign=content-syndication"&gt;The Cloud Container Iceberg&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>cloud</category>
      <category>aws</category>
      <category>devops</category>
    </item>
    <item>
      <title>Introducing Azure Native 2.0</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Wed, 14 Jun 2023 21:32:19 +0000</pubDate>
      <link>https://forem.com/pulumi/introducing-azure-native-20-3o0e</link>
      <guid>https://forem.com/pulumi/introducing-azure-native-20-3o0e</guid>
      <description>&lt;p&gt;We are thrilled to announce the &lt;a href="https://github.com/pulumi/pulumi-azure-native/releases/tag/v2.0.0-beta.1" rel="noopener noreferrer"&gt;beta release&lt;/a&gt; of the Pulumi Azure Native Provider 2.0, a significant upgrade to Pulumi’s native provider for Microsoft Azure. The Azure Native provider offers the most complete support for Azure possible - with same day access to the entire surface area of the Azure features from Azure Resource Manager. Every property of each module is always represented in the SDKs. The 2.0 release brings a host of exciting features and improvements for performance and usability that will enhance your experience with managing Azure resources and empower you to build robust and scalable cloud infrastructure more efficiently.&lt;/p&gt;

&lt;p&gt;At Pulumi, we understand the importance of keeping up with the ever-evolving cloud landscape. The Pulumi Azure Native Provider 2.0 represents our commitment to providing you with the best tools to harness the full power of Microsoft Azure. With automatic generation from Azure API specs, we are able to provide you with same-day access to the entire &lt;a href="https://docs.microsoft.com/en-us/rest/api/azure/" rel="noopener noreferrer"&gt;Azure API surface&lt;/a&gt; including all available properties. Let’s dive into some of the key enhancements in this release!&lt;/p&gt;

&lt;h2&gt;
  
  
  Reduced SDK Size for Faster Development
&lt;/h2&gt;

&lt;p&gt;We’ve listened to your feedback and have made significant optimizations to the Azure Native Provider SDKs. With careful fine-tuning and restructuring, we have achieved a significant decrease in size of over 50% for SDKs with multi-versioned modules. This improvement translates into faster development times, reduced resource consumption, and an overall smoother experience when working with the provider.&lt;/p&gt;

&lt;p&gt;So, how did we accomplish this? For starters, we’ve removed all deprecated Azure API modules up to the 2.0 release date. The bigger impact was made by identifying and removing all forward-compatible module versions. That is to say we’ve excluded any redundant versions and kept only the versions that introduce breaking changes. Where these versions are not the current latest and new default, they remain available as explicit versions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsk131og5fg1w60sar5ka.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsk131og5fg1w60sar5ka.png" alt="sdk-size-version-diagram" width="800" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You may be wondering about the significance between explicit and default versions. Well, when Azure releases new features they often create a new version of a service API. These versions are named using dates such as “2021-01-02” or “2022-05-08-preview”. There’s many versions of each module in the SDK, so we pick a version of each module for the top-level default. To learn more about module versions, visit the &lt;a href="https://www.pulumi.com/registry/packages/azure-native/version-guide/" rel="noopener noreferrer"&gt;Azure Native Version Guide&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Refreshed Default Module Versions
&lt;/h2&gt;

&lt;p&gt;In the latest release, we have refreshed the default module versions to align with the latest Azure API versions from Microsoft. With our continued commitment to same-day access to Azure API surface, you always have access to the most up-to-date features and capabilities offered by Azure services. By leveraging the latest module versions, you can take advantage of the latest and most desired features directly from Azure while building your infrastructure with Pulumi.&lt;/p&gt;

&lt;p&gt;If you would like to upgrade to 2.x, but continue using the same Azure API version that was used in your 1.x, you can do that by specifying the compatible explicit version available in the 2.x provider. Shown below are examples of how that change might look.&lt;/p&gt;

&lt;p&gt;(TypeScript)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- import { EventSubscription } from "@pulumi/azure-native/eventgrid";
+ import { EventSubscription } from "@pulumi/azure-native/eventgrid/v20200601";
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Expanded Top-Level Default Module Coverage
&lt;/h2&gt;

&lt;p&gt;We’re excited to expand our top-level default version coverage by 226 resources, 274 functions, and 5526 input properties in this release, bringing the total to 1,637, 2,015, and 30,652 respectively. With this extensive collection of modules at your disposal, you can easily provision and manage the full range of Azure services using Pulumi. Whether you’re working with virtual machines, databases, networking, or any other Azure service, the Azure Native Provider has you covered.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpqp81dfy77duhlrzbl6j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpqp81dfy77duhlrzbl6j.png" alt="provider-coverage-by-version" width="800" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Resolved Title Case Inconsistency
&lt;/h2&gt;

&lt;p&gt;For a consistent and predictable experience across the provider, we have resolved &lt;a href="https://github.com/pulumi/pulumi-azure-native/pull/2366" rel="noopener noreferrer"&gt;an issue with title case inconsistencies&lt;/a&gt; across resources and functions. All previous resource names have been aliased, and do not require any changes to the Pulumi program. However, functions that have a corrected name will need to be updated. This enhancement ensures a unified and predictable experience while working across resource types, making it easier for you to navigate and understand the provider’s capabilities.&lt;/p&gt;

&lt;h2&gt;
  
  
  Simplified User Assigned Identity Inputs
&lt;/h2&gt;

&lt;p&gt;We have simplified the representation of user assigned identity inputs by recognizing them as string arrays. This change provides a more intuitive and clear approach when configuring user assigned identities for your Azure modules. You can now reference these as &lt;code&gt;UserAssignedIdentities: [exampleUserAssignedIdentity.id]&lt;/code&gt; without jumping through any hoops.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import * as resources from "@pulumi/azure-native/resources";
import * as managedidentity from "@pulumi/azure-native/managedidentity";
import * as storage from "@pulumi/azure-native/storage";

// Create a resource group
const resourceGroup = new resources.ResourceGroup("my-resource-group");

// Create a user-assigned managed identity
const userAssignedIdentity = new managedidentity.UserAssignedIdentity("my-user-assigned-identity", {
    resourceGroupName: resourceGroup.name,
});

// Create a storage account that references the user-assigned managed identity
const storageAccount = new storage.StorageAccount("mystorageaccount", {
    resourceGroupName: resourceGroup.name,
    kind: "StorageV2",
    location: resourceGroup.location,
    identity: {
        type: "UserAssigned",
        userAssignedIdentities: [userAssignedIdentity.id],
    },
    sku: {
        name: "Standard_LRS",
    },
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Before this change, the identity block would need to use an apply as follows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;user_assigned_identity.id.apply(lambda id: {id: {}})
Migrating from 1.x to 2.x
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We recommend you update to the &lt;a href="https://github.com/pulumi/pulumi-azure-native/releases/tag/v1.103.0" rel="noopener noreferrer"&gt;latest version of Azure Native 1.x&lt;/a&gt; prior to moving to 2.x. This will enable you to address existing deprecations and see the recommended substitutions ahead of the major version upgrade. Head over to the &lt;a href="https://www.pulumi.com/registry/packages/azure-native-v2/from-v1-to-v2" rel="noopener noreferrer"&gt;migration guide&lt;/a&gt; which outlines the necessary steps to update your existing Pulumi projects and ensuring a smooth migration experience.&lt;/p&gt;

&lt;p&gt;Current users of the Pulumi Azure Classic Provider can follow the &lt;a href="https://www.pulumi.com/registry/packages/azure-native/from-classic/" rel="noopener noreferrer"&gt;classic to native migration guide&lt;/a&gt; to take advantage of all the latest and greatest features available in Pulumi the Azure Native Provider.&lt;/p&gt;

&lt;p&gt;While you can immediately start leveraging the improved performance, you may need to make some changes in order to continue using specific Azure API module versions or user assigned identity inputs. Use the Pulumi Azure Native Provider documentation within your IDE to determine the explicit API version that is available and fully compatible with your existing deployment.&lt;/p&gt;

&lt;p&gt;The Pulumi Azure Native Provider 2.0 beta is available today for Pulumi programs using TypeScript, Python, .NET, and Go. To learn more about the Pulumi Azure Native Provider 2.0 and explore its capabilities, check out our &lt;a href="https://www.pulumi.com/registry/packages/azure-native-v2/" rel="noopener noreferrer"&gt;updated documentation&lt;/a&gt; and resources. We value your feedback and encourage you to reach out in community slack or &lt;a href="https://github.com/pulumi/pulumi-azure-native" rel="noopener noreferrer"&gt;open an issue&lt;/a&gt; for any questions or suggestions.&lt;/p&gt;

&lt;p&gt;Try out the Pulumi Azure Native Provider 2.0 beta today and take the next step in your journey with infrastructure as code on Microsoft Azure!&lt;/p&gt;

</description>
      <category>azure</category>
      <category>infrastructureascode</category>
      <category>pulumi</category>
    </item>
    <item>
      <title>Review Stacks: Collaborate in the Cloud</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Wed, 14 Jun 2023 21:24:50 +0000</pubDate>
      <link>https://forem.com/pulumi/review-stacks-collaborate-in-the-cloud-1nbe</link>
      <guid>https://forem.com/pulumi/review-stacks-collaborate-in-the-cloud-1nbe</guid>
      <description>&lt;p&gt;Today we’re excited to announce &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/review-stacks" rel="noopener noreferrer"&gt;Review Stacks&lt;/a&gt; – dedicated cloud environments that get created automatically every time a pull request is opened, all powered by &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments" rel="noopener noreferrer"&gt;Pulumi Deployments&lt;/a&gt;. Open a pull request, and Pulumi Deployments will stand up a stack with your changes and the Pulumi GitHub App will add a PR comment with the outputs from your deployment. Merge the PR and Pulumi Deployments will destroy the stack and free up the associated resources. It has never been simpler to pick up an unfamiliar codebase, make changes to &lt;strong&gt;both&lt;/strong&gt; application and infrastructure code, and share a live environment for review with your teammates.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcx9tl7bh3nzrvv0zdorn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcx9tl7bh3nzrvv0zdorn.png" alt="Review Stacks Comment" width="800" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ephemeral environments for front-end development and static websites have become commonplace in recent years, but infrastructure and complex systems have been unsupported up until this point. Review Stacks enable you to iterate on both application code changes and infrastructure code changes at the same time. Making changes to HTML, CSS, Next.js, Go APIs, Pulumi configuration, subnet configuration, databases, and load balancers are all possible with Review Stacks. No more fumbling with out-of-date READMEs and developer documentation. Just open a pull request and you can start testing changes against everything from simple static websites to API servers, microservices, data pipelines, Kubernetes clusters, and any other piece of infrastructure across Pulumi’s 100+ cloud providers.&lt;/p&gt;

&lt;p&gt;Review Stacks manage the full lifecycle of your cloud development environment including creating it when the PR is opened, updating it every time a new commit is pushed, and destroying and cleaning up all cloud resources when the pull request is merged or closed. They even integrate with GitHub checks so that you can gate your pull requests on successful Review Stack deployments.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdq70u9asuufev347ic0x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdq70u9asuufev347ic0x.png" alt="Pull Request Check Integration" width="800" height="629"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pulumi customers already using Review Stacks find that it saves their developers time. Having a standardized process for development environments and change management makes it easier to onboard new developers, and load-balance teammates onto unfamiliar projects and codebases. It also makes it substantially easier for developers to work on multiple feature branches and bug fixes at the same time, as they don’t have to worry about manually maintaining and juggling development environments.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Pulumi allows every engineer to build and update infrastructure instead of only our infrastructure team, which enables us to ship faster than if we were using a domain-specific language,” said Aaron Gibralter, head of engineering, Mighty. “With Pulumi Deployments, we could easily set up a standardized CI/CD infrastructure workflow for every engineer that immediately makes them productive. Review Stacks automates the work of managing our own ephemeral infrastructure and makes our lives easier.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Review Stacks also provide an avenue for optimizing cloud costs. Rather than keeping development infrastructure running 24/7, Review Stacks only exist as long as an engineer works on a feature. Since Review Stacks are flexible and built on Pulumi IaC, it is also possible to configure it to deploy to multi-tenant environments that share development infrastructure to further streamline costs.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“At GitHub, we are constantly seeking to improve the developer experience and our partner ecosystem plays a big role in that.” said Matthew Manning, Senior Business Development Manager for GitHub Actions, “The launch of Pulumi Review Stacks with GitHub makes it easier for teams to review and test their products before shipping which ultimately improves the developer experience.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Configuring Review Stacks
&lt;/h2&gt;

&lt;p&gt;Configuring Review Stacks is a simple three-step process:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a new stack, by convention named &lt;code&gt;pr&lt;/code&gt;, and corresponding &lt;code&gt;Pulumi.pr.yaml&lt;/code&gt; configuration file - this config will be copied into every review stack that gets created, and can even be modified within a PR.&lt;/li&gt;
&lt;li&gt;Configure &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/reference/#deployment-settings" rel="noopener noreferrer"&gt;Deployment Settings&lt;/a&gt; for the stack - this specifies how to acquire source code, cloud credentials and more when deploying via Pulumi Deployments.&lt;/li&gt;
&lt;li&gt;Set the &lt;code&gt;pullRequestTemplate&lt;/code&gt; Deployment Setting to true - this indicates that all pull requests against this stack’s branch should reference this stack as a Review Stack template.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;You can use an existing stack as a Review Stack template, as long as it has Deployment Settings configured. This will result in Review Stacks being deployed into the same cloud account. If you want to separate the cloud resources in your production stack from the resources created via Review Stacks then you can create a separate stack and template that references a different cloud account (AWS, Azure, GCP, etc).&lt;/p&gt;

&lt;p&gt;Review Stacks and Deployment Settings can be configured via the Pulumi Cloud console, the Pulumi Cloud REST API, or within a Pulumi Program using the Pulumi Cloud Resource Provider.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pulumi Cloud UI
&lt;/h3&gt;

&lt;p&gt;It is just one click to turn on Review Stacks via the Pulumi Cloud console.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0cmcnnnhkp1bhz5h0yf.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0cmcnnnhkp1bhz5h0yf.gif" alt="Deployment Settings for Review Stacks" width="1538" height="1080"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  REST API
&lt;/h3&gt;

&lt;p&gt;You can programmatically configure Review Stacks and Deployment Settings at scale across thousands of projects using the D&lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/api/#patch-settings" rel="noopener noreferrer"&gt;eployments REST API&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl -i -XPOST -H "Content-Type: application/json" -H "Authorization: token $PULUMI_ACCESS_TOKEN" \
--location "https://api.pulumi.com/api/preview/org/project/stack/deployment/settings" \
-d '{
  "gitHub":{
    "pullRequestTemplate": true
    }
}'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Pulumi Cloud Resource Provider
&lt;/h3&gt;

&lt;p&gt;You can use Pulumi to manage and code review Deployment Settings and Review Stacks with the &lt;a href="https://www.pulumi.com/registry/packages/pulumiservice" rel="noopener noreferrer"&gt;Pulumi Cloud Provider&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import * as pulumiservice from "@pulumi/pulumiservice";

const deploymentSettings = new pulumiservice.DeploymentSettings("deploymentSettings", {
    organization: pulumi.getOrganization(),
    project: "your project",
    stack: "your stack",
    github: {
        deployCommits: true,
        previewPullRequests: true,
        pullRequestTemplate: true,
        repository: "pulumi/deployment-automation",
    },
    sourceContext: {
        git: {
            branch: "refs/heads/main",
            repoDir: "pulumi-pet-shop",
        },
    },
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Collaborate in the Cloud
&lt;/h2&gt;

&lt;p&gt;At Pulumi, our engineering team writes a ton of code. We have hundreds of repositories with programs managing thousands of stacks and tens of thousands of cloud resources. These tools and services power production workloads, internal tools, business intelligence and process, and more. And of course we use Pulumi to ship all of it. When you’re an engineer working in one of these repositories, making a code change is the easy part. The hard part is figuring out how to get a tight dev loop going—in particular, faithfully verifying your changes before merging and deploying them. Are there instructions in the README for running locally? A Docker Compose file? Or maybe standalone dev environments? Can I figure out what config and upstream stack references are required to stand up a fresh dev stack? And what about service dependencies? Pulumi makes it incredibly easy to build in the cloud and write prolific amounts of code, however, with that increase in development velocity comes a need to standardize the entire process by which we develop, test, review, and ship our code.&lt;/p&gt;

&lt;p&gt;We’ve heard similar stories from hundreds of customers. From startup teams of five to enterprises of thousands, they’re all looking for the same thing - so we went ahead and built it. With Review Stacks and Pulumi Deployments, you can ship with greater velocity, confidence, and collaboration.&lt;/p&gt;

&lt;p&gt;Check out these resources and get started today:&lt;/p&gt;

&lt;p&gt;*&lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/review-stacks" rel="noopener noreferrer"&gt;Review Stacks documentation&lt;/a&gt;&lt;br&gt;
*&lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments" rel="noopener noreferrer"&gt;Learn more about Pulumi Deployments&lt;/a&gt;&lt;br&gt;
*Join us in the &lt;a href="https://slack.pulumi.com/?_gl=1*16tnbpn*_ga*MjA1NzcwODk0OC4xNjAyMTgxNjA0*_ga_FQHG5CVY2D*MTY4Njc3Mzg1NS42NjcuMS4xNjg2Nzc3NTMzLjYwLjAuMA.." rel="noopener noreferrer"&gt;#pulumi-deployments community slack channel&lt;/a&gt;&lt;br&gt;
🚀🚀🚀 Happy building! 🚀🚀🚀&lt;/p&gt;

</description>
      <category>githubactions</category>
      <category>pulumi</category>
      <category>infrastructureascode</category>
    </item>
    <item>
      <title>Property Search: Enhanced Resource Search in Pulumi Cloud</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Wed, 14 Jun 2023 21:15:55 +0000</pubDate>
      <link>https://forem.com/pulumi/property-search-enhanced-resource-search-in-pulumi-cloud-eb8</link>
      <guid>https://forem.com/pulumi/property-search-enhanced-resource-search-in-pulumi-cloud-eb8</guid>
      <description>&lt;p&gt;Two months ago we launched &lt;a href="https://www.pulumi.com/blog/pulumi-insights" rel="noopener noreferrer"&gt;Resource Search for Pulumi Cloud&lt;/a&gt; to offer multi-cloud resource search and analytics across every cloud environment in your organization. Today, we’re excited to announce that we are taking this a step further and exposing a much larger set of data to search over: resource properties.&lt;/p&gt;

&lt;p&gt;Including property names and values in your resource searches enables you to search on an even richer variety of dimensions, everything from instance type, to database version, to region and availability zone, to whether resources are open to the internet. By searching on property data, in addition to overall resource metadata, you can craft expressive queries that serve key compliance, operational and diagnostic use cases.&lt;/p&gt;

&lt;p&gt;Pulumi Resource Search, including the ability to search on property data, is applicable across all cloud resources, whether they reside in AWS, Google Cloud, Azure, or any of Pulumi’s 100+ cloud providers. Support for querying on property data is available in the &lt;a href="https://www.pulumi.com/pricing" rel="noopener noreferrer"&gt;Enterprise and Business Critical editions&lt;/a&gt; of Pulumi Cloud.&lt;/p&gt;

&lt;h2&gt;
  
  
  Feature Overview
&lt;/h2&gt;

&lt;p&gt;Cloud resources come with various properties that define their behavior, performance, location, and more. You can now use Pulumi Resource Search to search based on these properties in addition to other resource metadata across 100+ clouds. Whether you’re trying to find resources running in a specific region, instances with a particular tag, or databases running a certain engine version, searching over properties with Pulumi Cloud streamlines and simplifies your tasks.&lt;/p&gt;

&lt;p&gt;Using the new feature is simple and straightforward. Go to the Pulumi console, navigate to the search bar, and start typing the property you’re interested in. For example, if you’re searching for all AWS RDS instances running MySQL with a particular engine version, simply type .engineVersion:5.7 and press enter.&lt;/p&gt;

&lt;p&gt;The ability to search for resources based on their properties is a powerful tool for optimizing cloud resource management. It provides deeper insights into your infrastructure and aids in identifying resources that are misconfigured, out-of-date, or not adhering to your organization’s best practices. Essentially, it’s a significant step towards more proactive, informed, and efficient management of your cloud environment.Customers like Alkira, a company that reinvents networking for the cloud era, have found it to be a significant step towards more proactive, informed, and efficient management of the cloud.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I’m making developers at Alkira significantly more productive while also making my job easier using Pulumi’s IaC platform and features like Pulumi Insights and Deployments,” said Santosh Dornal, Head of Software Test &amp;amp; DevOps, Alkira. “I can get developers using IaC immediately with Pulumi Deployments and its GitHub integration, while Pulumi Insights makes it really easy to find idle developer environments that need to be shut down, which reduces our cloud costs.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Example queries
&lt;/h2&gt;

&lt;p&gt;Before Property Search, using just Resource Search, you were able to find resources by their name, type, URN, parent, the team they are in, and so on… but today, any property on your resource will be indexed by Pulumi Cloud and searchable after each stack update. Let’s walk through some examples of the types of queries you can now perform.&lt;/p&gt;

&lt;h3&gt;
  
  
  AI Assist &amp;amp; properties
&lt;/h3&gt;

&lt;p&gt;Pulumi &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/insights/search/#ai-assist" rel="noopener noreferrer"&gt;AI Assist&lt;/a&gt; allows you to use natural language to search for resources. AI Assist works by converting natural language to a query in our search syntax. This becomes even more valuable with property search. Resources can have dozens of properties, and remembering exactly how to search for property values can be challenging, especially when they change depending on the provider. AI Assist is going to step in so that you don’t have to remember everything.&lt;/p&gt;

&lt;p&gt;Here is a list of example natural language queries we have seen customers use and the AI Assist output:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5q439v6ily1hiu9uzyh6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5q439v6ily1hiu9uzyh6.png" alt=" " width="800" height="518"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Search syntax
&lt;/h3&gt;

&lt;p&gt;Properties can be used in your queries by using a &lt;code&gt;.&lt;/code&gt; prefix. For example, if you want to see all resources with an Instance Type property, you type in the search bar &lt;code&gt;.instanceType:&lt;/code&gt;. If you want to only look at a specific value, you can search for the value behind the colon. In this case our query would become &lt;code&gt;.instanceType:t3.large&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F87ooz17k162s9phzgkrh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F87ooz17k162s9phzgkrh.png" alt=" " width="800" height="256"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here are some query examples we have seen customers use:&lt;/p&gt;

&lt;p&gt;*&lt;code&gt;project:pulumi-service stack:staging .instanceType:&lt;/code&gt;&lt;br&gt;
*&lt;code&gt;type:aws:rds/cluster:Cluster .engine:aurora .engineVersion:8&lt;/code&gt;&lt;br&gt;
*&lt;code&gt;type:aws:s3/bucket:Bucket stack:production .acl:public-read&lt;/code&gt;&lt;br&gt;
*&lt;code&gt;team:data package:snowflake .availabilityZone:us-west-2a&lt;/code&gt;&lt;br&gt;
*&lt;code&gt;vpc created:2023-06-12 .tags.Environment:production&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Use the REST API
&lt;/h3&gt;

&lt;p&gt;In addition to searching for resources you can also export them to perform analytics: whether that is something simple like opening it in a spreadsheet or something more sophisticated, like if you want to regularly ingest it to your data warehouse. You can download a CSV from the console or get the data using the D&lt;a href="https://www.pulumi.com/docs/pulumi-cloud/cloud-rest-api/#data-export" rel="noopener noreferrer"&gt;ata Export API&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But the value of Resource Search is not limited to what you do in the console and for analytics. You can also leverage the &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/cloud-rest-api/#resource-search" rel="noopener noreferrer"&gt;Resource Search API&lt;/a&gt; to create automation and workflows off of search results. Find below details on how to use the API.&lt;/p&gt;

&lt;p&gt;TypeScript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const headers = {
  Accept: "application/json",
  Authorization: "token pul-abc123",
};

const body = await(
  await fetch("https://api.pulumi.com/api/orgs/{org}/search/resources?properties=true?query=.instanceType", {
    method: "GET",
    headers: headers,
  }),
).json();

console.log(body);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Wrapping it all up
&lt;/h2&gt;

&lt;p&gt;We are excited to be extending Pulumi Resource Search with access to search over every property of your resources. We can’t wait to see what new capabilities it unlocks for your organization. As always, submit any feedback on the feature in the &lt;a href="https://github.com/pulumi/pulumi-cloud-requests/issues/new?assignees=&amp;amp;labels=kind%2Fenhancement&amp;amp;projects=&amp;amp;template=feature-request.md" rel="noopener noreferrer"&gt;Pulumi Cloud Requests&lt;/a&gt; repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://app.pulumi.com/?_gl=1*3alal0*_gcl_au*NjM0OTUzMjA2LjE2ODE4NjA2ODM.*_ga*MjA1NzcwODk0OC4xNjAyMTgxNjA0*_ga_FQHG5CVY2D*MTY4Njc3Mzg1NS42NjcuMS4xNjg2Nzc2ODk2LjEzLjAuMA.." rel="noopener noreferrer"&gt;Login to Pulumi Cloud&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy searching!&lt;/p&gt;

</description>
      <category>resources</category>
      <category>finops</category>
      <category>infrastructureascode</category>
    </item>
    <item>
      <title>Converting Full Terraform Programs to Pulumi</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Wed, 14 Jun 2023 21:03:51 +0000</pubDate>
      <link>https://forem.com/pulumi/converting-full-terraform-programs-to-pulumi-4cek</link>
      <guid>https://forem.com/pulumi/converting-full-terraform-programs-to-pulumi-4cek</guid>
      <description>&lt;p&gt;Over the last 2 years, we’ve seen an increasing trend of cloud development teams migrating to Pulumi from Terraform. These teams often have experience with and meaningful investment in Terraform, but have also typically run into limits of expressivity, productivity, scalability, or reliability with their existing tools. One of the first questions we hear when they decide to move to Pulumi is “how will I migrate my existing Terraform projects over?”.&lt;/p&gt;

&lt;p&gt;Today, we’re excited to announce new support for converting whole Terraform projects to Pulumi via the pulumi convert command in the Pulumi CLI. The new Terraform converter includes support for Terraform modules, core features of Terraform 1.4, and the majority of Terraform built-in functions, converting to Pulumi TypeScript, Python, Go, or C#. The new converter can significantly reduce the amount of time it takes to migrate Terraform to Pulumi. Let’s dig in to learn more about the new converter and how to use it.&lt;/p&gt;

&lt;p&gt;Historically, we have offered a separate &lt;a href="https://github.com/pulumi/tf2pulumi" rel="noopener noreferrer"&gt;tf2pulumi tool&lt;/a&gt; to convert small snippets of Terraform to Pulumi. The new converter is no longer a separate tool. As of &lt;a href="https://www.pulumi.com/docs/install/" rel="noopener noreferrer"&gt;v3.71.0&lt;/a&gt;, you can run the new converter directly from the Pulumi CLI with the &lt;code&gt;pulumi convert --from terraform command&lt;/code&gt;. And you can convert more than small snippets – the new converter supports converting full Terraform programs.&lt;/p&gt;

&lt;p&gt;The new support in &lt;code&gt;pulumi convert&lt;/code&gt; builds upon Pulumi’s &lt;a href="https://www.pulumi.com/crosscode/" rel="noopener noreferrer"&gt;CrossCode&lt;/a&gt; foundations for providing universal infrastructure as code support across a wide variety of programming languages and conversion tooling between them. It also introduces a new concept of &lt;code&gt;converter&lt;/code&gt; plugin in the Pulumi engine, which allows conversion tools from other Infrastructure as Code platforms to be integrated into the same &lt;code&gt;pulumi convert&lt;/code&gt; experience in the future, both as part of the core project, as well as by other ecosystem partners and contributors.&lt;/p&gt;

&lt;p&gt;Several common use cases are supported via the new &lt;code&gt;pulumi convert --from terraform&lt;/code&gt; support in the Pulumi CLI:&lt;/p&gt;

&lt;p&gt;*Converting your organization’s existing Terraform projects to Pulumi&lt;br&gt;
*Converting your organization’s existing Terraform modules to Pulumi, to be consumed as part of existing Pulumi projects&lt;br&gt;
*Converting 3rd party open source Terraform modules or projects which address a use case you want to incorporate into your existing Pulumi projects&lt;/p&gt;
&lt;h2&gt;
  
  
  Supported Terraform Features
&lt;/h2&gt;

&lt;p&gt;The following major features are supported:&lt;/p&gt;

&lt;p&gt;*Variables, outputs, resources, and data sources&lt;br&gt;
*Terraform modules are converted to Pulumi components&lt;br&gt;
*Almost all HCL2 expression syntax&lt;/p&gt;

&lt;p&gt;In cases where the converter does not yet support a feature, the &lt;code&gt;pulumi convert&lt;/code&gt; command succeeds but generates a TODO in the form of a call to a &lt;code&gt;notImplemented&lt;/code&gt; function that will need to be filled in manually. For most projects, the converter should be able to convert 90-95% of the code without any TODOs, with only a small percentage of items to address manually, significantly reducing migration time compared to doing an entire migration by hand. We are actively improving the converter by adding support for missing features and improving the overall quality of the converted code to reduce the amount of manual fix-ups required.&lt;/p&gt;
&lt;h2&gt;
  
  
  Converting a Real World Program
&lt;/h2&gt;

&lt;p&gt;Let’s walk through converting a Terraform codebase to Pulumi. &lt;a href="https://github.com/avantoss/vault-infra" rel="noopener noreferrer"&gt;Avant Terraform Vault Setup&lt;/a&gt; is an open source project that provides a high-availability installation of Vault using a variety of managed AWS services. It defines a fairly complex installation with dozens of AWS resources in over 1,000 lines of Terraform HCL, including the main program and a Vault module. Let’s convert it to Pulumi.&lt;/p&gt;

&lt;p&gt;First, clone the repo and &lt;code&gt;cd&lt;/code&gt; into the directory containing the Terraform project:&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git clone https://github.com/avantoss/vault-infra.git&lt;br&gt;
cd vault-infra/terraform/main&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;Next, run the converter:&lt;/p&gt;

&lt;p&gt;TypeScript&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;pulumi convert --from terraform --language typescript --out pulumi&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsir42akao9jcas9lx737.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsir42akao9jcas9lx737.gif" alt=" " width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The converted code is generated in the specified pulumi output directory. A complete Pulumi project is generated, including two primary code files specific to this this program’s conversion:&lt;/p&gt;

&lt;p&gt;*&lt;code&gt;index.ts&lt;/code&gt; contains the converted code for the main program&lt;br&gt;
*&lt;code&gt;vault.ts&lt;/code&gt; contains the &lt;code&gt;Vault&lt;/code&gt; Pulumi component, converted from the Terraform module&lt;/p&gt;
&lt;h3&gt;
  
  
  Addressing TODOs
&lt;/h3&gt;

&lt;p&gt;The file for the &lt;code&gt;Vault&lt;/code&gt; component makes up the bulk of the implementation and contains some TODOs emitted by the converter that must be addressed manually.&lt;/p&gt;

&lt;p&gt;For example, the converter doesn’t yet support the &lt;code&gt;replace&lt;/code&gt;, &lt;code&gt;element&lt;/code&gt;, and &lt;code&gt;split&lt;/code&gt; built-in functions.&lt;/p&gt;

&lt;p&gt;TypeScript&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;const plainDomain = notImplemented("replace(element(split(\":\",var.vault_dns_address),1),\"////\",\"\")");&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;We can fill in an implementation. Note that we get to use the full expressiveness of the native and familiar string manipulation libraries in our target programming language, instead of the relatively constrained options of the Terraform DSL.&lt;/p&gt;

&lt;p&gt;TypeScript&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;const plainDomain = pulumi.output(args.vaultDnsAddress)&lt;br&gt;
    .apply(a =&amp;gt; a.split(":")[1].replace("//", ""));&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Wrapping Up
&lt;/h3&gt;

&lt;p&gt;After addressing the remaining TODOs and some other tweaks so that the code compiles, we can now run the converted program with &lt;code&gt;pulumi up&lt;/code&gt; to provision the Vault installation with Pulumi.&lt;/p&gt;

&lt;p&gt;The converter has saved us a ton of time, converting over 1,000 lines of Terraform to a modern Pulumi language, with only a small number of manual fix-ups required. From here, we can leverage our IDE and compiler to further refactor and improve the code, one of the many benefits of Pulumi!&lt;/p&gt;

&lt;h2&gt;
  
  
  Importing State
&lt;/h2&gt;

&lt;p&gt;It’s great that the new converter can migrate Terraform projects to Pulumi for new deployments, but what if you want to import existing resource states from a &lt;code&gt;.tfstate&lt;/code&gt; file to avoid unnecessarily recreating your infrastructure?&lt;/p&gt;

&lt;p&gt;If you’re using TypeScript or Go, there is some additional code that can be added to your converted Pulumi program to import resource states from a &lt;code&gt;.tfstate&lt;/code&gt; file. See the &lt;a href="https://www.pulumi.com/docs/using-pulumi/adopting-pulumi/migrating-to-pulumi/from-terraform/#importing-resources" rel="noopener noreferrer"&gt;Importing Resources&lt;/a&gt; reference documentation for more details.&lt;/p&gt;

&lt;p&gt;We’re working to make this even more seamless with built-in support for importing state from &lt;code&gt;.tfstate&lt;/code&gt; files in a future update coming soon.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get Started
&lt;/h2&gt;

&lt;p&gt;Support for the new &lt;code&gt;pulumi convert --from terraform&lt;/code&gt; command is now available in v3.71.0 of the Pulumi CLI. &lt;a href="https://www.pulumi.com/docs/install/" rel="noopener noreferrer"&gt;Download&lt;/a&gt; the latest Pulumi CLI and give the new converter a try today. If you run into any issues, please &lt;a href="https://github.com/pulumi/pulumi/issues/new/choose" rel="noopener noreferrer"&gt;let us know&lt;/a&gt; or reach out in the &lt;a href="https://slack.pulumi.com/?_gl=1*enehvt*_ga*MjA1NzcwODk0OC4xNjAyMTgxNjA0*_ga_FQHG5CVY2D*MTY4Njc3Mzg1NS42NjcuMS4xNjg2Nzc1OTY1LjE4LjAuMA.." rel="noopener noreferrer"&gt;Pulumi Community Slack&lt;/a&gt; with any questions!&lt;/p&gt;

</description>
      <category>terraform</category>
      <category>iac</category>
      <category>infrastructureascode</category>
    </item>
    <item>
      <title>Announcing the Pulumi Challenge</title>
      <dc:creator>Pulumi Team</dc:creator>
      <pubDate>Tue, 06 Sep 2022 18:32:17 +0000</pubDate>
      <link>https://forem.com/pulumi/announcing-the-pulumi-challenge-3oh8</link>
      <guid>https://forem.com/pulumi/announcing-the-pulumi-challenge-3oh8</guid>
      <description>&lt;p&gt;Introducing the Pulumi Challenge, launching today! We think Pulumi is an amazing IaC tool that increases developer velocity and handles the scale of the cloud with ease. Try it out for yourself by taking a Pulumi Challenge! You’ll build something cool, and we’ll send you some super secret swag in return. We promise it’s better than a t-shirt.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://www.pulumi.com/challenge/" rel="noopener noreferrer"&gt;Pulumi Challenge&lt;/a&gt; is a series of specialized tutorials, released monthly. Each challenge will guide you through building a real-world application, some of them useful and some of them silly, showcasing the varied ways Pulumi can be a lifesaver for your team at work or your side-projects at home. At the end, you’ll have something you can use, and we’ll send you swag unique to each challenge too!&lt;/p&gt;

&lt;h2&gt;
  
  
  How it Works
&lt;/h2&gt;

&lt;p&gt;Work through the Challenge tutorial to build a real-world application, personalizing it as you go. You’ll learn how Pulumi works to ease integration and infrastructure deployment through providers for major cloud providers, Kubernetes, observability tools, CI/CD systems, dynamic providers, reusable component resources, and more.&lt;/p&gt;

&lt;p&gt;Once a Challenge is complete, our swag provider will kick off and send you the unique item for that Challenge. Every challenge offers something different, so complete them all as we release them!&lt;/p&gt;

&lt;p&gt;There’s another way to get more swag, though: Write a 500-word blog article or post a 3-minute video about your Pulumi Challenge project, and we’ll send you something even nicer.&lt;/p&gt;

&lt;h2&gt;
  
  
  The First Challenge
&lt;/h2&gt;

&lt;p&gt;Our inaugural Pulumi Challenge is &lt;a href="https://www.pulumi.com/challenge/startup-in-a-box/" rel="noopener noreferrer"&gt;Startup in a Box&lt;/a&gt;. We’ll walk you through building a customizable landing page for your startup, side-project, current hyperfixation, or pet, all deployed to AWS S3 with Cloudfront for a CDN and Checkly for monitoring! You’ll learn about interacting with AWS services through Pulumi, deploying to S3, building reusable components, using Providers with Checkly, and building Dynamic Providers.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/NU7uOy273jQ"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.pulumi.com/challenge/startup-in-a-box/" rel="noopener noreferrer"&gt;Try it for yourself&lt;/a&gt;, and &lt;a href="https://twitter.com/pulumicorp" rel="noopener noreferrer"&gt;follow us on Twitter&lt;/a&gt; to get a heads up when a new one launches!&lt;/p&gt;

</description>
      <category>pulumi</category>
      <category>startup</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
