Closed jonathanunderwood closed 7 years ago
OK, looking through the code, this looks like it might be an undocumented change of syntax, and output lookup no longer requires the ${ .. }
syntax. So Destination: ${ops-manager::ElbDns}
would be replaced by Destination: ops-manager::ElbDns
. Is that correct, and intended behaviour?
If so, the docs need an update, since the docs still detail the ${otherstack::var}
style syntax.
Thanks! I thought I'd caught this reference everywhere, but obviously not. I'll take a look at stacker_blueprints in the morning to make sure the examples match up.
Actually, it seems like this still works in 1.0.0: Destination: ${output ops-manager::ElbDns}
i.e. explicitly specifying the lookup handler.
Moving forward, can you give a steer on what the preferred, and hopefully not broken in the future, preference is? :)
Ah, scratch that, our messages crossed in the ether - I see explcitly stating the output handler is the way forward.
Thanks for the rapid response!
@jonathanunderwood We removed the behavior for output
to be the default behavior. You have to be explicit now.
Haha, more crossed communication! No worries! Also, you should join the slack team - there's quite a bit of talk there :)
Ooh! I had no idea there was a slack channel! What's the name?
@jonathanunderwood https://empire-slack.herokuapp.com/ will let you join the slack team - there's a #stacker channel there.
Moving to the 1.0.0 release leads to breakage for a stack, part of which looks like this:
The blueprint route53.RecordSet has and output added for ElbDns. With 1.0.0a6, there's no problem, but with 1.0.0 stacker bails with:
so it's failing to understand the lookup for ElbDns. In fact its trying to build that stack too early, as it's not resolved the dependency on the "ops-manager" stack. Stacker is using the default AWS provider, as expected.