【发布时间】:2016-01-17 21:02:54
【问题描述】:
在我的节点模板(类型:cloudify.aws.nodes.Instance)的生命周期中,我创建了一个变量。
有可能在另一个与第一个没有关系的节点模板(类型:cloudify.aws.nodes.Instance)中,获取那个变量?
是否有可能设置一个在 Cloudify 生命周期的任何阶段都可以访问的全局变量?
【问题讨论】:
标签: cloudify
在我的节点模板(类型:cloudify.aws.nodes.Instance)的生命周期中,我创建了一个变量。
有可能在另一个与第一个没有关系的节点模板(类型:cloudify.aws.nodes.Instance)中,获取那个变量?
是否有可能设置一个在 Cloudify 生命周期的任何阶段都可以访问的全局变量?
【问题讨论】:
标签: cloudify
从 Cloudify 3.3 开始,您无法在上下文中设置全局变量。您需要两个节点实例之间的关系才能访问每个节点实例的运行时属性。
但是,在蓝图中,您可以使用 get_attribute intrinsic function 作为脚本和工作流操作的输入。
【讨论】:
您可以设置 node_template 的“运行时属性”,可以使用以下方法在另一个 node_template 中访问它: (假设你想从 node1 获取变量到 node2)
节点2: . . 特性 : host_name : { get_attribute: [node1, ] }
注意:确保在配置此节点之前设置 node1 的运行时变量,否则您将收到错误消息。 因此,我建议您在 node2 和 node1 之间创建一个关系。 也就是 node2 依赖 node1。
【讨论】: