Python Pulumi: Difference between revisions
Jump to navigation
Jump to search
Line 29: | Line 29: | ||
├─ [[Pulumi_Concepts#Pulumi.yaml|Pulumi.yaml]] | ├─ [[Pulumi_Concepts#Pulumi.yaml|Pulumi.yaml]] | ||
├─ [[Pulumi_Concepts#Stack_Settings_File|Pulumi.my-stack.yaml]] | ├─ [[Pulumi_Concepts#Stack_Settings_File|Pulumi.my-stack.yaml]] | ||
├─ __main__.py | ├─ [[#main_.py|__main__.py]] | ||
├─ [[pip#requirements.txt|requirements.txt]] | ├─ [[pip#requirements.txt|requirements.txt]] | ||
└─ venv | └─ venv |
Revision as of 21:09, 11 January 2022
External
Internal
Pulumi Python SDK
The SDK is available as a pip package.
Python Pulumi and Virtual Environments
A new Python project created with pulumi new
will have a virtual environment created in a venv
directory with required dependencies from requirements.txt
installed in it. This behavior is controlled by the virtualenv
runtime
option in Pulumi.yaml:
runtime:
name: python
options:
virtualenv: venv
virtualenv
is the path, relative to the project directory, to the virtual environment to use.
Pulumi Python Packges
Adding a New Dependency
To install a new dependency in the virtual environment, add the entry to requirements.txt
and run in the project directory:
venv/bin/pip install -r requirements.txt
Project Layout
my-project │ ├─ README.md ├─ Pulumi.yaml ├─ Pulumi.my-stack.yaml ├─ __main__.py ├─ requirements.txt └─ venv ├─ bin │ ├─ pip │ └─ python ├─ include ├─ lib └─ pyvenv.cfg
Also see Pulumi Concepts | Project Layout.
__main__.py
__main__.py
is the Pulumi Python program that defines the stack resources.