Config autogeneration #42

merged 25 commits into from Feb 22, 2013


None yet

2 participants


COOK-2390 - Recipes to auto-generate many postgresql.conf settings, following "initdb" and "pgtune"

I've written two recipes to auto-generate many postgresql.conf settings. I derived them from the source code of a couple important PostgreSQL utilities:

initdb – initializes the database cluster’s default locale and character set encoding. (See the original initdb source code.)

pgtune – takes the wimpy default postgresql.conf and expands the database
server to be as powerful as the hardware it's being deployed on. (See the original pgtune python script.)

@davidc-donorschoose davidc-donorschoose Careful about Debian minor version numbers 92b9ecc
@davidc-donorschoose davidc-donorschoose Restored helpful commentary to the postgresql.conf template, still us…
…ing the key in node['postgresql']['config'] attributes as before.
@davidc-donorschoose davidc-donorschoose Optional postgresql::config recipe to install useful administration t…
…ools to support postgresql::server
@davidc-donorschoose davidc-donorschoose Corrected postgresql-contrib package name in debian family. 94ac0a8
@davidc-donorschoose davidc-donorschoose Document postgres "encrypted password" for chef-solo 7484863
@davidc-donorschoose davidc-donorschoose Removed obsolete code for installing server_redhat packages with expl…
…icit names.

I suspect this resulted from a merge accident. This code was originally removed
in the 2012-08-06 commit for "[COOK-1532] - specify packages with attributes",
but it reappeared in the 2012-11-05 commit for "Support for postgresql 9.0.x on
opensuse 11.4".

Clearly, the old code badly breaks the redhat family for postgresql-9.X, and
since it probably has no effect in opensuse, I just decided to remove it.
@davidc-donorschoose davidc-donorschoose Run initdb for any platform version on first install d622edf
@davidc-donorschoose davidc-donorschoose Documented optional postgresql::contrib recipe. 3c7b43d
@davidc-donorschoose davidc-donorschoose Removed unnecessary attempt to include_recipe 'postgresql::ppa_pitti_…
@davidc-donorschoose davidc-donorschoose PostgreSQL 9.0 and 9.1 changes to add/remove/modify parameter comment…
@davidc-donorschoose davidc-donorschoose PostgreSQL 9.2 changes to add/remove/modify parameter commentary. 465ab62
@davidc-donorschoose davidc-donorschoose Optional recipe to enable the PGDG yum repo for newer versions of Pos…

This is the same approach used for the PostgreSQL backport PPA repository.
(Note yum_pgdg_postgresql.rb is to redhat as ppa_pitti_postgresql.rb is to debian.)
@davidc-donorschoose davidc-donorschoose Validates attributes related to installing recent PostgreSQL versions
and logs chef WARN messages about probable mistakes and fixes.
I attempted to present the redhat family (yum_pgdg_postgresql.rb) and the
debian family (ppa_pitti_postgresql.rb) correctly, since they use different
naming conventions.
@davidc-donorschoose davidc-donorschoose Merge remote branch 'upstream/master' into track-upstream.
This is opscode release 2.1.0 that was tagged 2012-12-13.
@davidc-donorschoose davidc-donorschoose Another PostgreSQL 9.2 change to add a new parameter commentary. debbc3a
@davidc-donorschoose davidc-donorschoose The redhat family only needs "postgresql92" (not "postgresql92-devel"…
…) for client package list.
@davidc-donorschoose davidc-donorschoose Enable PostgreSQL 9.0 installation from PGDG yum repository. fd2b779
@davidc-donorschoose davidc-donorschoose === REVERT to release v2.1.0 of opscode-cookbooks/postgresql.
(Reverted my COOK-2051 changes between Dec 12 and Jan 6)
@davidc-donorschoose davidc-donorschoose === MERGE from release v2.2.0 of opscode-cookbooks/postgresql.
(Merged my COOK-2230, COOK-2231 and COOK-2233 changes from Jan 15)
@davidc-donorschoose davidc-donorschoose Merge branch 'track_upstream' 1968bc7
@davidc-donorschoose davidc-donorschoose Recipe config_initdb to take locale and timezone settings from system 2647b9b
@davidc-donorschoose davidc-donorschoose Recipe config_pgtune to tune performance for database workload & RAM 18d399f
@davidc-donorschoose davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf 19a261e
@davidc-donorschoose davidc-donorschoose Better example for config_pgtune JSON attributes 98f4a51
@davidc-donorschoose davidc-donorschoose Refactored workhorse methods into libraries/default.rb 160410c
@jtimberman jtimberman merged commit 8518e10 into sous-chefs:master Feb 22, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment