Python Pulumi: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 32: Line 32:
   ├─ [[pip#requirements.txt|requirements.txt]]
   ├─ [[pip#requirements.txt|requirements.txt]]
   └─ venv
   └─ venv
 
          ├─ bin
          ├─ include
          ├─ lib
          └─ pyvenv.cfg


</font>
</font>

Revision as of 05:53, 11 January 2022

External

Internal

Pulumi Python SDK

https://www.pulumi.com/docs/reference/pkg/python/pulumi/

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

https://www.pulumi.com/docs/reference/pkg/

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
          ├─ include
          ├─ lib
          └─ pyvenv.cfg