changeset 1564:da11f7b18067

Add an URWEB_PQ_CON environment variable, which overrides the PostgreSQL connection string.
author Austin Seipp <as@hacks.yi.org>
date Fri, 23 Sep 2011 23:11:59 -0500 (2011-09-24)
parents a0caa991cdad
children 9c7b79214cae 0fab80567fa3
files doc/manual.tex src/postgres.sml
diffstat 2 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/doc/manual.tex	Thu Sep 22 09:51:06 2011 -0400
+++ b/doc/manual.tex	Fri Sep 23 23:11:59 2011 -0500
@@ -331,6 +331,7 @@
 \begin{itemize}
   \item \cd{URWEB\_NUM\_THREADS}: alternative to the \cd{-t} command-line argument (currently used only by FastCGI)
   \item \cd{URWEB\_STACK\_SIZE}: size of per-thread stacks, in bytes
+  \item \cd{URWEB\_PQ\_CON}: when using PostgreSQL, overrides the compiled-in connection string
 \end{itemize}
 
 
@@ -2428,4 +2429,4 @@
 The output of the last phase is pretty-printed as C source code and passed to the C compiler.
 
 
-\end{document}
\ No newline at end of file
+\end{document}
--- a/src/postgres.sml	Thu Sep 22 09:51:06 2011 -0400
+++ b/src/postgres.sml	Fri Sep 23 23:11:59 2011 -0500
@@ -476,9 +476,11 @@
 
          string "static void uw_db_init(uw_context ctx) {",
          newline,
-         string "PGconn *conn = PQconnectdb(\"",
+         string "char *env_db_str = getenv(\"URWEB_PQ_CON\");",
+	 newline,
+         string "PGconn *conn = PQconnectdb(env_db_str == NULL ? \"",
          string (String.toCString dbstring),
-         string "\");",
+         string "\" : env_db_str);",
          newline,
          string "if (conn == NULL) uw_error(ctx, FATAL, ",
          string "\"libpq can't allocate a connection.\");",