2016-09-28 3 views
1

Версии:Chef атрибуты повторного использования значения,

  • сервера 12
  • повар клиент 12.13.37

У меня есть файл атрибуты с большим количеством ссылок URL-адрес, но все на тот же сервер. Я хотел бы ссылаться на базовый url, чтобы создать полный путь. Тогда, если исходный сервер изменится, я просто изменяю верхний атрибут.

оригинальный

default['cookbook'][1.1]['zipurl'] = 'http://server/something/version/SERVER.zip' 

планируется

default['cookbook'][1.1]['packagesurl'] = 'http://server/' 

default['cookbook'][1.1]['zipurl'] = '"#{default['cookbook'][version]['packagesurl']}"something/version/SERVER.zip' 

Он собирает и загружает нормально, но повар запустить возвращает следующее:

"#default{['cookbook'][version]['packagesurl']}something/version/server.zip" is not a valid `source` parameter for remote_file. `source` must be an absolute URI or an array of URIs. 

вероятно некоторые основной синтаксис неправильный ...

Я просмотрел атрибуты некоторых кулинарных книг в супермаркетах, и они называют использование полных путей, поэтому это может быть невозможно.

ответ

0

Вам необходимо использовать двойные кавычки (") для интерполяции #{} для работы в Ruby. Также проверьте poise-derived для другого варианта, который может исправить несколько ножек, прежде чем вы их найдете сами.

+0

Большое спасибо coderanger. Я проверю проект, полученный из пуазе, выглядит интересным. – David