Хорошо, чтение выходов локального состояния также возможно. Войдите в систему и создайте первый стек:
$ pulumi logout
$ pulumi login --local
$ mkdrir pulumi-infra-az
$ cd pulumi-infra-az
$ pulumi stack init pulumi-infra-az-dev
Примените его:
$ pulumi up
...
Outputs:
pulumi-private-subnet-ids: [
[0]: "subnet-0e8eb4cd276720a51"
[1]: "subnet-0447d96727f6fdf62"
[2]: "subnet-02e0e1d44183f7733"
]
pulumi-public-subnet-ids : [
[0]: "subnet-00b1c052633b93f73"
[1]: "subnet-0333dd2abc409acb7"
[2]: "subnet-006e949371228f8bd"
]
pulumi-vpc-id : "vpc-0e59fc2d7df06bac0"
Resources:
+ 25 created
...
Теперь создайте новый каталог и стек:
$ mkdir pulumi-ecs-fargate
$ cd pulumi-ecs-fargate
$ pulumi stack init pulumi-ecs-fargate-dev
Имя стека должно быть diffent. А потом прочитайте выводы в новом:
...
# Reading local state
infra = pulumi.StackReference(f"pulumi-infra-az-dev")
# Read back the default VPC and public subnets, which we will use.
pulumi_vpc = infra.get_output("pulumi-vpc-id")
pulumi_private_subnets = infra.get_output("pulumi-private-subnet-ids")
pulumi_public_subnets = infra.get_output("pulumi-public-subnet-ids")
...
Очень печально, что у Pulumi нет хороших руководств / примеров.