Pulumi.yaml

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

External

Internal

Overview

Pulumi.yaml contains the project definition. The name must begin with a capital "P", and both "yaml" and "yaml" extensions are valid.

Example

name: datadog-example
runtime:
  name: python
  options:
    virtualenv: venv
description: An experimental Datadog Pulumi project.
template:
  description: Minimal structure for a Datadog automation infrastructure project.
    config:
      datadog:apiKey:
        description:
        secret: true
      datadog:appKey:
        description:
        secret: true

What does this mean, seems to be related to pulumi new:

name: ${PROJECT}
description: ${DESCRIPTION}

Elements

name

Required attribute that specifies the project name.

runtime

A required map that specifies the language runtime configuration to use for the program. Possible values for name: "python", "nodjs", "go" and "dotnet". Pulumi doesn’t depend on specific versions of these runtimes, and will simply use whatever version you have installed on your machine.

Python Options

virtualenv

A string that specifies the path to a virtual environment, relative to the project directory, to use when running the program. New Python projects created with pulumi new have this option set by default. If not specified, Pulumi will invoke python3 command it finds in PATH, falling back to python. To use a virtual environment without the virtualenv option, run any pulumi commands from an activated virtual environment shell, or if using a tool like Pipenv, prefix any pulumi commands with pipenv run pulumi.

Also see:

Manually Initialize Pulumi Python Virtual Environment

description

template

This section of the configuration file is relevant when a new project is initialized with pulumi new. The initialization code processes the the configuration key listed under template.config and queries for values, interactively. Each configuration key can get a description which will be displayed during the configuration process, a default value and whether it is security sensitive or not, by setting secret to true.