Назад | Перейти на главную страницу

Как я могу сериализовать postgresql.conf несколько раз во время запуска Chef при использовании поваренной книги postgresql?

Я создаю рецепт Chef, который выполняет несколько функций, в том числе большой импорт данных в базу данных Postgresql.

Я использую супермаркет postgresql Кулинарная книга что позволяет мне создать файл конфигурации через node['postgresql']['config'] атрибуты.

Я хотел бы обновить конфигурацию в postgresql.conf во время выполнения моего рецепта, а именно установить значения, которые обслуживают большой импорт, непосредственно перед тем, как я сделаю этот большой импорт, и впоследствии, когда он будет завершен, обновите эти значения, чтобы они более обслуживались изо дня в день операции (в частности fsync и full_page_writes 'выключен'перед импортом и повернуть те'на' после).

Я создал ресурсы ruby_block, которые позволяют мне обновлять node.default['postgresql']['config']['fsync/full_page_write'] через уведомление непосредственно перед и сразу после импорта, но эти изменения не сериализуются в postgresql.conf, я думаю, потому что postgresql::server_conf уже запущен на этом этапе.

Есть ли способ сообщить поваренной книге postgresql, что я хотел бы иметь node['postgresql']['config'] сериализовано несколько раз во время выполнения?

Ответ нашел сам, суть (https://gist.github.com/mbokman/58b826258d05f1c7bec0) показывает, как я это сделал.