Pulumi Architecture: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 8: Line 8:
[[File:Pulumi_Architecture.png|1267px]]
[[File:Pulumi_Architecture.png|1267px]]
==Resource Provider==
==Resource Provider==
A resource provider consists of a [[#Resource_Plugin|resource plugin]] and an [[#SDK|SDK]]. Example of resource providers: AWS resource provider, [[Managing_Datadog_with_Pulumi#Datadog_Resource_Provider|Datadog resource provider]]. <font color=darkkhaki>The providers are generated according to the API schema create by Terraform.</font>
A resource provider consists of a [[#Resource_Plugin|resource plugin]] and an [[#SDK|SDK]]. Example of resource providers: AWS resource provider, [[Managing_Datadog_with_Pulumi#Datadog_Resource_Provider|Datadog resource provider]]. <font color=darkkhaki>The providers are generated according to the API schema create by Terraform. That is what in some platform infrastructure logs it'll show "terraform provider", when in fact it's Pulumi.</font>
===Resource Plugin===
===Resource Plugin===
===SDK===
===SDK===

Revision as of 19:41, 14 January 2022

External

Internal

Overview

Architecture

Pulumi Architecture.png

Resource Provider

A resource provider consists of a resource plugin and an SDK. Example of resource providers: AWS resource provider, Datadog resource provider. The providers are generated according to the API schema create by Terraform. That is what in some platform infrastructure logs it'll show "terraform provider", when in fact it's Pulumi.

Resource Plugin

SDK

Published as a package available from Pulumi registry and/or (?) from the language specify registry like PyPI.

State Management

https://www.pulumi.com/docs/intro/concepts/state/

TO PROCESS: https://www.pulumi.com/docs/intro/concepts/state/

Pulumi State.png

State can be interacted with via both CLI and programming model.

What Happens when Code is Applied to Platform?

The pulumi up command evaluates the program and determines resource updates to make. Part of the update process, pulumi will run the preview step of the update, which computes the minimally disruptive change to achieve the desired state described by the program.