diff --git a/CLAUDE.md b/CLAUDE.md index 8bc19d73c613..4fba6f3a6d43 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -29,3 +29,6 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co - **Naming**: Use lowercase for non-proper nouns (e.g., "stack" not "Stack" in text) - **Ordered Lists**: All items should begin with `1.` regardless of their position in the list. +## Site Architecture Notes +- **Tutorial Collections**: The file `/data/tutorials/collections.yaml` defines tutorial collections that generate `/tutorials/{id}/` URLs (e.g., `/tutorials/aws/`). However, Hugo internally maps these to `/collections/{id}` paths, so navigation logic must check for both `/tutorials/` and `/collections/` path prefixes. + diff --git a/assets/css/bundle.css b/assets/css/bundle.css index c06abb1e2b00..e4b2e72216f5 100644 --- a/assets/css/bundle.css +++ b/assets/css/bundle.css @@ -4788,36 +4788,30 @@ section.docs-home div.header{ background-position: right bottom; background-repeat: no-repeat; padding: 1.5rem; - background-image:url("/images/docs/docs-home-header-background-mobile.svg"); } section.docs-home div.header p{ - max-width: 28rem + max-width: 50rem } @media (min-width: 768px){ section.docs-home div.header{ - background-size: auto; - background-image:url("/images/docs/docs-home-header-background-tablet.svg") + background-size: auto } } @media (min-width: 1024px){ - section.docs-home div.header{ - background-image:url("/images/docs/docs-home-header-background-desktop.svg") - } } @media (min-width: 1280px){ .docs-content-width-expanded section.docs-home div.header{ - background-image:url("/images/docs/docs-home-header-background-desktop-wide.svg"); background-position: right } } @media (min-width: 1536px){ .docs-content-width-expanded section.docs-home div.header p{ - max-width: 32rem + max-width: 50rem } } @@ -4911,6 +4905,18 @@ section.docs-home a.full-width-card div.icon-heading div.icon{ top:-1px } +section.docs-home a.full-width-card div.icon-heading div.icon.emoji-icon{ + font-size:21px; + line-height:21px; + width:21px; + height:21px; + display:flex; + align-items:center; + justify-content:center; + background:transparent; + text-indent:0 !important +} + section.docs-home a.full-width-card:hover{ background:#f9f9f9; border:1px solid #bebfc9 @@ -30266,6 +30272,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } +.max-w-50rem{ + max-width: 50rem; +} + .flex-1{ flex: 1 1 0%; } @@ -61013,6 +61023,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } + .sm\:max-w-50rem{ + max-width: 50rem; + } + .sm\:flex-1{ flex: 1 1 0%; } @@ -91717,6 +91731,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } + .md\:max-w-50rem{ + max-width: 50rem; + } + .md\:flex-1{ flex: 1 1 0%; } @@ -122421,6 +122439,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } + .lg\:max-w-50rem{ + max-width: 50rem; + } + .lg\:flex-1{ flex: 1 1 0%; } @@ -153125,6 +153147,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } + .xl\:max-w-50rem{ + max-width: 50rem; + } + .xl\:flex-1{ flex: 1 1 0%; } @@ -183829,6 +183855,10 @@ section.newsletter-input pulumi-hubspot-form input.hs-input{ max-width: 1536px; } + .xxl\:max-w-50rem{ + max-width: 50rem; + } + .xxl\:flex-1{ flex: 1 1 0%; } diff --git a/content/docs/_index.md b/content/docs/_index.md index ee83cc7e800c..ba03ab565884 100644 --- a/content/docs/_index.md +++ b/content/docs/_index.md @@ -11,7 +11,7 @@ docs_home: true noleftnav: true norightnav: true nobreadcrumb: true -h1: Pulumi Docs +h1: Pulumi Docs description:
Pulumi is an open source platform for automating, securing, and managing cloud resources, configuration, and secrets, using your favorite programming languages.
link_buttons: primary: @@ -19,43 +19,20 @@ link_buttons: link: /docs/get-started/ sections: - type: button-cards - heading: Featured Products + heading: Start with Your Workflow cards: - - heading: Pulumi IaC - description: "Infrastructure as code for engineers in Node.js, Python, Go, .NET, Java, and YAML" - link: /docs/iac/ - primary_button_label: Get Started - primary_button_link: /docs/iac/get-started/ - secondary_button_label: Install - secondary_button_link: /docs/iac/download-install/ - - heading: Pulumi ESC - description: "Environments, Secrets and Configuration Management" - link: /docs/esc/ - primary_button_label: Get Started - primary_button_link: /docs/esc/get-started/ - secondary_button_label: Install - secondary_button_link: /docs/esc/download-install/ - - heading: Pulumi IDP - description: "Secure, compliant, and customizable developer workflows at scale" - link: /docs/idp/ - primary_button_label: Get Started - primary_button_link: /docs/idp/get-started/ - secondary_button_label: Create an account - secondary_button_link: https://app.pulumi.com/signup - - heading: Pulumi Insights - description: "Asset management, compliance remediation and AI insights over the cloud" - link: /docs/insights/ - primary_button_label: Get Started - primary_button_link: /docs/insights/get-started/ - secondary_button_label: Create an account - secondary_button_link: https://app.pulumi.com/signup - - heading: Pulumi Cloud - description: "Managed service for using Pulumi open source at scale. Use SaaS or self-host" - link: /docs/pulumi-cloud/ - primary_button_label: Get Started - primary_button_link: /docs/pulumi-cloud/get-started/ - secondary_button_label: Create an account - secondary_button_link: https://app.pulumi.com/signup + - heading: Build + description: "Create and deploy cloud infrastructure using your favorite programming languages" + link: /docs/build/ + - heading: Platform + description: "Enable teams with enterprise automation, collaboration, and internal developer platforms" + link: /docs/platform/ + - heading: Management + description: "Discover, govern, and optimize cloud infrastructure with AI-powered insights and compliance" + link: /docs/management/ + - heading: Developer Tools + description: "CLIs, SDKs, APIs, and AI-powered development tools for infrastructure as code" + link: /docs/pulumi-cli/ - type: cards-logo-label-link heading: Clouds description:Pulumi IaC supports AWS, Azure, Google Cloud, Kubernetes, and 120+ packages.
diff --git a/content/docs/build/_index.md b/content/docs/build/_index.md new file mode 100644 index 000000000000..97a8867461a7 --- /dev/null +++ b/content/docs/build/_index.md @@ -0,0 +1,105 @@ +--- +title: Build +linktitle: Build +capability: build +docs_home: true +notitle: true +no_on_this_page: true +expanded_menu_ids: + - build-core-concepts + - build-languages + - build-cloud-platforms +menu: + build: + identifier: build-home + weight: 1 +meta_desc: Build and deploy cloud infrastructure with Pulumi. Manage stacks, environments, resources, and services for your daily engineering work. +meta_image: /images/docs/meta-images/docs-meta.png +h1: Build with Pulumi +description:Everything you need for daily engineering work - creating stacks, managing environments, deploying resources, and building cloud services.
+ +sections: +- type: full-width-cards + heading: Core Building Blocks + cards: + - icon: π + heading: Stacks + description: Create and manage isolated deployments of your infrastructure across environments. + link: /docs/iac/concepts/stacks/ + - icon: βοΈ + heading: Configuration & Secrets + description: Configure secrets, settings, and variables across your infrastructure and applications. + link: /docs/build/configure-secure/ + - icon: π§± + heading: Resources + description: Provision and manage cloud resources with infrastructure as code. + link: /docs/iac/concepts/resources/ + - icon: π€ + heading: Tasks + description: AI-powered infrastructure generation, optimization, and intelligent assistance. + link: /docs/ai/ + + +- type: full-width-cards + heading: Essential Build Tasks + cards: + - icon: π + heading: Deploy Your First Stack + description: Learn the fundamentals of creating and deploying infrastructure stacks. + link: /docs/iac/get-started/ + - icon: π + heading: Manage Secrets & Config + description: Securely handle configuration and secrets across environments. + link: /docs/esc/get-started/ + - icon: βοΈ + heading: Connect to Cloud Services + description: Build applications that integrate with cloud databases, storage, and APIs. + link: /docs/iac/concepts/ + - icon: π + heading: Organize Stacks + description: Structure your infrastructure across development, staging, and production. + link: /docs/pulumi-cloud/projects-and-stacks/ + +- type: cards-logo-label-link + heading: Build in Your Language + description: Use familiar programming languages for infrastructure as code. + cards: + - label: TypeScript/JavaScript + icon: icon-32-32 node-color-32-32 + link: /docs/iac/languages-sdks/javascript/ + - label: Python + icon: icon-32-32 python-color-32-32 + link: /docs/iac/languages-sdks/python/ + - label: Go + icon: icon-32-32 go-color-32-32 + link: /docs/iac/languages-sdks/go/ + - label: .NET + icon: icon-32-32 dotnet-color-32-32 + link: /docs/iac/languages-sdks/dotnet/ + - label: Java + icon: icon-32-32 java-color-32-32 + link: /docs/iac/languages-sdks/java/ + - label: YAML + icon: icon-32-32 yaml-color-32-32 + link: /docs/iac/languages-sdks/yaml/ + +- type: cards-logo-label-link + heading: Get Started Building + description: Jump into creating infrastructure on your preferred cloud platform. + cards: + - label: AWS Quick Start + icon: aws-40 + link: /docs/iac/get-started/aws/ + - label: Azure Quick Start + icon: azure-40 + link: /docs/iac/get-started/azure/ + - label: Google Cloud Quick Start + icon: google-cloud-40 + link: /docs/iac/get-started/gcp/ + - label: Kubernetes Quick Start + icon: kubernetes-40 + link: /docs/iac/get-started/kubernetes/ +- type: flat + heading: Ready to build? + description:Start with our Get Started guide, explore tutorials, or jump into environment configuration. Need help? Join us on Slack or contact support.
+--- diff --git a/content/docs/build/advanced-concepts.md b/content/docs/build/advanced-concepts.md new file mode 100644 index 000000000000..9cf81e3bccaa --- /dev/null +++ b/content/docs/build/advanced-concepts.md @@ -0,0 +1,39 @@ +--- +title: Advanced Concepts +h1: Advanced Concepts +capability: build +menu: + build: + name: Advanced Concepts + identifier: build-advanced-concepts + parent: build-core-concepts + weight: 50 +meta_desc: Advanced concepts for building infrastructure with Pulumi - functions, dynamic providers, and resource naming. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Advanced concepts for taking your infrastructure further with Pulumi. + +## Tasks + +Use AI to generate, modify, and optimize infrastructure code: + +- **[Pulumi AI](/ai/)** - Natural-language tasks for scaffolding and evolving IaC + +## Functions + +Invoke cloud provider functions and utilities: + +- **[Functions](/docs/iac/concepts/functions/)** - Invoke cloud provider functions to get data and resources + +## Dynamic Providers + +Create custom resource providers: + +- **[Dynamic Providers](/docs/iac/concepts/resources/dynamic-providers/)** - Create custom resource providers for unique use cases + +## Resource Management + +Advanced resource management concepts: + +- **[Resource Names](/docs/iac/concepts/resources/names/)** - Understanding how Pulumi names resources diff --git a/content/docs/build/cloud-quickstarts.md b/content/docs/build/cloud-quickstarts.md new file mode 100644 index 000000000000..0a38152aba14 --- /dev/null +++ b/content/docs/build/cloud-quickstarts.md @@ -0,0 +1,72 @@ +--- +title: Cloud Quickstarts +h1: Cloud Quickstarts +capability: get-started +menu: + get-started: + name: Get Started with Infrastructure as Code + identifier: get-started-cloud-quickstarts + parent: get-started-home + weight: 30 +meta_desc: Get started building infrastructure on your preferred cloud platform - AWS, Azure, Google Cloud, or Kubernetes quickstart guides. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Jump into building infrastructure on your preferred cloud platform. Choose from AWS, Azure, Google Cloud, or Kubernetes quickstart guides. + +## Choose Your Cloud Platform + +Select your preferred platform and follow the step-by-step guide: + +### [AWS Quickstart](/docs/iac/get-started/aws/) + +Deploy your first infrastructure on Amazon Web Services: + +- Set up AWS credentials +- Create an S3 bucket +- Deploy serverless functions +- Manage EC2 instances + +### [Azure Quickstart](/docs/iac/get-started/azure/) + +Get started building on Microsoft Azure: + +- Configure Azure authentication +- Create resource groups +- Deploy web applications +- Manage storage accounts + +### [Google Cloud Quickstart](/docs/iac/get-started/gcp/) + +Build infrastructure on Google Cloud Platform: + +- Set up GCP credentials +- Create cloud storage buckets +- Deploy cloud functions +- Manage compute engines + +### [Kubernetes Quickstart](/docs/iac/get-started/kubernetes/) + +Deploy applications to Kubernetes clusters: + +- Configure cluster access +- Deploy applications and services +- Manage deployments and pods +- Set up ingress and networking + +## Multi-Cloud Deployments + +Ready for more advanced scenarios? + +- **Multi-cloud architectures** - Deploy across multiple providers +- **Hybrid deployments** - Combine on-premises and cloud resources +- **Cloud migration** - Move workloads between providers + +## Next Steps + +After completing a quickstart: + +1. **Explore [Core Concepts](/docs/build/core-concepts/)** - Understand projects, stacks, and resources +2. **Choose [Your Language](/docs/build/choose-language/)** - Language-specific guides and examples +3. **Set up [Configure & Secure](/docs/build/configure-secure/)** - Production configuration and secrets +4. **Learn [Cloud Platforms](/docs/build/cloud-platforms/)** - Advanced platform-specific patterns diff --git a/content/docs/build/configure-secure.md b/content/docs/build/configure-secure.md new file mode 100644 index 000000000000..cdddc6b67715 --- /dev/null +++ b/content/docs/build/configure-secure.md @@ -0,0 +1,52 @@ +--- +title: Configure & Secure +h1: Configure & Secure +capability: build +menu: + build: + name: Configure & Secure + identifier: build-configure-secure + parent: build-core-concepts + weight: 50 +meta_desc: Configure applications and manage secrets during individual development with Pulumi ESC and IaC configuration. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Configure applications and manage secrets during individual development. Learn how to handle configuration, environments, secrets, and infrastructure integration for your daily engineering work. + +## Basic Configuration + +Manage configuration settings for your infrastructure and applications: + +- [Configuration fundamentals](/docs/iac/concepts/config/) - Core configuration concepts +- [Project configuration](/docs/iac/concepts/projects/) - Configure projects and stacks + +## Environment Management + +Use Pulumi ESC for environment configuration: + +- [Environment fundamentals](/docs/esc/environments/) - ESC environment basics +- [Working with environments](/docs/esc/environments/working-with-environments/) - Environment workflows +- [Environment composition](/docs/esc/environments/imports/) - Environment imports and composition + +## Development Secrets & Login + +Securely handle secrets and dynamic credentials during development: + +- [Dynamic secrets](/docs/esc/integrations/dynamic-secrets/) - Dynamic secrets providers +- [AWS login credentials](/docs/esc/integrations/dynamic-login-credentials/aws-login/) - AWS OIDC login +- [Azure login credentials](/docs/esc/integrations/dynamic-login-credentials/azure-login/) - Azure OIDC login +- [GCP login credentials](/docs/esc/integrations/dynamic-login-credentials/gcp-login/) - GCP OIDC login + +## Infrastructure Integration + +Connect ESC with your infrastructure: + +- [Infrastructure integrations](/docs/esc/integrations/infrastructure/) - ESC infrastructure integration overview +- [Pulumi IaC integration](/docs/esc/integrations/infrastructure/pulumi-iac/) - Using ESC with Pulumi IaC +- [Kubernetes integration](/docs/esc/integrations/kubernetes/) - ESC with Kubernetes + +## Getting Started + +- [Get started with ESC](/docs/esc/get-started/) - Create your first environment +- [Configuration best practices](/docs/iac/concepts/config/) - Configuration patterns and security diff --git a/content/docs/build/core-concepts.md b/content/docs/build/core-concepts.md new file mode 100644 index 000000000000..0db990e8125f --- /dev/null +++ b/content/docs/build/core-concepts.md @@ -0,0 +1,4 @@ +--- +title: Core Concepts +redirect_to: /docs/iac/concepts/ +--- diff --git a/content/docs/build/getting-help.md b/content/docs/build/getting-help.md new file mode 100644 index 000000000000..97f1df87be6a --- /dev/null +++ b/content/docs/build/getting-help.md @@ -0,0 +1,81 @@ +--- +title: Getting Help +h1: Getting Help +capability: build +meta_desc: Get help with building infrastructure using Pulumi - troubleshooting, FAQ, community support, and technical assistance. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Get help with building infrastructure using Pulumi. Find answers to common questions, troubleshoot issues, and connect with the community. + +## ESC FAQ + +Frequently asked questions about Pulumi ESC (Environments, Secrets, Config): + +- **[ESC FAQ](/docs/esc/faq/)** - Common questions about environments, secrets, and configuration management + +## Basic Troubleshooting + +Get help with common build and deployment issues: + +- **[Installation Issues](/docs/iac/download-install/)** - Troubleshoot Pulumi CLI installation +- **[Getting Started Problems](/docs/iac/get-started/)** - Common first-time setup issues +- **[Configuration Errors](/docs/iac/concepts/config/)** - Fix configuration-related problems + +For advanced troubleshooting and debugging tools, see [Developer Tools](/docs/pulumi-cli/). + +## Community & Support + +Connect with the Pulumi community and get expert help: + +### Community Resources + +- **[Community Slack](https://slack.pulumi.com)** - Join thousands of developers building with Pulumi +- **[GitHub Discussions](https://github.com/pulumi/pulumi/discussions)** - Ask questions and share ideas +- **[Stack Overflow](https://stackoverflow.com/questions/tagged/pulumi)** - Search existing questions or ask new ones + +### Getting Help + +- **[Community Support](/support/)** - Free community support options +- **[Professional Support](/support/)** - Enterprise support and services +- **[Training & Consulting](/support/)** - Expert guidance and training + +### Documentation & Learning + +- **[Tutorials](/tutorials/)** - Step-by-step guides for common scenarios +- **[Examples](/docs/reference/pkg/)** - Browse code examples in your preferred language +- **[Blog](https://pulumi.com/blog/)** - Latest updates, tutorials, and best practices + +## Quick Help Resources + +### Before You Ask + +1. **Check the logs**: Most errors include detailed information in the output +2. **Review the documentation**: Make sure you're following current best practices +3. **Search existing issues**: Your question might already be answered + +### How to Get Better Help + +When asking for help, please include: + +- **Pulumi version**: Run `pulumi version` +- **Operating system**: Windows, macOS, Linux +- **Programming language**: TypeScript, Python, Go, etc. +- **Cloud provider**: AWS, Azure, Google Cloud, etc. +- **Error messages**: Copy the full error output +- **Minimal reproducible example**: Share the smallest code that demonstrates the issue + +### Building-Specific Help Topics + +- **Stack management**: Creating, updating, and destroying stacks +- **Resource provisioning**: Working with cloud resources and providers +- **Configuration**: Managing settings and environment variables +- **Secrets**: Securely handling sensitive information +- **Environment setup**: Configuring development environments + +## Next Steps + +- **Ready to build?** Start with [Getting Started](/docs/iac/get-started/) +- **Need advanced tools?** Explore [Developer Tools](/docs/pulumi-cli/) +- **Building with a team?** Check out [Platform capabilities](/docs/platform/) +- **Need compliance?** See [Management capabilities](/docs/management/) diff --git a/content/docs/build/getting-started.md b/content/docs/build/getting-started.md new file mode 100644 index 000000000000..2b7822890d97 --- /dev/null +++ b/content/docs/build/getting-started.md @@ -0,0 +1,53 @@ +--- +title: Getting Started +h1: Getting Started +capability: build +meta_desc: Get started building infrastructure with Pulumi - installation, first stack, cloud quickstarts, and environment setup. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Get started building cloud infrastructure with Pulumi. From installation through your first deployments and environment setup. + +## Install & Setup + +Get Pulumi installed and ready for development: + +- **[Install & Setup](/docs/iac/download-install/)** - Download and install the Pulumi CLI +- **[Version Management](/docs/iac/download-install/versions/)** - Available Pulumi versions +- **[Migrating to 3.0](/docs/iac/download-install/migrating-3.0/)** - Upgrade guide for Pulumi 3.0 + +## Your First Stack + +Create and deploy your first piece of infrastructure: + +- **[Your First Stack](/docs/iac/get-started/)** - Complete getting started guide +- Choose your cloud platform and follow step-by-step tutorials + +## Cloud Quickstarts + +Jump start building on your preferred cloud platform: + +- **[AWS Quickstart](/docs/iac/get-started/aws/)** - Get started on Amazon Web Services +- **[Azure Quickstart](/docs/iac/get-started/azure/)** - Get started on Microsoft Azure +- **[Google Cloud Quickstart](/docs/iac/get-started/gcp/)** - Get started on Google Cloud Platform +- **[Kubernetes Quickstart](/docs/iac/get-started/kubernetes/)** - Get started with Kubernetes + +## ESC Environment Setup + +Set up configuration and secrets management: + +- **[ESC Environment Setup](/docs/esc/get-started/)** - Create your first environment for configuration and secrets +- **[ESC Installation](/docs/esc/download-install/)** - Install the ESC CLI + +## Next Steps + +Once you've completed your first deployment: + +1. **Learn Core Concepts** - Understand [Projects & Stacks](/docs/iac/concepts/stacks/), [Resources](/docs/iac/concepts/resources/), and [Configuration](/docs/iac/concepts/config/) +2. **Choose Your Language** - Explore language-specific guides for [TypeScript](/docs/iac/languages-sdks/javascript/), [Python](/docs/iac/languages-sdks/python/), [Go](/docs/iac/languages-sdks/go/), and more +3. **Advanced Topics** - Set up [Configure & Secure](/docs/build/configure-secure/) workflows for production use + +## Getting Help + +- **[Community Slack](https://slack.pulumi.com)** - Get help from the community +- **[Getting Help](/docs/build/getting-help/)** - All support options and resources diff --git a/content/docs/build/tasks.md b/content/docs/build/tasks.md new file mode 100644 index 000000000000..30485795d5fa --- /dev/null +++ b/content/docs/build/tasks.md @@ -0,0 +1,18 @@ +--- +title: Tasks +h1: Tasks +capability: build +menu: + build: + name: Tasks + identifier: build-tasks + parent: build-home + weight: 90 +meta_desc: AI Tasks for Pulumi Infrastructure as Code. Manage deployments, get advice, and automate workflows. +--- + + + +This page redirects to Pulumi AI tasks. If you are not redirected, visit: + +- https://www.pulumi.com/ai/ diff --git a/content/docs/build/understand-context.md b/content/docs/build/understand-context.md new file mode 100644 index 000000000000..6b9925c028bd --- /dev/null +++ b/content/docs/build/understand-context.md @@ -0,0 +1,73 @@ +--- +title: Understand Pulumi Context +h1: Understand Pulumi Context +capability: build +menu: + build: + name: Understand Pulumi Context + identifier: build-understand-context + parent: build-core-concepts + weight: 70 +meta_desc: Understand Pulumi in context of other tools like Terraform, CloudFormation, and AWS CDK. Learn migration strategies and when to use Pulumi. +meta_image: /images/docs/meta-images/docs-meta.png +--- + +Understand how Pulumi compares to other infrastructure tools and when to use Pulumi for your infrastructure needs. Learn about migration strategies and tool comparisons. + +## vs. Terraform & OpenTofu + +Compare Pulumi with Terraform and understand the key differences: + +- [Pulumi vs. Terraform](/docs/iac/concepts/vs/terraform/) - Comprehensive comparison +- [Pulumi vs. OpenTofu](/docs/iac/concepts/vs/terraform/opentofu/) - OpenTofu-specific differences +- [Terraform terminology in Pulumi](/docs/iac/concepts/vs/terraform/terminology/) - Mapping concepts + +## vs. CloudFormation & ARM Templates + +Understand how Pulumi differs from cloud-native template languages: + +- [Pulumi vs. CloudFormation](/docs/iac/concepts/vs/cloud-templates/cloudformation/) - AWS comparison +- [Cloud templates overview](/docs/iac/concepts/vs/cloud-templates/) - General cloud templates comparison + +## vs. AWS CDK + +Compare Pulumi with AWS CDK and other cloud development kits: + +- [Pulumi vs. AWS CDK](/docs/iac/concepts/vs/cloud-template-transpilers/aws-cdk/) - CDK-specific comparison +- [Cloud template transpilers](/docs/iac/concepts/vs/cloud-template-transpilers/) - CDK and similar tools + +## Migration Strategy + +Learn when and how to adopt Pulumi from other tools: + +- [Adopting Pulumi](/docs/iac/adopting-pulumi/) - Migration strategy overview +- [Import existing resources](/docs/iac/adopting-pulumi/import/) - When and why to import existing infrastructure +- [Migration tools](/docs/pulumi-cli/) - Technical migration utilities and tools + +## Key Pulumi Advantages + +Understanding why developers choose Pulumi: + +- **Use familiar languages**: TypeScript, Python, Go, C#, Java, YAML +- **Full programming language features**: Loops, conditionals, functions, classes +- **Rich ecosystem**: Package managers, IDEs, testing frameworks +- **Multi-cloud by default**: Same tools and languages across all clouds +- **Infrastructure as software**: Not just configuration, but real software engineering practices + +## When to Choose Pulumi + +Pulumi is particularly well-suited for: + +- **Complex infrastructure**: When you need loops, conditionals, or advanced logic +- **Multi-cloud deployments**: Managing infrastructure across multiple cloud providers +- **Developer-focused teams**: When infrastructure teams want to use familiar programming languages +- **Component reuse**: Building and sharing reusable infrastructure components +- **Integration with application code**: When infrastructure and application development are tightly coupled + +## Getting Started + +Ready to try Pulumi? Start here: + +- [Install Pulumi](/docs/iac/download-install/) - Get up and running +- [Your first stack](/docs/iac/get-started/) - Deploy your first infrastructure +- [Choose your language](/docs/iac/languages-sdks/) - Pick your preferred programming language diff --git a/content/docs/esc/_index.md b/content/docs/esc/_index.md index 21e88ea2423a..a9fa338f5422 100644 --- a/content/docs/esc/_index.md +++ b/content/docs/esc/_index.md @@ -3,6 +3,7 @@ title: Pulumi ESC linktitle: Pulumi ESC docs_home: true notitle: true +capability: build menu: esc: identifier: esc-home diff --git a/content/docs/esc/cli/_index.md b/content/docs/esc/cli/_index.md index bab161b5c0dc..a306687be35f 100644 --- a/content/docs/esc/cli/_index.md +++ b/content/docs/esc/cli/_index.md @@ -4,6 +4,7 @@ title_tag: Pulumi ESC CLI Overview meta_desc: An overview of the Pulumi ESC (Environments, Secrets, and Configuration) CLI. h1: Pulumi ESC CLI overview no_on_this_page: true +capability: pulumi-cli menu: esc: parent: esc-home diff --git a/content/docs/esc/environments/_index.md b/content/docs/esc/environments/_index.md index 2546b7810fd2..9ebc66b09b44 100644 --- a/content/docs/esc/environments/_index.md +++ b/content/docs/esc/environments/_index.md @@ -3,11 +3,17 @@ title: Environments title_tag: Pulumi ESC Environments h1: Environments meta_desc: Pulumi ESC allows you to compose and manage hierarchical collections of configuration and secrets called environments and consume them in various ways. +capability: build menu: esc: parent: esc-home identifier: esc-environments weight: 4 + build: + name: Environment Management + identifier: build-environment-management + parent: build-configure-secure + weight: 20 --- Pulumi ESC (Environments, Secrets, and Configuration) lets you define collections of configuration settings and secrets called _environments_ and use them in any application or service. Environments are YAML documents composed of static key-value pairs, programmatic expressions, dynamically retrieved values from supported providers including all major clouds through OpenID Connect (OIDC), and other Pulumi ESC environments. diff --git a/content/docs/esc/environments/imports.md b/content/docs/esc/environments/imports.md index 3cb0af49f1eb..fce7f05b4468 100644 --- a/content/docs/esc/environments/imports.md +++ b/content/docs/esc/environments/imports.md @@ -3,12 +3,18 @@ title: Importing other environments title_tag: Importing other environments | Pulumi ESC h1: Importing other environments meta_desc: Pulumi ESC allows you to import and compose configurations from multiple environments, reducing duplication and ensuring consistency. +capability: build menu: esc: name: Importing environments identifier: esc-importing-environments parent: esc-environments weight: 2 + build: + name: Importing environments + identifier: build-importing-environments + parent: build-config-environments + weight: 30 --- Environments can be composed from other environments. diff --git a/content/docs/esc/environments/working-with-environments.md b/content/docs/esc/environments/working-with-environments.md index 71d098f8404f..76bc7d5caeac 100644 --- a/content/docs/esc/environments/working-with-environments.md +++ b/content/docs/esc/environments/working-with-environments.md @@ -3,11 +3,17 @@ title: Working with environments title_tag: Pulumi ESC environments h1: Working with environments meta_desc: Pulumi ESC allows you to compose and manage hierarchical collections of configuration and secrets and consume them in various ways. +capability: build menu: esc: identifier: working-with-environments parent: esc-environments weight: 1 + build: + name: Working with environments + identifier: build-working-environments + parent: build-config-environments + weight: 20 search: boost: true keywords: diff --git a/content/docs/esc/faq.md b/content/docs/esc/faq.md index b46987f9cc07..5e81477bb8bc 100644 --- a/content/docs/esc/faq.md +++ b/content/docs/esc/faq.md @@ -4,6 +4,7 @@ meta_desc: Frequently asked questions about Pulumi ESC, pricing and roadmap. title: FAQ h1: Pulumi ESC FAQs meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: esc: parent: esc-home diff --git a/content/docs/esc/get-started/_index.md b/content/docs/esc/get-started/_index.md index 76687df4bbd4..35ed5a902e0e 100644 --- a/content/docs/esc/get-started/_index.md +++ b/content/docs/esc/get-started/_index.md @@ -3,11 +3,22 @@ title: Get started title_tag: Get Started with Pulumi ESC (Environments, Secrets, and Configuration) h1: Get Started with Pulumi ESC (Environments, Secrets, and Configuration) meta_desc: Learn how to manage secrets and hierarchical configuration with Pulumi ESC. +capability: get-started menu: esc: parent: esc-home identifier: esc-get-started weight: 2 + build: + name: Configuration & Secrets Environment Setup + identifier: build-esc-get-started + parent: build-configure-secure + weight: 70 + get-started: + name: Get Started with Secrets & Configuration + identifier: get-started-esc + parent: get-started-home + weight: 40 aliases: - /docs/pulumi-cloud/esc/get-started/ --- diff --git a/content/docs/esc/get-started/begin.md b/content/docs/esc/get-started/begin.md index 75d1132f3b64..24854d1ede68 100644 --- a/content/docs/esc/get-started/begin.md +++ b/content/docs/esc/get-started/begin.md @@ -3,11 +3,17 @@ title_tag: Before You Begin | Pulumi ESC title: Before you begin h1: "Pulumi ESC: Before you begin" meta_desc: This page provides an overview on how to get started with Pulumi ESC. +capability: get-started weight: 2 menu: esc: parent: esc-get-started identifier: esc-get-started-begin + build: + name: Before you begin + identifier: build-esc-get-started-begin + parent: build-esc-get-started + weight: 2 --- Before you get started using Pulumi ESC, let's run through a few quick steps to ensure your environment is set up correctly. diff --git a/content/docs/esc/get-started/create-environment.md b/content/docs/esc/get-started/create-environment.md index cff290812f45..8cdf6e9588c1 100644 --- a/content/docs/esc/get-started/create-environment.md +++ b/content/docs/esc/get-started/create-environment.md @@ -3,11 +3,17 @@ title_tag: Create a New Environment | Pulumi ESC title: Create environment h1: "Pulumi ESC: Create A New Environment" meta_desc: This page provides an overview on how to create a new Pulumi ESC environment. +capability: get-started weight: 3 menu: esc: parent: esc-get-started identifier: esc-get-started-create-environment + build: + name: Create environment + identifier: build-esc-get-started-create-environment + parent: build-esc-get-started + weight: 3 --- diff --git a/content/docs/esc/get-started/import-environments.md b/content/docs/esc/get-started/import-environments.md index 7c88325f4ff0..cb3ce0d46c73 100644 --- a/content/docs/esc/get-started/import-environments.md +++ b/content/docs/esc/get-started/import-environments.md @@ -3,11 +3,17 @@ title_tag: Import Environments | Pulumi ESC title: Import environments h1: "Pulumi ESC: Import Environments" meta_desc: This page provides an overview on how to import environments in Pulumi ESC. +capability: get-started weight: 5 menu: esc: parent: esc-get-started identifier: esc-get-started-import-environments + build: + name: Import environments + identifier: build-esc-get-started-import-environments + parent: build-esc-get-started + weight: 5 --- ## Overview diff --git a/content/docs/esc/get-started/integrate-with-pulumi-iac.md b/content/docs/esc/get-started/integrate-with-pulumi-iac.md index da24afa6f7f2..1c2ca49523a2 100644 --- a/content/docs/esc/get-started/integrate-with-pulumi-iac.md +++ b/content/docs/esc/get-started/integrate-with-pulumi-iac.md @@ -3,11 +3,17 @@ title_tag: Integrate with Pulumi IaC | Pulumi ESC title: Integrate with Pulumi IaC h1: "Pulumi ESC: Integrate with Pulumi IaC" meta_desc: This page provides an overview on how to use Pulumi ESC with Pulumi IaC. +capability: get-started weight: 8 menu: esc: parent: esc-get-started identifier: esc-get-started-integrate-with-pulumi-iac + build: + name: Integrate with Pulumi IaC + identifier: build-esc-get-started-integrate-with-pulumi-iac + parent: build-esc-get-started + weight: 8 --- ## Overview diff --git a/content/docs/esc/get-started/retrieve-external-secrets.md b/content/docs/esc/get-started/retrieve-external-secrets.md index fe502b315192..9743d4dc57bd 100644 --- a/content/docs/esc/get-started/retrieve-external-secrets.md +++ b/content/docs/esc/get-started/retrieve-external-secrets.md @@ -3,11 +3,17 @@ title_tag: Retrieve External Secrets | Pulumi ESC title: Retrieve secrets from external sources h1: "Pulumi ESC: Retrieve Secrets from External Sources" meta_desc: This page provides an overview on how to retrieve secrets from external sources. +capability: get-started weight: 7 menu: esc: parent: esc-get-started identifier: esc-get-started-retrieve-external-secrets + build: + name: Retrieve secrets from external sources + identifier: build-esc-get-started-retrieve-external-secrets + parent: build-esc-get-started + weight: 7 --- ## Overview diff --git a/content/docs/esc/get-started/store-and-retrieve-secrets.md b/content/docs/esc/get-started/store-and-retrieve-secrets.md index 8ae36420d945..7112ca130d5c 100644 --- a/content/docs/esc/get-started/store-and-retrieve-secrets.md +++ b/content/docs/esc/get-started/store-and-retrieve-secrets.md @@ -3,11 +3,17 @@ title_tag: Store and Retrieve Secrets | Pulumi ESC title: Store and retrieve secrets h1: "Pulumi ESC: Store and Retrieve Secrets" meta_desc: This page provides an overview on how to store and retrieve secrets in Pulumi ESC. +capability: get-started weight: 4 menu: esc: parent: esc-get-started identifier: esc-get-started-store-retrieve-secrets + build: + name: Store and retrieve secrets + identifier: build-esc-get-started-store-retrieve-secrets + parent: build-esc-get-started + weight: 4 --- diff --git a/content/docs/esc/get-started/use-short-term-credentials.md b/content/docs/esc/get-started/use-short-term-credentials.md index 7a7d68983468..d2f2e617f2d8 100644 --- a/content/docs/esc/get-started/use-short-term-credentials.md +++ b/content/docs/esc/get-started/use-short-term-credentials.md @@ -3,10 +3,16 @@ title_tag: Use Short Term Cloud Credentials | Pulumi ESC title: Use short term cloud credentials h1: "Use Short Term Cloud Credentials to Run Commands Without Local Secrets" meta_desc: This page provides an overview on how to get short term cloud credentials and run commands without using local secrets using the "esc run" command. +capability: get-started weight: 6 menu: esc: parent: esc-get-started + build: + name: Use short term cloud credentials + identifier: build-esc-get-started-use-short-term-credentials + parent: build-esc-get-started + weight: 6 --- Managing cloud credentials presents significant challenges for organizations of all sizes. Static, long-lived credentials, especially those stored in local environments introduce security risks and operational issues. Pulumi ESCβs built-in support for [dynamic login providers](/docs/esc/integrations/dynamic-login-credentials/), allows you to generate short-term, scoped credentials via OIDC. These credentials can then be used in your CLI workflows, CI/CD, Pulumi IaC, and more! diff --git a/content/docs/esc/integrations/dynamic-secrets/_index.md b/content/docs/esc/integrations/dynamic-secrets/_index.md index 2d4558939b34..048475c06afc 100644 --- a/content/docs/esc/integrations/dynamic-secrets/_index.md +++ b/content/docs/esc/integrations/dynamic-secrets/_index.md @@ -3,12 +3,18 @@ title: Dynamic secrets title_tag: Integrate Pulumi ESC with Dynamic Secrets providers | Pulumi ESC h1: Import and use secrets from providers meta_desc: Pulumi ESC enables integration with secrets providers like 1Password, AWS, Azure, Google Cloud, and Vault, to securely manage secrets in your environments. +capability: build menu: esc: name: Dynamic secrets identifier: esc-dynamic-secrets parent: esc-integrations weight: 2 + build: + name: Development Secrets & Login + identifier: build-dev-secrets + parent: build-configure-secure + weight: 30 --- Pulumi ESC providers enable you to dynamically import secrets and configuration from the provider into your environment. diff --git a/content/docs/esc/integrations/infrastructure/_index.md b/content/docs/esc/integrations/infrastructure/_index.md index 764b94d8e9e0..3b4266ccf9f2 100644 --- a/content/docs/esc/integrations/infrastructure/_index.md +++ b/content/docs/esc/integrations/infrastructure/_index.md @@ -3,11 +3,17 @@ title: Infrastructure title_tag: Infrastructure tools integrations | Pulumi ESC h1: ESC infrastructure tools integrations meta_desc: Pulumi ESC integrates with infrastructure tools like Pulumi IaC, Cloudflare, and Terraform for management of environment variables, secrets, and configurations. +capability: build menu: esc: identifier: esc-inf-tools-integrations parent: esc-integrations weight: 5 + build: + name: Infrastructure Integration + identifier: build-infrastructure-integrations + parent: build-configure-secure + weight: 40 aliases: - /docs/esc/other-integrations --- diff --git a/content/docs/esc/integrations/infrastructure/pulumi-iac/_index.md b/content/docs/esc/integrations/infrastructure/pulumi-iac/_index.md index c277181f4807..96fc5476809d 100644 --- a/content/docs/esc/integrations/infrastructure/pulumi-iac/_index.md +++ b/content/docs/esc/integrations/infrastructure/pulumi-iac/_index.md @@ -3,11 +3,16 @@ title: Pulumi IaC title_tag: Pulumi ESC and IaC integration h1: ESC Pulumi IaC Integration meta_desc: Pulumi ESC integrates with Pulumi IaC to expose environment settings and secrets to Pulumi stacks, simplifying configuration management. +capability: build menu: esc: identifier: esc-pulumi-iac-integrations parent: esc-inf-tools-integrations weight: 1 + build: + name: Pulumi IaC integration + parent: build-infrastructure-integrations + weight: 1 --- With support for Pulumi ESC built into the Pulumi CLI, you can expose an environment's settings and secrets to any or all of your Pulumi stacks, bypassing the need to define and maintain individual configuration settings or secrets "locally" in Pulumi config files. The optional `pulumiConfig` key enables this. diff --git a/content/docs/get-started/_index.md b/content/docs/get-started/_index.md new file mode 100644 index 000000000000..477a8d9d9a4c --- /dev/null +++ b/content/docs/get-started/_index.md @@ -0,0 +1,4 @@ +--- +title: Get Started +redirect_to: /docs/iac/get-started/ +--- \ No newline at end of file diff --git a/content/docs/get-started/tutorials.md b/content/docs/get-started/tutorials.md new file mode 100644 index 000000000000..0a29c7114319 --- /dev/null +++ b/content/docs/get-started/tutorials.md @@ -0,0 +1,12 @@ +--- +title: Tutorials +linktitle: Tutorials +meta_desc: Hands-on tutorials to learn Pulumi concepts and cloud infrastructure patterns. +capability: get-started +menu: + get-started: + name: Tutorials + parent: get-started-home + weight: 100 +redirect_to: /tutorials/ +--- \ No newline at end of file diff --git a/content/docs/iac/_index.md b/content/docs/iac/_index.md index e8b78f301e2b..71daadc53b18 100644 --- a/content/docs/iac/_index.md +++ b/content/docs/iac/_index.md @@ -3,6 +3,7 @@ title: Pulumi IaC linktitle: Pulumi IaC docs_home: true notitle: true +capability: build menu: iac: identifier: iac-home diff --git a/content/docs/iac/adopting-pulumi/_index.md b/content/docs/iac/adopting-pulumi/_index.md index bafbd52f887a..c1feae9c3a5c 100644 --- a/content/docs/iac/adopting-pulumi/_index.md +++ b/content/docs/iac/adopting-pulumi/_index.md @@ -4,12 +4,18 @@ meta_desc: Learn how Pulumi compares to other solutions, how to migrate to Pulum title: Adopting Pulumi h1: Adopting Pulumi meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Adopting Pulumi parent: iac-home weight: 25 identifier: iac-adopting + build: + name: Migration Strategy + identifier: build-migration-strategy + parent: build-understand-context + weight: 40 usingpulumi: identifier: adopting-pulumi weight: 1 diff --git a/content/docs/iac/adopting-pulumi/converters.md b/content/docs/iac/adopting-pulumi/converters.md index 1c388d95376e..3d3577ded427 100644 --- a/content/docs/iac/adopting-pulumi/converters.md +++ b/content/docs/iac/adopting-pulumi/converters.md @@ -4,6 +4,7 @@ meta_desc: Pulumi convert allows you to convert ARM, CloudFormation, Kubernetes title: Convert code h1: Convert code to Pulumi meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Conversion tools @@ -13,6 +14,11 @@ menu: identifier: converters parent: adopting-pulumi weight: 4 + build: + name: Convert code to Pulumi + identifier: build-converters + parent: build-understand-context + weight: 40 aliases: - /docs/converters/ - /docs/using-pulumi/adopting-pulumi/converters/ diff --git a/content/docs/iac/adopting-pulumi/import/_index.md b/content/docs/iac/adopting-pulumi/import/_index.md index b9b583693e23..ed636ee7e977 100644 --- a/content/docs/iac/adopting-pulumi/import/_index.md +++ b/content/docs/iac/adopting-pulumi/import/_index.md @@ -4,6 +4,7 @@ meta_desc: Learn how to import existing cloud infrastructure into Pulumi no matt title: "Import resources" h1: "Importing resources" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Importing resources @@ -12,6 +13,11 @@ menu: usingpulumi: parent: adopting-pulumi weight: 3 + build: + name: Importing resources + identifier: build-importing-resources + parent: build-understand-context + weight: 30 aliases: - /docs/guides/adopting/import/ - /docs/using-pulumi/adopting-pulumi/import/ diff --git a/content/docs/iac/cli/_index.md b/content/docs/iac/cli/_index.md index 307ec28c93ce..72fd01c506e6 100644 --- a/content/docs/iac/cli/_index.md +++ b/content/docs/iac/cli/_index.md @@ -1,16 +1,24 @@ --- -title_tag: "Pulumi CLI Overview" -meta_desc: An overview of the Pulumi CLI and common commands used to deploy cloud applications. title: Pulumi CLI -h1: Pulumi CLI overview +linktitle: Pulumi CLI +capability: pulumi-cli +docs_home: true +notitle: true no_on_this_page: true +meta_desc: Pulumi CLI commands for deploying and managing cloud infrastructure. meta_image: /images/docs/meta-images/docs-meta.png +h1: Pulumi CLI +description:Command line interface for deploying and managing cloud infrastructure with team collaboration and CI/CD integration.
menu: iac: name: Pulumi CLI weight: 45 identifier: iac-cli parent: iac-home + pulumi-cli: + name: Pulumi CLI + identifier: pulumi-cli-home + weight: 1 aliases: - /docs/reference/commands/ - /docs/tour/basics-deploying/ @@ -22,6 +30,8 @@ aliases: - /docs/cli --- +## Overview + Pulumi is controlled primarily using the command line interface (CLI). It works in conjunction with the Pulumi Cloud to deploy changes to your cloud apps and infrastructure. It keeps a history of who updated what in your team and when. This CLI has been designed for great inner loop productivity, in addition to diff --git a/content/docs/iac/cli/command-line-completion.md b/content/docs/iac/cli/command-line-completion.md index 555234d62e3f..ffc026515753 100644 --- a/content/docs/iac/cli/command-line-completion.md +++ b/content/docs/iac/cli/command-line-completion.md @@ -8,6 +8,11 @@ menu: iac: weight: 3 parent: iac-cli + pulumi-cli: + name: Command-line Completion + weight: 30 + parent: pulumi-cli-home + identifier: pulumi-cli-completion aliases: - /docs/cli/command-line-completion/ --- diff --git a/content/docs/iac/cli/commands/_index.md b/content/docs/iac/cli/commands/_index.md index b2e822f582e1..25030f3f4c32 100644 --- a/content/docs/iac/cli/commands/_index.md +++ b/content/docs/iac/cli/commands/_index.md @@ -9,6 +9,11 @@ menu: weight: 1 parent: iac-cli identifier: iac-cli-commands + pulumi-cli: + name: Commands + weight: 10 + parent: pulumi-cli-home + identifier: pulumi-cli-commands --- ## Common Commands diff --git a/content/docs/iac/cli/environment-variables.md b/content/docs/iac/cli/environment-variables.md index 6f5cc07b5678..c0e062bfbf85 100644 --- a/content/docs/iac/cli/environment-variables.md +++ b/content/docs/iac/cli/environment-variables.md @@ -8,6 +8,11 @@ menu: iac: weight: 2 parent: iac-cli + pulumi-cli: + name: Environment Variables + weight: 20 + parent: pulumi-cli-home + identifier: pulumi-cli-environment-variables aliases: - /docs/reference/cli/environment-variables/ - /docs/cli/environment-variables/ diff --git a/content/docs/iac/clouds/_index.md b/content/docs/iac/clouds/_index.md index a2cb3d5d3a95..063481fb51a9 100644 --- a/content/docs/iac/clouds/_index.md +++ b/content/docs/iac/clouds/_index.md @@ -4,7 +4,15 @@ meta_desc: Pulumi supports AWS, Azure, Google Cloud, Kubernetes, and over 100 ot title: "Clouds" no_on_this_page: true meta_image: /images/docs/meta-images/docs-meta.png +capability: build +expanded_menu_ids: + - build-cloud-platforms menu: + build: + parent: build-home + name: Cloud Platforms + weight: 60 + identifier: build-cloud-platforms iac: parent: iac-home name: Clouds @@ -12,6 +20,7 @@ menu: identifier: iac-clouds aliases: - /docs/clouds/ + - /docs/build/cloud-platforms/ --- Pulumi supports AWS, Azure, Google Cloud, Kubernetes, and over 100 other packages. diff --git a/content/docs/iac/clouds/aws/_index.md b/content/docs/iac/clouds/aws/_index.md index 057f312dc7e6..a06db6a4c235 100644 --- a/content/docs/iac/clouds/aws/_index.md +++ b/content/docs/iac/clouds/aws/_index.md @@ -4,12 +4,20 @@ meta_desc: Pulumi offers full support for AWS, with two providers, 10+ component title: "AWS" meta_image: /images/docs/meta-images/docs-clouds-aws-meta-image.png h1: AWS & Pulumi +capability: build +expanded_menu_ids: + - build-cloud-platforms menu: iac: name: AWS identifier: aws-clouds parent: iac-clouds weight: 1 + build: + name: Amazon Web Services + identifier: build-aws + parent: build-cloud-platforms + weight: 20 cloud_overview: true description: Build infrastructure on AWS using TypeScript, Python, Go, C#, Java or YAML. Pulumi supports all AWS services and stays up-to-date with all AWS features. get_started_guide: diff --git a/content/docs/iac/clouds/azure/_index.md b/content/docs/iac/clouds/azure/_index.md index 602b47357cdc..7129fcdd12f1 100644 --- a/content/docs/iac/clouds/azure/_index.md +++ b/content/docs/iac/clouds/azure/_index.md @@ -4,12 +4,20 @@ meta_desc: Pulumi offers full support for Azure, with two providers, 4+ componen title: "Azure" meta_image: /images/docs/meta-images/docs-clouds-azure-meta-image.png h1: Azure & Pulumi +capability: build +expanded_menu_ids: + - build-cloud-platforms menu: iac: name: Azure identifier: azure-clouds parent: iac-clouds weight: 1 + build: + name: Microsoft Azure + identifier: build-azure + parent: build-cloud-platforms + weight: 30 cloud_overview: true description: Build infrastructure on Azure using TypeScript, Python, Go, C#, Java or YAML. The Azure Native provider is always up-to-date and covers 100% of the resources in Azure Resource Manager (ARM). get_started_guide: diff --git a/content/docs/iac/clouds/gcp/_index.md b/content/docs/iac/clouds/gcp/_index.md index 32f1c91c7ad4..c8f0baf110bf 100644 --- a/content/docs/iac/clouds/gcp/_index.md +++ b/content/docs/iac/clouds/gcp/_index.md @@ -4,12 +4,20 @@ meta_desc: Pulumi offers full support for Google Cloud, with two providers, 2 co title: "Google Cloud" meta_image: /images/docs/meta-images/docs-clouds-google-cloud-meta-image.png h1: Google Cloud & Pulumi +capability: build +expanded_menu_ids: + - build-cloud-platforms menu: iac: name: Google Cloud identifier: google-clouds parent: iac-clouds weight: 1 + build: + name: Google Cloud Platform + identifier: build-gcp + parent: build-cloud-platforms + weight: 40 cloud_overview: true description: Build infrastructure on Google Cloud using TypeScript, Python, Go, C#, Java or YAML. Pulumi supports all Google Cloud APIs and stays up-to-date with all Google Cloud features. get_started_guide: diff --git a/content/docs/iac/clouds/kubernetes/_index.md b/content/docs/iac/clouds/kubernetes/_index.md index 1145d2b42470..08b763654cef 100644 --- a/content/docs/iac/clouds/kubernetes/_index.md +++ b/content/docs/iac/clouds/kubernetes/_index.md @@ -4,12 +4,20 @@ meta_desc: Pulumi offers full support for Kubernetes, with a provider, an operat title: "Kubernetes" meta_image: /images/docs/meta-images/docs-clouds-kubernetes-meta-image.png h1: Kubernetes & Pulumi +capability: build +expanded_menu_ids: + - build-cloud-platforms menu: iac: name: Kubernetes identifier: kubernetes-clouds parent: iac-clouds weight: 1 + build: + name: Kubernetes + identifier: build-kubernetes + parent: build-cloud-platforms + weight: 50 cloud_overview: true description: Streamline Kubernetes cluster configuration, management, and application workload deployments using TypeScript, Python, Go, C#, Java or YAML. Use the Pulumi Kubernetes Operator to manage both Kubernetes and cloud resources. get_started_guide: diff --git a/content/docs/iac/concepts/_index.md b/content/docs/iac/concepts/_index.md index 3dc124424d90..57e420e846a4 100644 --- a/content/docs/iac/concepts/_index.md +++ b/content/docs/iac/concepts/_index.md @@ -4,12 +4,18 @@ meta_desc: Learn about what Pulumi is, how it works, and how its components work title: Concepts h1: What is Pulumi? meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Concepts weight: 15 parent: iac-home identifier: iac-concepts + build: + name: Core Concepts + identifier: build-core-concepts + parent: build-home + weight: 20 concepts: name: Overview weight: 4 @@ -29,6 +35,16 @@ Pulumi is an [infrastructure as code](/what-is/what-is-infrastructure-as-code/) Pulumi is free, [open source](https://github.com/pulumi/pulumi), and optionally pairs with the [Pulumi Cloud](https://www.pulumi.com/docs/pulumi-cloud/) to make managing infrastructure secure, reliable, and hassle-free. +## Core concepts overview + +Quick links to the most-used concepts when building with Pulumi: + +- Projects & stacks: [Projects](/docs/iac/concepts/projects/), [Stacks](/docs/iac/concepts/stacks/), [Project file](/docs/iac/concepts/projects/project-file/), [Stack settings](/docs/iac/concepts/projects/stack-settings-file/) +- Resources & components: [Resources](/docs/iac/concepts/resources/), [Components](/docs/iac/concepts/components/), [Resource options](/docs/iac/concepts/options/) +- Configuration & environments: [Configuration](/docs/iac/concepts/config/), [Secrets](/docs/iac/concepts/secrets/), [Environments (ESC)](/docs/esc/environments/), [State & backends](/docs/iac/concepts/state-and-backends/) +- Inputs & outputs: [Overview](/docs/iac/concepts/inputs-outputs/), [apply](/docs/iac/concepts/inputs-outputs/apply/), [all](/docs/iac/concepts/inputs-outputs/all/) +- Advanced concepts: [Functions](/docs/iac/concepts/functions/), [Dynamic providers](/docs/iac/concepts/resources/dynamic-providers/), [Resource names](/docs/iac/concepts/resources/names/) + ## Supported languages and SDKs As a multi-language infrastructure as code tool, Pulumi supports many of today's most common general-purpose programming and markup languages. Every Pulumi-supported language is equally capable of provisioning and managing infrastructure across all major clouds, though some languages may provide functionality that's not yet available in others. The following languages and runtimes are currently supported: diff --git a/content/docs/iac/concepts/assets-archives.md b/content/docs/iac/concepts/assets-archives.md index ca4b40328a20..287b03a3ee5e 100644 --- a/content/docs/iac/concepts/assets-archives.md +++ b/content/docs/iac/concepts/assets-archives.md @@ -4,13 +4,19 @@ meta_desc: "The Pulumi SDK provides two classes for working with files: Asset an title: Assets & archives h1: Assets & archives meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Assets & archives parent: iac-concepts weight: 140 - concepts: - weight: 13 + build: + name: Assets & archives + identifier: build-assets-archives + parent: build-core-concepts + weight: 80 +concepts: + weight: 13 search: keywords: - FileAsset diff --git a/content/docs/iac/concepts/components/_index.md b/content/docs/iac/concepts/components/_index.md index 35bab12b0004..40ec9d27c540 100644 --- a/content/docs/iac/concepts/components/_index.md +++ b/content/docs/iac/concepts/components/_index.md @@ -4,12 +4,23 @@ meta_desc: A component resource is a logical grouping of resources. Learn how to title: Components h1: Component resources meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Components parent: iac-concepts weight: 70 identifier: iac-concepts-components + build: + name: Components + identifier: build-components + parent: build-core-concepts + weight: 30 + platform: + name: Components + identifier: platform-components + parent: platform-home + weight: 20 aliases: - /docs/intro/concepts/resources/components/ - /docs/concepts/resources/components/ diff --git a/content/docs/iac/concepts/config.md b/content/docs/iac/concepts/config.md index 09d349544502..6a6fbb08e7dc 100644 --- a/content/docs/iac/concepts/config.md +++ b/content/docs/iac/concepts/config.md @@ -4,13 +4,19 @@ meta_desc: This page provides an overview of how Pulumi manages cloud applicatio title: Configuration h1: Configuration meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Configuration parent: iac-concepts weight: 65 - concepts: - weight: 6 + build: + name: Configuration & Environments + identifier: build-config-environments + parent: build-configure-secure + weight: 30 +concepts: + weight: 6 aliases: - /docs/reference/config/ - /docs/tour/programs-configuration/ diff --git a/content/docs/iac/concepts/functions/_index.md b/content/docs/iac/concepts/functions/_index.md index 970241494323..b6d5e549012e 100644 --- a/content/docs/iac/concepts/functions/_index.md +++ b/content/docs/iac/concepts/functions/_index.md @@ -4,16 +4,13 @@ meta_desc: Learn about the three types of functions available in Pulumi programs title: Functions h1: Functions meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: - iac: + build: name: Functions - parent: iac-concepts - weight: 60 - identifier: iac-concepts-functions - concepts: - name: Functions - parent: Overview - weight: 6 + identifier: build-functions + parent: build-advanced-concepts + weight: 10 --- Pulumi provides three types of functions that you can use in your programs to interact with cloud resources and retrieve data from cloud providers. Understanding these different function types and when to use them is essential for writing effective Pulumi programs. diff --git a/content/docs/iac/concepts/inputs-outputs/_index.md b/content/docs/iac/concepts/inputs-outputs/_index.md index c881ad846513..3526174bfdc7 100644 --- a/content/docs/iac/concepts/inputs-outputs/_index.md +++ b/content/docs/iac/concepts/inputs-outputs/_index.md @@ -4,12 +4,18 @@ meta_desc: Resource properties are treated specially in Pulumi, both for purpose title: "Inputs & outputs" h1: "Inputs & outputs" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Inputs & outputs parent: iac-concepts weight: 60 identifier: iac-concepts-inputs-outputs + build: + name: Inputs, Outputs & Dependencies + identifier: build-inputs-outputs + parent: build-core-concepts + weight: 40 concepts: identifier: inputs-outputs weight: 5 diff --git a/content/docs/iac/concepts/inputs-outputs/all.md b/content/docs/iac/concepts/inputs-outputs/all.md index e38853f2b744..7acdb198688d 100644 --- a/content/docs/iac/concepts/inputs-outputs/all.md +++ b/content/docs/iac/concepts/inputs-outputs/all.md @@ -4,10 +4,15 @@ meta_desc: "Learn how to access multiple output values using the All method in P title: Accessing multiple outputs with All h1: Accessing multiple outputs with All meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: All parent: iac-concepts-inputs-outputs + build: + name: All + parent: build-inputs-outputs + weight: 2 concepts: weight: 2 parent: inputs-outputs diff --git a/content/docs/iac/concepts/inputs-outputs/apply.md b/content/docs/iac/concepts/inputs-outputs/apply.md index cd64eec2e754..cba05d681b9b 100644 --- a/content/docs/iac/concepts/inputs-outputs/apply.md +++ b/content/docs/iac/concepts/inputs-outputs/apply.md @@ -4,11 +4,16 @@ meta_desc: "Learn how to access a single output value using the apply method in title: Accessing single outputs with Apply h1: Accessing single outputs with Apply meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Apply parent: iac-concepts-inputs-outputs weight: 1 + build: + name: Apply + parent: build-inputs-outputs + weight: 1 concepts: weight: 2 parent: inputs-outputs diff --git a/content/docs/iac/concepts/logging.md b/content/docs/iac/concepts/logging.md index f9d650733709..a06db0f3b623 100644 --- a/content/docs/iac/concepts/logging.md +++ b/content/docs/iac/concepts/logging.md @@ -4,13 +4,19 @@ meta_desc: An overview of the Pulumi logging functionality used for debugging an title: "Logging" h1: "Logging" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Logging parent: iac-concepts weight: 170 - concepts: - weight: 10 + build: + name: Logging + identifier: build-logging + parent: build-core-concepts + weight: 85 +concepts: + weight: 10 aliases: - /docs/intro/concepts/logging/ - /docs/concepts/logging/ diff --git a/content/docs/iac/concepts/options/_index.md b/content/docs/iac/concepts/options/_index.md index 4d3f9327cc07..30b9e5752909 100644 --- a/content/docs/iac/concepts/options/_index.md +++ b/content/docs/iac/concepts/options/_index.md @@ -4,11 +4,17 @@ meta_desc: Resource options can be used to configure how all Pulumi resources ar title: Resource options h1: Resource options meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: parent: iac-concepts identifier: options-concepts weight: 50 + build: + name: Resource Options + identifier: build-options + parent: build-resources + weight: 10 aliases: - /docs/intro/concepts/resources/options/ - /docs/concepts/options/ diff --git a/content/docs/iac/concepts/options/additionalsecretoutputs.md b/content/docs/iac/concepts/options/additionalsecretoutputs.md index 33f4f018b9c5..01d3e78d3d92 100644 --- a/content/docs/iac/concepts/options/additionalsecretoutputs.md +++ b/content/docs/iac/concepts/options/additionalsecretoutputs.md @@ -4,11 +4,16 @@ meta_desc: The additionalSecretOutputs resource option specifies a list of named title: "additionalSecretOutputs" h1: "Resource option: additionalSecretOutputs" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: additionalSecretOutputs parent: options-concepts weight: 1 + build: + name: additionalSecretOutputs + parent: build-options + weight: 1 aliases: - /docs/intro/concepts/resources/options/additionalsecretoutputs/ - /docs/concepts/options/additionalsecretoutputs/ diff --git a/content/docs/iac/concepts/options/aliases.md b/content/docs/iac/concepts/options/aliases.md index fb41528b2113..dc59fd10f743 100644 --- a/content/docs/iac/concepts/options/aliases.md +++ b/content/docs/iac/concepts/options/aliases.md @@ -4,11 +4,16 @@ meta_desc: The aliases resource option is commonly used when refactoring Pulumi title: "aliases" h1: "Resource option: aliases" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: aliases parent: options-concepts weight: 2 + build: + name: aliases + parent: build-options + weight: 2 aliases: - /docs/intro/concepts/resources/#aliases - /docs/intro/concepts/resources/options/aliases/ diff --git a/content/docs/iac/concepts/options/customtimeouts.md b/content/docs/iac/concepts/options/customtimeouts.md index 53963ec8e47e..8b5d967ba349 100644 --- a/content/docs/iac/concepts/options/customtimeouts.md +++ b/content/docs/iac/concepts/options/customtimeouts.md @@ -4,11 +4,16 @@ meta_desc: The customTimeouts resource option specifies the default retry/timeou title: "customTimeouts" h1: "Resource option: customTimeouts" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: customTimeouts parent: options-concepts weight: 3 + build: + name: customTimeouts + parent: build-options + weight: 3 aliases: - /docs/intro/concepts/resources/options/customtimeouts/ - /docs/concepts/options/customtimeouts/ diff --git a/content/docs/iac/concepts/options/deletebeforereplace.md b/content/docs/iac/concepts/options/deletebeforereplace.md index a7fd3a1c5151..630340d2d8df 100644 --- a/content/docs/iac/concepts/options/deletebeforereplace.md +++ b/content/docs/iac/concepts/options/deletebeforereplace.md @@ -4,11 +4,16 @@ meta_desc: Setting the deleteBeforeReplace option to true means that Pulumi will title: "deleteBeforeReplace" h1: "Resource option: deleteBeforeReplace" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: deleteBeforeReplace parent: options-concepts weight: 4 + build: + name: deleteBeforeReplace + parent: build-options + weight: 4 aliases: - /docs/intro/concepts/resources/options/deletebeforereplace/ - /docs/concepts/options/deletebeforereplace/ diff --git a/content/docs/iac/concepts/options/deletedwith.md b/content/docs/iac/concepts/options/deletedwith.md index c0b96fcb7a80..29c6dfb4d018 100644 --- a/content/docs/iac/concepts/options/deletedwith.md +++ b/content/docs/iac/concepts/options/deletedwith.md @@ -4,11 +4,16 @@ meta_desc: The deletedWith resource option allows you to skip running resource d title: "deletedWith" h1: "Resource option: deletedWith" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: deletedWith parent: options-concepts weight: 5 + build: + name: deletedWith + parent: build-options + weight: 5 aliases: - /docs/intro/concepts/resources/options/deletedwith/ - /docs/concepts/options/deletedwith/ diff --git a/content/docs/iac/concepts/options/dependson.md b/content/docs/iac/concepts/options/dependson.md index 041172d5b598..914e66a94ae3 100644 --- a/content/docs/iac/concepts/options/dependson.md +++ b/content/docs/iac/concepts/options/dependson.md @@ -4,11 +4,16 @@ meta_desc: The dependsOn resource option specifies additional resource dependenc title: "dependsOn" h1: "Resource option: dependsOn" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: dependsOn parent: options-concepts weight: 6 + build: + name: dependsOn + parent: build-options + weight: 6 aliases: - /docs/intro/concepts/resources/options/dependson/ - /docs/concepts/options/dependson/ diff --git a/content/docs/iac/concepts/options/hooks.md b/content/docs/iac/concepts/options/hooks.md index 22018512aba2..dbd27983c6c3 100644 --- a/content/docs/iac/concepts/options/hooks.md +++ b/content/docs/iac/concepts/options/hooks.md @@ -4,11 +4,16 @@ meta_desc: The hooks resource option provides a set of resource hooks linked to title: "hooks" h1: "Resource option: hooks" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: hooks parent: options-concepts weight: 7 + build: + name: Hooks + parent: build-options + weight: 7 aliases: - /docs/intro/concepts/resources/options/hooks/ - /docs/concepts/options/hooks/ diff --git a/content/docs/iac/concepts/options/ignorechanges.md b/content/docs/iac/concepts/options/ignorechanges.md index 8814fa04351c..a93eca14f405 100644 --- a/content/docs/iac/concepts/options/ignorechanges.md +++ b/content/docs/iac/concepts/options/ignorechanges.md @@ -4,11 +4,16 @@ meta_desc: The ignoreChanges resource option declares that changes to certain pr title: "ignoreChanges" h1: "Resource option: ignoreChanges" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: ignoreChanges parent: options-concepts weight: 8 + build: + name: ignoreChanges + parent: build-options + weight: 8 aliases: - /docs/intro/concepts/resources/options/ignorechanges/ - /docs/concepts/options/ignorechanges/ diff --git a/content/docs/iac/concepts/options/import.md b/content/docs/iac/concepts/options/import.md index 430a01d63e90..918a38ab5a29 100644 --- a/content/docs/iac/concepts/options/import.md +++ b/content/docs/iac/concepts/options/import.md @@ -4,11 +4,16 @@ meta_desc: The import resource option brings an existing cloud resource into Pul title: "import" h1: "Resource option: import" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: import parent: options-concepts weight: 9 + build: + name: Import + parent: build-options + weight: 9 aliases: - /docs/intro/concepts/resources/options/import/ - /docs/concepts/options/import/ diff --git a/content/docs/iac/concepts/options/parent.md b/content/docs/iac/concepts/options/parent.md index 1ff309dc9f3f..4e2a888b2e73 100644 --- a/content/docs/iac/concepts/options/parent.md +++ b/content/docs/iac/concepts/options/parent.md @@ -4,11 +4,16 @@ meta_desc: The parent resource option establishes an explicit parent/child relat title: "parent" h1: "Resource option: parent" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: parent parent: options-concepts weight: 10 + build: + name: Parent + parent: build-options + weight: 10 aliases: - /docs/intro/concepts/resources/options/parent/ - /docs/concepts/options/parent/ diff --git a/content/docs/iac/concepts/options/protect.md b/content/docs/iac/concepts/options/protect.md index 813fc471c0dc..597b9ecd5745 100644 --- a/content/docs/iac/concepts/options/protect.md +++ b/content/docs/iac/concepts/options/protect.md @@ -4,11 +4,16 @@ meta_desc: The protect resource option prevents accidental deletion of a resourc title: "protect" h1: "Resource option: protect" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: protect parent: options-concepts weight: 11 + build: + name: Protect + parent: build-options + weight: 11 aliases: - /docs/intro/concepts/resources/options/protect/ - /docs/concepts/options/protect/ diff --git a/content/docs/iac/concepts/options/provider.md b/content/docs/iac/concepts/options/provider.md index 777d2f4988fb..a6c2cadb4296 100644 --- a/content/docs/iac/concepts/options/provider.md +++ b/content/docs/iac/concepts/options/provider.md @@ -4,11 +4,16 @@ meta_desc: The provider resource option passes an explicitly configured provider title: "provider" h1: "Resource option: provider" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: provider parent: options-concepts weight: 12 + build: + name: Provider + parent: build-options + weight: 12 aliases: - /docs/concepts/resources/options/provider/ - /docs/concepts/options/provider/ diff --git a/content/docs/iac/concepts/options/providers.md b/content/docs/iac/concepts/options/providers.md index f2167c4e9634..212cfd1a01ab 100644 --- a/content/docs/iac/concepts/options/providers.md +++ b/content/docs/iac/concepts/options/providers.md @@ -4,11 +4,16 @@ meta_desc: The providers resource option specifies a set of explicitly configure title: "providers" h1: "Resource option: providers" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: providers parent: options-concepts weight: 13 + build: + name: Providers + parent: build-options + weight: 13 aliases: - /docs/concepts/resources/options/providers/ - /docs/concepts/options/providers/ diff --git a/content/docs/iac/concepts/options/replaceonchanges.md b/content/docs/iac/concepts/options/replaceonchanges.md index 90cc1c2a8b2a..e6e515da5207 100644 --- a/content/docs/iac/concepts/options/replaceonchanges.md +++ b/content/docs/iac/concepts/options/replaceonchanges.md @@ -4,11 +4,16 @@ meta_desc: The replaceOnChanges resource option indicates that changes to proper title: "replaceOnChanges" h1: "Resource option: replaceOnChanges" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: replaceOnChanges parent: options-concepts weight: 14 + build: + name: replaceOnChanges + parent: build-options + weight: 14 aliases: - /docs/intro/concepts/resources/options/replaceonchanges/ - /docs/concepts/options/replaceonchanges/ diff --git a/content/docs/iac/concepts/options/retainOnDelete.md b/content/docs/iac/concepts/options/retainOnDelete.md index f26a1806fef1..90e23b8b1a40 100644 --- a/content/docs/iac/concepts/options/retainOnDelete.md +++ b/content/docs/iac/concepts/options/retainOnDelete.md @@ -4,11 +4,16 @@ meta_desc: The `retainOnDelete` resource option marks a resource to be retained title: "retainOnDelete" h1: "Resource option: retainOnDelete" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: retainOnDelete parent: options-concepts weight: 15 + build: + name: retainOnDelete + parent: build-options + weight: 15 aliases: - /docs/intro/concepts/resources/options/retainondelete/ - /docs/concepts/options/retainondelete/ diff --git a/content/docs/iac/concepts/options/transformations.md b/content/docs/iac/concepts/options/transformations.md index 03b56420fbaa..dcf32ae7c9ff 100644 --- a/content/docs/iac/concepts/options/transformations.md +++ b/content/docs/iac/concepts/options/transformations.md @@ -4,11 +4,16 @@ meta_desc: The transformations resource option provides a list of transformation title: "transformations" h1: "Resource option: transformations" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: transformations parent: options-concepts weight: 16 + build: + name: Transformations + parent: build-options + weight: 16 aliases: - /docs/intro/concepts/resources/options/transformations/ - /docs/concepts/options/transformations/ diff --git a/content/docs/iac/concepts/options/transforms.md b/content/docs/iac/concepts/options/transforms.md index 838337af55d7..07bab9c0bdf6 100644 --- a/content/docs/iac/concepts/options/transforms.md +++ b/content/docs/iac/concepts/options/transforms.md @@ -4,11 +4,16 @@ meta_desc: The transforms resource option provides a list of transforms to apply title: "transforms" h1: "Resource option: transforms" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: transforms parent: options-concepts weight: 16 + build: + name: Transforms + parent: build-options + weight: 16 aliases: - /docs/intro/concepts/resources/options/transforms/ - /docs/concepts/options/transforms/ diff --git a/content/docs/iac/concepts/options/version.md b/content/docs/iac/concepts/options/version.md index dc1ebc2baf12..c8fde31ac638 100644 --- a/content/docs/iac/concepts/options/version.md +++ b/content/docs/iac/concepts/options/version.md @@ -4,11 +4,16 @@ meta_desc: The version resource option specifies a provider version to use when title: "version" h1: "Resource option: version" meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: identifier: version parent: options-concepts weight: 17 + build: + name: Version + parent: build-options + weight: 17 aliases: - /docs/intro/concepts/resources/options/version/ - /docs/concepts/options/version/ diff --git a/content/docs/iac/concepts/projects/_index.md b/content/docs/iac/concepts/projects/_index.md index 902f6769d219..c3c88f8a4912 100644 --- a/content/docs/iac/concepts/projects/_index.md +++ b/content/docs/iac/concepts/projects/_index.md @@ -4,12 +4,18 @@ meta_desc: A Pulumi project is any folder which contains a Pulumi.yaml file. Lea title: Projects h1: Projects meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Projects parent: iac-concepts weight: 20 identifier: iac-concepts-projects + build: + name: Projects + identifier: build-projects + parent: build-stacks-projects + weight: 10 concepts: identifier: projects weight: 1 diff --git a/content/docs/iac/concepts/projects/project-file.md b/content/docs/iac/concepts/projects/project-file.md index dcebc0fa58d9..4fb24e9c2995 100644 --- a/content/docs/iac/concepts/projects/project-file.md +++ b/content/docs/iac/concepts/projects/project-file.md @@ -4,11 +4,16 @@ meta_desc: Documentation of the settings that are valid for the Pulumi project f title: Project file reference h1: Pulumi project file reference meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Project file reference parent: iac-concepts-projects weight: 1 + build: + name: Project file reference + parent: build-projects + weight: 1 concepts: parent: projects weight: 1 diff --git a/content/docs/iac/concepts/projects/stack-settings-file.md b/content/docs/iac/concepts/projects/stack-settings-file.md index 3f66f59137a2..d0c5a529a768 100644 --- a/content/docs/iac/concepts/projects/stack-settings-file.md +++ b/content/docs/iac/concepts/projects/stack-settings-file.md @@ -4,11 +4,16 @@ meta_desc: Documentation of the settings that are valid for Pulumi stack configu title: Stack settings file reference h1: Pulumi stack settings file reference meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Stack settings file reference parent: iac-concepts-projects weight: 2 + build: + name: Stack settings file reference + parent: build-projects + weight: 2 concepts: parent: projects weight: 2 diff --git a/content/docs/iac/concepts/resources/_index.md b/content/docs/iac/concepts/resources/_index.md index 0fc03d508a02..e0902671669a 100644 --- a/content/docs/iac/concepts/resources/_index.md +++ b/content/docs/iac/concepts/resources/_index.md @@ -4,12 +4,18 @@ meta_desc: Resources represent the fundamental units that make up your cloud inf title: Resources h1: Resources meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Resources parent: iac-concepts weight: 40 identifier: iac-concepts-resources + build: + name: Resources + identifier: build-resources + parent: build-core-concepts + weight: 25 concepts: identifier: resources weight: 3 diff --git a/content/docs/iac/concepts/resources/dynamic-providers.md b/content/docs/iac/concepts/resources/dynamic-providers.md index a533bad3e22b..e6dd4dc873cd 100644 --- a/content/docs/iac/concepts/resources/dynamic-providers.md +++ b/content/docs/iac/concepts/resources/dynamic-providers.md @@ -4,11 +4,17 @@ meta_desc: Dynamic resource providers are providers that can be written inside y title: Dynamic providers h1: Dynamic resource providers meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Dynamic providers parent: iac-concepts-resources weight: 6 + build: + name: Dynamic providers + identifier: build-dynamic-providers + parent: build-advanced-concepts + weight: 20 concepts: parent: resources weight: 6 diff --git a/content/docs/iac/concepts/resources/names.md b/content/docs/iac/concepts/resources/names.md index 6e97c4d3a683..76f3f6e79e80 100644 --- a/content/docs/iac/concepts/resources/names.md +++ b/content/docs/iac/concepts/resources/names.md @@ -4,11 +4,17 @@ meta_desc: A resource in Pulumi has a logical name (in Pulumi) and a physical na title: Names h1: Resource names meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Names parent: iac-concepts-resources weight: 1 + build: + name: Resource Names + identifier: build-resource-names + parent: build-advanced-concepts + weight: 30 concepts: parent: resources weight: 1 diff --git a/content/docs/iac/concepts/resources/providers.md b/content/docs/iac/concepts/resources/providers.md index 5f0c6fdc6053..9a41ddbee71a 100644 --- a/content/docs/iac/concepts/resources/providers.md +++ b/content/docs/iac/concepts/resources/providers.md @@ -4,11 +4,16 @@ meta_desc: A resource provider handles communications with a cloud service to cr title: Providers h1: Resource providers meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Providers parent: iac-concepts-resources weight: 4 + build: + name: Providers + parent: build-resources + weight: 4 concepts: parent: resources weight: 4 diff --git a/content/docs/iac/concepts/secrets.md b/content/docs/iac/concepts/secrets.md index ecebfcc5b633..f732816f0ece 100644 --- a/content/docs/iac/concepts/secrets.md +++ b/content/docs/iac/concepts/secrets.md @@ -4,13 +4,13 @@ meta_desc: This page provides an overview of how Pulumi manages sensitive config title: Secrets h1: Secrets meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: - iac: + build: name: Secrets - parent: iac-concepts - weight: 90 - concepts: - weight: 7 + identifier: build-secrets + parent: build-config-environments + weight: 10 aliases: - /docs/intro/concepts/secrets/ - /docs/concepts/secrets/ diff --git a/content/docs/iac/concepts/stacks.md b/content/docs/iac/concepts/stacks.md index 2d28f8690309..07e9dd8789e6 100644 --- a/content/docs/iac/concepts/stacks.md +++ b/content/docs/iac/concepts/stacks.md @@ -4,11 +4,17 @@ meta_desc: Every Pulumi program is deployed to a stack and a project can have as title: Stacks h1: Stacks meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Stacks parent: iac-concepts weight: 30 + build: + name: Stacks + identifier: build-stacks + parent: build-stacks-projects + weight: 20 concepts: weight: 2 aliases: diff --git a/content/docs/iac/concepts/state-and-backends.md b/content/docs/iac/concepts/state-and-backends.md index ab25201c5cc3..0647d755bc55 100644 --- a/content/docs/iac/concepts/state-and-backends.md +++ b/content/docs/iac/concepts/state-and-backends.md @@ -8,13 +8,13 @@ keywords: - infrastructure state - state backend meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: - iac: + build: name: State & backends - parent: iac-concepts - weight: 100 - concepts: - weight: 9 + identifier: build-state-backends + parent: build-config-environments + weight: 40 aliases: - /docs/reference/state/ diff --git a/content/docs/iac/concepts/vs/cloud-template-transpilers/aws-cdk/_index.md b/content/docs/iac/concepts/vs/cloud-template-transpilers/aws-cdk/_index.md index 2c33db0fb914..dc76c43f1a79 100644 --- a/content/docs/iac/concepts/vs/cloud-template-transpilers/aws-cdk/_index.md +++ b/content/docs/iac/concepts/vs/cloud-template-transpilers/aws-cdk/_index.md @@ -4,11 +4,17 @@ meta_desc: Pulumi and AWS Cloud Development Kit (CDK) share some similarities, b title: Pulumi vs AWS Cloud Development Kit (CDK) h1: Pulumi vs AWS Cloud Development Kit (CDK) meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Pulumi vs AWS Cloud Development Kit (CDK) parent: cloud-template-transpilers weight: 3 + build: + name: vs. AWS CDK + identifier: build-vs-aws-cdk + parent: build-understand-context + weight: 30 concepts: parent: vs weight: 3 diff --git a/content/docs/iac/concepts/vs/cloud-templates/cloudformation/_index.md b/content/docs/iac/concepts/vs/cloud-templates/cloudformation/_index.md index 1dc932014af6..4e9989daa5d5 100644 --- a/content/docs/iac/concepts/vs/cloud-templates/cloudformation/_index.md +++ b/content/docs/iac/concepts/vs/cloud-templates/cloudformation/_index.md @@ -4,12 +4,18 @@ meta_desc: Pulumi and AWS CloudFormation share some similarities, but there are title: AWS CloudFormation h1: Pulumi vs AWS CloudFormation meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: AWS CloudFormation parent: iac-concepts-compare weight: 2 identifier: iac-concepts-compare-cloudformation + build: + name: vs. CloudFormation & ARM + identifier: build-vs-cloudformation + parent: build-understand-context + weight: 20 concepts: parent: vs weight: 2 diff --git a/content/docs/iac/concepts/vs/terraform/_index.md b/content/docs/iac/concepts/vs/terraform/_index.md index 56b4b213a04c..4acd72dd4a1a 100644 --- a/content/docs/iac/concepts/vs/terraform/_index.md +++ b/content/docs/iac/concepts/vs/terraform/_index.md @@ -4,12 +4,18 @@ meta_desc: Pulumi IaC and Terraform have many similarities, and yet they differ title: Terraform h1: Terraform vs. Pulumi IaC meta_image: /images/docs/meta-images/docs-meta.png +capability: build menu: iac: name: Terraform parent: iac-concepts-compare weight: 1 identifier: iac-concepts-compare-terraform + build: + name: vs. Terraform & OpenTofu + identifier: build-vs-terraform + parent: build-understand-context + weight: 10 concepts: identifier: vs-terraform parent: vs diff --git a/content/docs/iac/crossguard/_index.md b/content/docs/iac/crossguard/_index.md index 4f111f8d757f..b18010b4c264 100644 --- a/content/docs/iac/crossguard/_index.md +++ b/content/docs/iac/crossguard/_index.md @@ -5,12 +5,18 @@ meta_desc: Pulumi's Policy as Code offering, CrossGuard, allows you to set guard title: Policy as code h1: Pulumi policy as code meta_image: /images/docs/meta-images/docs-meta.png +capability: management menu: iac: name: Policy as code parent: iac-home weight: 55 identifier: iac-policy + management: + name: Policies (CrossGuard) + identifier: management-policies + parent: management-home + weight: 30 aliases: - /docs/guides/crossguard/ - /policy-as-code/ diff --git a/content/docs/iac/download-install/_index.md b/content/docs/iac/download-install/_index.md index dd9895115dfa..4cdb94ca8ae3 100644 --- a/content/docs/iac/download-install/_index.md +++ b/content/docs/iac/download-install/_index.md @@ -4,11 +4,17 @@ meta_desc: This page contains detailed instructions for downloading and installi title: "Download & install" h1: Download & install Pulumi meta_image: /images/docs/meta-images/docs-meta.png +capability: get-started menu: iac: parent: iac-home weight: 5 identifier: iac-install + get-started: + name: Install & Setup + identifier: get-started-install + parent: get-started-home + weight: 10 install: name: Overview weight: 1 diff --git a/content/docs/iac/download-install/migrating-3.0.md b/content/docs/iac/download-install/migrating-3.0.md index c62f068dd292..7344c1a7398d 100644 --- a/content/docs/iac/download-install/migrating-3.0.md +++ b/content/docs/iac/download-install/migrating-3.0.md @@ -4,6 +4,13 @@ meta_desc: This page provides instructions for upgrading to Pulumi 3.0 title: Upgrading to Pulumi 3.0 no_on_this_page: true meta_image: /images/docs/meta-images/docs-meta.png +capability: build +menu: + build: + name: Version Management & Migration + identifier: build-version-management + parent: build-core-concepts + weight: 50 aliases: - /docs/get-started/install/migrating-3.0/ diff --git a/content/docs/iac/download-install/versions.md b/content/docs/iac/download-install/versions.md index 0b3a2ab826ae..b74d11fe3f27 100644 --- a/content/docs/iac/download-install/versions.md +++ b/content/docs/iac/download-install/versions.md @@ -1,9 +1,15 @@ --- title: Pulumi CLI versions meta_desc: This page provides an list of available versions of the Pulumi CLI. +capability: build menu: install: weight: 1 + build: + name: Available Versions + identifier: build-available-versions + parent: build-core-concepts + weight: 60 aliases: - /docs/reference/changelog/ diff --git a/content/docs/iac/get-started/_index.md b/content/docs/iac/get-started/_index.md index 1d1cd6cb792c..722ca00a976f 100644 --- a/content/docs/iac/get-started/_index.md +++ b/content/docs/iac/get-started/_index.md @@ -1,16 +1,26 @@ --- +title: Get Started +linktitle: Get Started title_tag: Get Started with Pulumi meta_desc: Step-by-step guides for creating, deploying, and managing infrastructure with Pulumi on the cloud using your favorite language. -title: Get started -h1: Get started with Pulumi -no_on_this_page: true meta_image: /images/docs/meta-images/docs-meta.png +h1: Get Started with Pulumi +description:Learn how to build, deploy, and manage infrastructure using your favorite programming languages with Pulumi. Choose your cloud provider and programming language to get started.
+capability: get-started +docs_home: true +notitle: true +no_on_this_page: true +expanded_menu_ids: "get-started-install,get-started-cloud-quickstarts,get-started-aws,get-started-azure,get-started-gcp,get-started-kubernetes" menu: iac: name: Get started identifier: iac-get-started parent: iac-home weight: 10 + get-started: + name: Get Started + identifier: get-started-home + weight: 1 getstarted: name: Overview weight: 2 @@ -21,8 +31,12 @@ aliases: - /get-started/ - /docs/tour/ - /docs/get-started + - /docs/getting-started/ + --- +## Overview + Pulumi is a modern [infrastructure as code](/what-is/what-is-infrastructure-as-code/) and [secrets management](/what-is/what-is-secrets-management/) platform that allows you to use familiar programming languages and tools to automate, secure and manage everything you run in the cloud. Pulumi IaC is free, [open source](https://github.com/pulumi/pulumi), and optionally pairs with the [Pulumi Cloud](/docs/pulumi-cloud/) to make managing infrastructure secure, reliable, and hassle-free. @@ -329,7 +343,7 @@ Select one of the following options to get started: Alternatively, you can watch the following video which provides a high level overview of how Pulumi works: -