2016-08-05 15 views
0

Секция пользовательских данных в HOT предназначена для запуска команды оболочки на новом созданном экземпляре nova, однако я хочу запустить команду оболочки, которая запускает команду создания теплового стека, когда вы выполняете команду «создать тепловой стек».Как выполнить команду локальной оболочки в файле шаблона OpenStack HOT?

Но после того, как я прочитал документ OpenStack HOT, я не нашел синтаксиса для его поддержки.

+0

Вы можете достичь этого, имея свой собственный плагин тепла и вызывать его, вызывая что-то вроде OS :: Gemfield :: RunShellCmd. –

+0

Это будет проблемой при развертывании файла шаблона HOT на другой хост OpenStack из-за отсутствия плагина. – gemfield

ответ

1

Синтаксис для поддержки этого не существует. Шаблоны тепла обрабатываются на сервере. Также нет гарантии, что в отправляющей системе даже есть стандартная оболочка Unix (шаблоны тепла могут быть отправлены через веб-браузер или с помощью инструментов, отличных от CLI heat).

Если ваш рабочий процесс развертывания требует согласования локальных действий с развертыванием Heat, лучше всего использовать другой инструмент (Ansible? Сценарий оболочки?) Для автоматизации рабочего процесса.

Альтернативой может быть передача тепла (или ваших виртуальных машин) в вашу локальную систему с использованием какого-либо веб-крючка и локального веб-сервиса, который будет получать сигнал и выполнять любое действие.