[openstack-dev] [devstack] Overriding settings file for devstack plugin

Deepak Shetty dpkshetty at gmail.com
Wed Mar 25 07:17:55 UTC 2015


+ Sean Dague

On Wed, Mar 25, 2015 at 12:46 PM, Deepak Shetty <dpkshetty at gmail.com> wrote:

>
>
> On Wed, Mar 25, 2015 at 11:29 AM, Deepak Shetty <dpkshetty at gmail.com>
> wrote:
>
>>
>>
>> On Wed, Mar 25, 2015 at 12:58 AM, Ian Wienand <iwienand at redhat.com>
>> wrote:
>>
>>> On 03/24/2015 03:17 PM, Deepak Shetty wrote:
>>> > For eg: Look at [1]
>>> > [1]
>>> https://github.com/stackforge/devstack-plugin-glusterfs/blob/master/devstack/settings
>>>
>>> > I would like ability to change these while I use the enable_plugin
>>> > apporach to setup devstack w/ GlusterFS per my local glusterfs setup
>>>
>>> So I think the plugin should do
>>>
>>>
>>> CINDER_ENABLED_BACKENDS=${CINDER_ENABLED_BACKENDS:-glusterfs:glusterfs,lvm:lvm1}
>>>
>>> i.e. provide a default only if the variable is unset.
>>>
>>
>> Bah! That was easy, i should have figured that myself :)
>> Thanks for catching that
>>
>>
>>>
>>> This seems like one of those "traps for new players" and is one
>>> concern I have with devstack plugins -- that authors keep having to
>>> find out lessons learned independently.  I have added a note on this
>>> to the documentation in [1].
>>>
>>> -i
>>>
>>> [1] https://review.openstack.org/#/c/167375/
>>>
>>
>> Great, i +1'ed it.
>>
>> Also i posted patch to fix settings file @
>> https://review.openstack.org/167494
>>
>
> Ian,
>    Looks like usign bash default in settings file of plugin is not
> working, in my patch it didn't use glusterfs driver, it used LVM (default)
> I think whats happening here is that by the time settings file is sourced,
> CINDER_ENABLED_BACKENDS is already set to lvm by lib/cinder
> so settings file's default value is never taken
>
> IIUC there are 3 scenarios (taking CINDER_ENABLED_BACKENDS as example var)
> :
>
> 1) localrc doesn't have CINDER_ENABLED_BACKENDS and enable_plugin
>     - Here we want the lib/cinder's default value to be taken
>     - this should work fine
>
> 2) localrc doesn't have CINDER_ENABLED_BACKENDS but has enable_plugin
> glusterfs
>     - Here we want the plugin's default values to be taken, but its not as
> lib/cinder already initialized CINDER_ENABLED_BACKENDS to use lvm backend
>     - Thus broken
>
> 3) localrc has both CINDER_ENABLED_BACKENDS and enable_plugin glusterfs
> specified
>     - Here we want CINDER_ENABLED_BACKENDS present in my localrc to be
> chosen
>     - This will work as by the time settings file is sourced
> CINDER_ENABLED_BACKENDS is already initialised to my value in localrc
>
> So #2 scenario would need some changes in stack.sh handling of plugin code
> ?
>
> thanx,
> deepak
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150325/625d23d6/attachment.html>


More information about the OpenStack-dev mailing list