Глобальная переменная Cloudify

В течение жизненного цикла моего шаблона узла (тип: cloudify.aws.nodes.Instance) я создаю переменную.

Возможно ли в другом шаблоне узла (типа: cloudify.aws.nodes.Instance), который не имеет отношения к первому, получить эту переменную?

Есть ли возможность установки глобальной переменной, доступ к которой возможен на любом этапе жизненного цикла Cloudify?


person Tiago Rolim    schedule 17.01.2016    source источник


Ответы (2)


Начиная с Cloudify 3.3, вы не можете устанавливать глобальные переменные в контексте. Вам нужны отношения между двумя экземплярами узла, чтобы получить доступ к свойствам среды выполнения каждого из них.

Однако внутри схемы вы можете использовать встроенный get_attribute функция в качестве входных данных для сценариев и операций рабочего процесса.

person earthmant    schedule 18.01.2016
comment
Я использую версию Cloudify CLI 3.2.1. Как установить глобальные переменные в контексте? - person Tiago Rolim; 19.01.2016

Вы можете установить «свойство времени выполнения» node_template, к которому можно получить доступ внутри другого node_template, используя: (Предполагая, что вы хотите получить переменную от node1 до node2)

узел2: . . свойства: host_name: {get_attribute: [node1,]}

ПРИМЕЧАНИЕ. Убедитесь, что переменная времени выполнения node1 установлена ​​до того, как этот узел будет настроен, иначе вы получите сообщение об ошибке. Поэтому я бы посоветовал вам создать связь между node2 и node1. То есть node2 зависит_от node1.

person Ashish Singh    schedule 02.10.2017