[Crowbar] postgresql support

Ralf Haferkamp rhafer at suse.de
Wed Mar 28 09:12:17 CDT 2012


Hi,

I am currently trying to figure out ways for adding support to deploy 
openstack with PostgreSQL used as the database for keystone, glance etc.
For that I created a basic PostgreSQL barclamp (based on the postgresql 
cookbook in https://github.com/opscode/cookbooks).

However, I'd like to avoid bloating the barclamps that currently use the 
mysql_database chef-resource for e.g. creating databases (such as 
keystone, glance, nove and dashboard) with too many 
    if node[:keystone][:sql_engine] == "postgresql"
branches to call the new postgresql_database chef-resource I created.

One way to achieve that seems to be to create a new resource say 
"openstack_database" that provides the needed actions (e.g. create_db, 
create_user) and create two separate providers for that resource
(openstack_postgresqldb and openstack_mysqldb), which would just map to 
the specific resources from the mysql and postgresql cookbooks. That way
it should be possible to make large parts of the current mysql specific 
code independent of the actually used database implementation by 
replacing the mysql_database invocations with calls to openstack_database 
(+ setting the "provider" attribute to the correct implementation). Does 
that make sense? Are there better ways to achieve this?

regards,
	Ralf




More information about the Crowbar mailing list