Hackers,
Enclosed is a patch to add a -C option to initdb to allow you to easily append configuration directives to the generated postgresql.conf file for use in programmatic generation. In my case, I'd been creating multiple db clusters with a script and would have specific overrides that I needed to make. This patch fell out of the desire to make this a little cleaner. Please review and comment.
From the commit message:
This is a simple mechanism to allow you to provide explicit overrides
to any GUC at initdb time. As a basic example, consider the case
where you are programmatically generating multiple db clusters in
order to test various configurations:
$ for cluster in 1 2 3 4 5 6;
> do initdb -D data$cluster -C "port = 1234$cluster" -C 'max_connections = 10' -C shared_buffers=1M;
> done
A possible future improvement would be to provide some basic
formatting corrections to allow specificications such as -C 'port
1234', -C port=1234, and -C 'port = 1234' to all be ultimately output
as 'port = 1234' in the final output. This would be consistent with
postmaster's parsing.
The -C flag was chosen to be a mnemonic for "config".
Regards,
David
--
David Christensen
End Point Corporation
david(at)endpoint(dot)com