March 2022 Summaries
13 posts from Pulumi
Filter
Month:
Year:
Post Summaries
Back to Blog
Go 1.18 introduced a significant new feature to the Go programming language: generics, which can enhance the development experience for Pulumi programs by providing a common interface for various tasks. To utilize this feature, developers must ensure they have Go 1.18 installed and update their Pulumi program's go.mod file to specify this version as the minimum requirement. Generics allow developers to create a unified interface for tasks that require different implementations, such as installing Kubernetes resources. By defining a Component interface with an Install function, developers can create components like Nginx that satisfy this interface, enabling them to install resources with specific configurations. The example demonstrates how to define and use an Nginx component with a generic AddComponent function, showcasing the flexibility and power of generics in platform engineering.
Mar 31, 2022
823 words in the original blog post.
Pulumiverse is a new GitHub organization created in collaboration with the Pulumi community to foster interaction and collaboration on Pulumi-based libraries, projects, and educational materials. Initiated by community members Ringo De Smet and Simen A. W. Olsen, Pulumiverse aims to fill a gap in the infrastructure automation space by providing a platform similar to those for other tools like Chef and Puppet, where developers can share resources, configurations, and ideas. The organization seeks to prevent the redundancy of efforts by offering a space for shared abstractions and SDKs while encouraging contributions from the community. It launches with projects such as Awesome Pulumi, which curates resources like books and tutorials, and Kubernetes SDKs, which offers multi-language SDKs for interacting with Kubernetes Custom Resource Definitions. Pulumi Concourse and Unifi Providers are examples of community-maintained projects featured in the Pulumiverse, and developers are invited to contribute their own libraries and projects to this growing ecosystem.
Mar 30, 2022
599 words in the original blog post.
Efficient DNS management is essential for domain owners and can be streamlined using Pulumi, which automates DNS configurations and enhances consistency across providers. The process involves leveraging Pulumi's ComponentResource API to create a "Domain Controller" object for each domain, simplifying the manipulation of DNS records through accessible methods. By employing this approach, users can easily add or adjust records such as MX records for email, A/CNAME for subdomains, and configure domain settings without being tied to a specific DNS host, as demonstrated with services like Cloudflare, DNSimple, and Google Cloud DNS. The setup also includes mechanisms to disable email by setting appropriate TXT records, ensuring that the domain doesn't send emails inadvertently. Future enhancements aim to support multiple DNS providers and alias domains, allowing for more flexible and resilient DNS management.
Mar 29, 2022
1,700 words in the original blog post.
User experience (UX) at Pulumi revolves around asking questions and solving problems to enhance the experience for developers using their products. The cross-disciplinary UX team, consisting of designers and engineers, works collaboratively to advocate for users and address potential obstacles. Their work spans across Pulumi's CLI, Service, marketing website, Docs, and Registry, where they strive to optimize user flow and minimize friction, ultimately boosting user confidence. The team has grown significantly, and recent projects include improvements to the pricing page and sign-in experience. They emphasize community engagement, valuing people over technology, and encourage feedback through platforms like GitHub and Pulumi's community Slack channel. Pulumi's UX team is committed to making impactful changes and plans to share more insights through future blog posts.
Mar 28, 2022
400 words in the original blog post.
Version 5.0.0 of the Pulumi AWS provider introduces several improvements and breaking changes, including a significant update to the AWS S3 Bucket resource. This update involves dividing the S3 Bucket resource into multiple components, which can disrupt its common usage. To mitigate this, Pulumi offers both the existing and new implementations, ensuring continuity for current users while introducing aws.s3.BucketV2 for new deployments. This approach allows users to transition between resource types seamlessly, leveraging aliases in Pulumi to maintain existing infrastructure without the need for bucket recreation. The update emphasizes Pulumi's commitment to compatibility and provides clear migration paths, supported by extensive documentation and resources for users to adapt to the new changes.
Mar 28, 2022
1,050 words in the original blog post.
In an effort to streamline organizational management and reduce administrative friction, Pulumi has utilized its own declarative infrastructure approach through the Pulumi GitHub provider to manage their GitHub teams and repositories more efficiently. This involved creating a Pulumi program to automate the organization of GitHub teams, including importing existing teams without disrupting access, setting up nested team structures with inherited permissions, and managing team memberships via a YAML configuration. The approach allows for centralized management and auditability of organizational structures and permissions through version-controlled configuration files, enabling changes to be implemented seamlessly through CI/CD workflows. Additionally, Pulumi's method enables the standardization of repository permissions based on team roles, ensuring consistent access management across the organization. Future plans include automating onboarding processes and integrating additional Pulumi providers to further enhance the tool's capabilities.
Mar 22, 2022
3,213 words in the original blog post.
Pulumi offers a comprehensive system for managing secrets within application configurations, addressing the critical need to secure sensitive information like passwords and API keys. By default, Pulumi encrypts secrets using a per-stack encryption key managed by the Pulumi Service, but it also supports multiple providers for those who prefer to manage their keys independently, such as AWS KMS, Azure Key Vault, and HashiCorp Vault. Users can configure secrets using simple command-line tools and APIs, with options to set secrets directly or use external storage solutions like S3 or Azure Blob Storage. For enhanced security and compliance, Pulumi allows users to switch between encryption providers and even manage their own encryption keys entirely. The flexibility and security of Pulumi's approach make it a robust option for infrastructure configuration management, offering both ease of use and the ability to meet specific organizational security requirements.
Mar 16, 2022
1,159 words in the original blog post.
Pulumi has introduced significant updates to its infrastructure import feature, enhancing the ability to seamlessly bring existing resources into the Pulumi ecosystem. These improvements address challenges faced by cloud engineers who often work with legacy systems that require modernization. The new updates provide a smoother experience by eliminating unnecessary default values in generated code, which aligns better with how users would naturally write it. For example, when importing AWS S3 buckets and EC2 instances, the updated system utilizes the provider's Read function to accurately capture the current state of resources without superfluous properties. This results in cleaner, more intuitive code generation and allows for successful imports even if some inputs are missing. Additionally, the updates include a more tolerant handling of property checks, enabling code generation even in the face of minor discrepancies. Pulumi's integration with Terraform providers also benefits from these updates, as improvements to the "terraform-bridge" library help reduce zero-initialized properties, leading to a more accurate representation of the resource state. These changes are aimed at making the import process more user-friendly and effective, ultimately supporting teams in their efforts to transition to modern cloud architecture.
Mar 15, 2022
2,658 words in the original blog post.
In the latest release, Pulumi introduced several new features and improvements to enhance user experience and functionality. The updates include enhancements to the Pulumi import feature, which now allows importing infrastructure with all input fields and treats check failures as warnings, along with an optional flag to skip code generation. A new resource option, RetainOnDelete, enables resources to remain in the cloud provider even after deletion from the Pulumi stack. The release also introduces the pulumi state rename command for easier resource renaming and sets the default plugin installation to the latest version, saving users time. Additionally, Pulumi now features a dot spinner in non-interactive mode to prevent CI tools from terminating jobs due to inactivity, and supports the pulumi cancel command for self-managed state backends like S3.
Mar 15, 2022
600 words in the original blog post.
Pulumi has addressed a longstanding community request for hierarchical configuration by introducing project-level config in November 2022, which allows users to set configuration values at a project level that can be accessed across multiple stacks. While this new feature satisfies many user needs, the blog post explores additional approaches, such as using hard-coded configurations and organizational level config through remote JSON files, though it warns of the complexities and drawbacks associated with these methods, such as schema management and ensuring consistency. Pulumi acknowledges the challenges of merging configurations from different levels—project, organization, and stack—and emphasizes its commitment to further enhancing the configuration experience. The company invites users to engage in discussions about future improvements and to follow ongoing developments in configuration management.
Mar 15, 2022
979 words in the original blog post.
A developer discusses the challenges of choosing a tech stack for building web apps and highlights the MERN stack (MongoDB, Express, React, Node.js) as a go-to solution for creating three-tier web applications using JavaScript. The developer also explores the difficulties of deploying applications to the cloud, emphasizing the complexity of selecting cloud providers and resources. DigitalOcean's App Platform emerges as a compelling solution, offering a Heroku-like experience that abstracts infrastructure management, allowing developers to focus on their apps. The text provides a detailed guide on deploying a MERN app using DigitalOcean's platform, integrated with Pulumi to automate infrastructure as code. It walks through setting up a grocery list app, configuring its components on DigitalOcean, and using Pulumi to manage deployment, scaling, and teardown processes. The developer encourages experimenting further with Pulumi and DigitalOcean's capabilities, suggesting ways to refine deployment processes and integrate CI/CD workflows.
Mar 11, 2022
3,888 words in the original blog post.
When upgrading infrastructure, especially in cloud computing environments, various deployment strategies can be employed to ensure minimal downtime and maintain service-level agreements. Traditional methods of upgrading individual resources manually are impractical in large-scale cloud environments. Instead, strategies such as blue-green deployments, canary deployments, and rolling deployments are used. Blue-green deployments involve creating a parallel environment to test upgrades before switching traffic over, ensuring stability before decommissioning the old system. Canary deployments gradually introduce new infrastructure to a small portion of traffic to detect potential issues under real-world conditions before a full rollout. Rolling deployments replace system elements one at a time, ensuring each new instance is fully operational before proceeding. These strategies, adapted from application deployment practices, offer more efficient and reliable ways to manage infrastructure updates without disrupting service.
Mar 07, 2022
1,470 words in the original blog post.
Pulumi has announced significant expansions to its offerings, including the launch of the Business Critical Edition for the Pulumi Cloud Engineering Platform, which caters to the advanced security, compliance, and support needs of its rapidly growing enterprise customer base, featuring companies like Mercedes-Benz and Snowflake. This new edition complements the existing Team and Enterprise Editions, offering features such as enhanced organization policies, self-hosting capabilities, cross-domain identity management, automatic audit log exports, and 24/7 support. To facilitate broader adoption, Pulumi has also introduced a 30-day trial for the Self-Hosted Pulumi Service, which allows organizations to deploy the service on their own infrastructure to meet specific compliance requirements. Additionally, the Pulumi Enterprise and Business Critical Editions are now available through the AWS Marketplace, simplifying the purchasing process for customers using AWS resources. These developments are aimed at enabling organizations to adopt and scale their cloud engineering practices more efficiently with Pulumi's infrastructure as code solutions.
Mar 02, 2022
737 words in the original blog post.