[devstack] [trove] Enabling other datastores, plugin variable design less than tidy
Hi, I'm doing some work with the Trove Postgres datastore. So the first thing I did was attempt to get Devstack to set up a stack with Postgres instead of Mysql. Reading the docs, it seemed that all I needed to do was this: $ cat local.conf [[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 enable_plugin trove https://opendev.org/openstack/trove Wrong! After watching the plugin try to build a Mysql guest image of version 9.6 (!), I realized that more reading of the plugin source was required. So iteration 2 (or maybe it was 3...lol), of my local.conf is: [[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 SERVICE_TYPE=$TROVE_DATASTORE_TYPE DATASTORE_VERSION=$TROVE_DATASTORE_VERSION VM=/opt/stack/images/ubuntu_postgresql/ubuntu_postgresql enable_plugin trove https://opendev.org/openstack/trove This works. However, it seems like those last 3 variable substitutions should not be required. i.e: - SERVICE_TYPE should not exist (we should use TROVE_DATASTORE_TYPE) - DATASTORE_VERSION should not exist (we should use TROVE_DATASTORE_VERSION) - VM should be constructed out of DISTRO and TROVE_DATASTORE_TYPE Thoughts? regards Mark
Hi Mark, I agree with all your suggestions, do you mind proposing a patch to fix that? Best regards, Lingxian Kong Catalyst Cloud On Tue, Jul 16, 2019 at 11:26 AM Mark Kirkwood < mark.kirkwood@catalyst.net.nz> wrote:
Hi,
I'm doing some work with the Trove Postgres datastore. So the first thing I did was attempt to get Devstack to set up a stack with Postgres instead of Mysql.
Reading the docs, it seemed that all I needed to do was this:
$ cat local.conf
[[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 enable_plugin trove https://opendev.org/openstack/trove
Wrong! After watching the plugin try to build a Mysql guest image of version 9.6 (!), I realized that more reading of the plugin source was required. So iteration 2 (or maybe it was 3...lol), of my local.conf is:
[[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 SERVICE_TYPE=$TROVE_DATASTORE_TYPE DATASTORE_VERSION=$TROVE_DATASTORE_VERSION VM=/opt/stack/images/ubuntu_postgresql/ubuntu_postgresql enable_plugin trove https://opendev.org/openstack/trove
This works. However, it seems like those last 3 variable substitutions should not be required. i.e:
- SERVICE_TYPE should not exist (we should use TROVE_DATASTORE_TYPE)
- DATASTORE_VERSION should not exist (we should use TROVE_DATASTORE_VERSION)
- VM should be constructed out of DISTRO and TROVE_DATASTORE_TYPE
Thoughts?
regards
Mark
Sure, will do. On 17/07/19 6:35 PM, Lingxian Kong wrote:
Hi Mark,
I agree with all your suggestions, do you mind proposing a patch to fix that?
Best regards, Lingxian Kong Catalyst Cloud
On Tue, Jul 16, 2019 at 11:26 AM Mark Kirkwood <mark.kirkwood@catalyst.net.nz <mailto:mark.kirkwood@catalyst.net.nz>> wrote:
Hi,
I'm doing some work with the Trove Postgres datastore. So the first thing I did was attempt to get Devstack to set up a stack with Postgres instead of Mysql.
Reading the docs, it seemed that all I needed to do was this:
$ cat local.conf
[[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 enable_plugin trove https://opendev.org/openstack/trove
Wrong! After watching the plugin try to build a Mysql guest image of version 9.6 (!), I realized that more reading of the plugin source was required. So iteration 2 (or maybe it was 3...lol), of my local.conf is:
[[local|localrc]] ADMIN_PASSWORD=password DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD TROVE_DATASTORE_TYPE=postgresql TROVE_DATASTORE_VERSION=9.6 TROVE_DATASTORE_PACKAGE=postgresql-9.6 SERVICE_TYPE=$TROVE_DATASTORE_TYPE DATASTORE_VERSION=$TROVE_DATASTORE_VERSION VM=/opt/stack/images/ubuntu_postgresql/ubuntu_postgresql enable_plugin trove https://opendev.org/openstack/trove
This works. However, it seems like those last 3 variable substitutions should not be required. i.e:
- SERVICE_TYPE should not exist (we should use TROVE_DATASTORE_TYPE)
- DATASTORE_VERSION should not exist (we should use TROVE_DATASTORE_VERSION)
- VM should be constructed out of DISTRO and TROVE_DATASTORE_TYPE
Thoughts?
regards
Mark
participants (2)
-
Lingxian Kong
-
Mark Kirkwood