[Openstack-devel] Bug#687311: Bug#687311: Bug#687311: Bug#687311: Diff for keystone 2012.1.1-7, trying to fix RC bug #687311
Thomas Goirand
zigo at debian.org
Wed Sep 19 07:52:53 UTC 2012
Hi,
Thanks *A LOT* for reviewing my work, this was much needed as we are
approaching the release date for Wheezy, and that I asked for such review.
On 09/19/2012 10:35 AM, YunQiang Su wrote:
> Two questions about postinst:
>
> 1. if [ $RET = "sqlite3" ]
> then
> dbc_name="keystone.sqlite"
> db_set keystone/db/dbname $dbc_name
> fi
> If user modified /etc/keystone.conf manually to change the path of
> sqlite database file,
> while this paragraph will change it to the default.
First, this was there before my changes. So it's not me who did it, I
just didn't correct it.
Currently, if you change the path in /etc/keystone/keystone.conf (and
not /etc/keystone.conf), then it will stay. The only thing that is
forced is the filename of the db.
Anyway, I think you are right, so I removed that part.
> 2. if [ "$dbc_dbtype" = "mysql" ] || [ "$dbc_dbtype" = "pgsql" ] ; then
> [ -n "$dbc_dbport" ]&& dbport=:$dbc_dbport
> SQL_CONNECTION="$dbc_dbtype://$dbc_dbuser:$dbc_dbpass@${dbc_dbserver:-localhost}$dbport/$dbc_dbname"
> else
> SQL_CONNECTION="sqlite:///$dbc_basepath/$dbc_dbname"
> fi
>
> The problem similar with above one, if user changed the line
> "connection=" to mssql or oracle or db2 etc,
> this will override the users config.
Keystone only supports sqlite3, mysql or pgsql. Unless I'm mistaking,
these are the only valid values. So I believe the above is ok.
> Maybe, now dbc or something else cannot support msssql, oracle or
> db2 etc, but this is still a bad idea to
> override the users config.
The idea is to overwrite anything that is a wrong configuration. The
most easy way is to do it using sqlite. I don't think there's any wrong
doing here (correct me if you still think there is).
On 09/19/2012 10:44 AM, YunQiang Su wrote:
> Maybe what we should do is to:
>
> Init /etc/keystone/keystone.conf from example, and debconf only when
> the first time,
> etc if /etc/keystone/keystone.conf doesn't exist.
>
> Do nothing if /etc/keystone/keystone.conf is there.
>
> If user want to reinit the configuration with debconf, then ask them
to delete
> /etc/keystone/keystone.conf first, and reinstall this package, or,
> give him/her an option in debconf.
We can't do that. This isn't what the policy say about debconf handling.
It has to read what the user wrote, and deal with it. I think anyway
that deleting the keystone.conf just because you want to reconfigure the
db thing is a radical move, and not convenient (you may well have
changed other things in this configuration file which you want to keep).
Thomas
More information about the Openstack-devel
mailing list