Guinevere Saenger

Guinevere Saenger

Software Engineer

Pulumi Docker Provider 4.0: Build Images Up To 50x Faster

Pulumi Docker Provider 4.0: Build Images Up To 50x Faster

The Pulumi Docker Provider has been a top Pulumi provider since it launched in 2018. It can be used to provision any of the resources available in Docker, including containers, images, networks, volumes and more.

One of the most heavily used features of this provider is the docker.Image resource, which enables Pulumi users to build and (optionally) push a local Docker context (like an application folder) to a registry as part of a Pulumi deployment. Today we are excited to announce a set of improvements to the docker.Image resource driven by the feedback we have received from our community. This set of improvements includes:

  • Significantly improved performance (including reduced need for rebuilds)
  • BuildKit support (including cross-platform builds)
  • Rich Docker build logs inside Pulumi IaC program output
  • Pulumi YAML and Pulumi Java support

Read more →

Multicloud with Kubernetes and Pulumi

Multicloud with Kubernetes and Pulumi

In this article we’ll show you how to use Pulumi Components and the Pulumi Automation API to make golden path decisions which will both support your customers on multiple different clouds, and enable infrastructure teams and frontend service teams to more easily own their respective parts of your codebase.

Read more →

How we manage GitHub at Pulumi with Pulumi

How we manage GitHub at Pulumi with Pulumi

We recently updated this article to reflect that parentTeamId of the Team resource accepts a string instead of an int since v5.9.1 of the Pulumi Github package.

Ah, GitHub. The home of all developers. The place where we share code. The world’s most awkward social media site. The secret LinkedIn for techies. The tool we use for company org structure, work planning, code ownership, and permissions…

Wait.

That’s quite a lot.

GitHub is good at many things, but a full-on organization management tool it is not.

Have you ever needed your manager to manually enable admin permission on a repo for you? Or have you needed to page the CEO to add you to a team, because your manager was out that day? Have you ever wondered who is on what team? Or which team owns a repo? What if you change teams, or a team changes names? A reorg happens, and the “platform-integrations” team is no more, but we still need to call it that on GitHub because it is the team with all the repository accesses?

When I joined Pulumi in 2021, all of the above happened to me within my first few weeks.

We at Pulumi wanted to reduce this kind of management friction, and we decided to solve it the Pulumi way: with declarative infrastructure using the Pulumi GitHub provider.

Read more →