Quoting marcandre.lur...@redhat.com (2015-09-11 13:53:38) > From: Marc-André Lureau <marcandre.lur...@redhat.com> > > Having a environment variable allows to override default configuration > path, useful for testing. Note that this can't easily be an argument, > since loading config is done before parsing the arguments.
I'd rather this be fixed by adding a config_parse_early() prior config_load() to handle a command-line specification of config file path, but I don't object to an environment variable to specify it in lieu of that so: > > Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> Reviewed-by: Michael Roth <mdr...@linux.vnet.ibm.com> > --- > qga/main.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/qga/main.c b/qga/main.c > index d8e063a..18e1e1d 100644 > --- a/qga/main.c > +++ b/qga/main.c > @@ -945,10 +945,11 @@ static void config_load(GAConfig *config) > { > GError *gerr = NULL; > GKeyFile *keyfile; > + const char *conf = g_getenv("QGA_CONF") ?: QGA_CONF_DEFAULT; > > /* read system config */ > keyfile = g_key_file_new(); > - if (!g_key_file_load_from_file(keyfile, QGA_CONF_DEFAULT, 0, &gerr)) { > + if (!g_key_file_load_from_file(keyfile, conf, 0, &gerr)) { > goto end; > } > if (g_key_file_has_key(keyfile, "general", "daemon", NULL)) { > -- > 2.4.3 >