https://pulumi.com logo
#python
Title
# python
n

numerous-leather-71223

11/21/2023, 5:32 PM
Howdy folks, I'm looking for a recommendation. I've found some complex dependencies in my deployment environment that I'm trying to solve for. I've bunched things together into three "stages" where each stage depends on the previous to be completed before attempting to solve for the next stage. Specifically, I need to make an AWS VPC in Stage 1, then provision subnets in Stage 2 (I need values for the IPv6 prefix assigned to the VPC in order to calculate the CIDRs and deploy the subnets), and then everything else in Stage 3. Is there a method to do this within my Python modules that I'm missing or does it basically become three stacks?
b

bumpy-glass-30283

11/21/2023, 10:26 PM
So in essence you need some kind of wait command, to get back the deployed properties of the vnet? not sure if pulumi has the
wait=true
switch which awscli and ansible aws modules have (which make the calls essentially sync calls). If not, then you have 2 options imo: 1: different projects, and use project reference to get the outputs 2 (a bit hacky): do some loop, to wait for the required property to be not None or empty string or something like that. I'm using Azure, but had to revert to a similar workaround, because after creating an IP address resource did not return the assigned IP (it returned null), but running a
get_
function on the same resource returned the IP after deployment.
n

numerous-leather-71223

11/27/2023, 7:46 PM
That's the exact problem I'm trying to solve. When I create a VPC AWS assigns a IPv6 block to it. I need that for later calls, but it's unclear how to get that in a blocking way