The random provider allows the safe use of randomness in a Pulumi program. This allows you to generate resource properties, such as names, that contain randomness in a way that works with Pulumi's goal state oriented approach. Using randomness as usual would not work well with Pulumi, because by definition, each time the program is evaluated, a new random state would be produced, necessitating re-convergence on the goal state. This provider understands how to work with the Pulumi resource lifecycle to accomplish randomness safely and in a way that works as desired.
This package is available in many languages in the standard packaging formats.
To use from JavaScript or TypeScript in Node.js, install using either npm
:
$ npm install @pulumi/random
or yarn
:
$ yarn add @pulumi/random
To use from Python, install using pip
:
$ pip install pulumi_random
To use from Go, use go get
to grab the latest version of the library
$ go get github.com/pulumi/pulumi-random/sdk/v4/go/...
To use from .NET, install using dotnet add package
:
$ dotnet add package Pulumi.Random
For example, to generate a random password, allocate a RandomPassword
resource
and then use its result
output property (of type Output<string>
) to pass
to another resource.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as random from "@pulumi/random";
const password = new random.RandomPassword("password", {
length: 16,
overrideSpecial: "_%@",
special: true,
});
const example = new aws.rds.Instance("example", {
password: password.result,
});
For further information, please visit the random provider docs or for detailed reference documentation, please visit the API docs.