powerful-finland-22510
09/18/2023, 1:31 PMcuddly-nightfall-71097
09/18/2023, 1:34 PMpowerful-finland-22510
09/18/2023, 1:34 PMcuddly-nightfall-71097
09/18/2023, 1:35 PMpulumi.*
to create resources) therepowerful-finland-22510
09/18/2023, 1:39 PMcuddly-nightfall-71097
09/18/2023, 1:39 PMPULUMI_PROJECT_NAME = "my-service"
PULUMI_BACKEND = "s3://<bucket>/<path>"
PULUMI_SECRETS_PROVIDER = "<awskms://alias/><pulumi-key>?region=eu-north-1"
def runner(count: int):
for i in range(count):
ec2.Instance(f"instance-{i}")
...
def deploy_runners(name: str, count: int, config: dict):
stack = create_or_select_stack(
stack_name=name,
project_name=PULUMI_PROJECT_NAME,
program=partial(runner, count),
opts=LocalWorkspaceOptions(
project_settings=ProjectSettings(
name=PULUMI_PROJECT_NAME,
runtime="python",
backend=ProjectBackend(PULUMI_BACKEND),
),
secrets_provider=PULUMI_SECRETS_PROVIDER,
stack_settings={
name: StackSettings(secrets_provider=PULUMI_SECRETS_PROVIDER)
},
),
)
stack.set_all_config(
{f"{PULUMI_PROJECT_NAME}:{k}": ConfigValue(v) for k, v in config.items()}
)
result = stack.up(on_output=print, color="always")
powerful-finland-22510
09/18/2023, 2:05 PMcuddly-nightfall-71097
09/19/2023, 3:48 AMpulumi up
. When using automation you don't run pulumi directly. You run your script.powerful-finland-22510
09/19/2023, 11:20 AM