Paste #563919

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 <ram___> Hi. For testing purpose I developed a simple charm using the shell script  to modify the cinder configuration file for the post-deployment of OpenStack. cinder configuration modified. But I am saw some error in charm log. pasted information of my issue http://paste.openstack.org/show/563408/


<andrey-mp> ram___: we made scaleio-openstack as subordinate for cinder and pass additional configuration there.

<andrey-mp> ram___: which config-changed did fail? from cinder or from cinder-xtremio?

<ram___> andrey-mp: Hi. cinder-xtremio config-changed failed.

<andrey-mp> ram___: looks like it tries to modify cinder.conf?
<ram___> andrey-mp: Yes.

 <ram___> andrey-mp: It modified cinder.conf  with the provided volume-driver. But after the change I made cinder.conf immutable to don't regenerate by JUJU with the default values.
<andrey-mp> ram___: your charm should pass config data to the relation instead of touching cinder.conf

 <andrey-mp> we did it for scaleio by this way - https://github.com/emccode/juju-scaleio/blob/master/trusty/scaleio-openstack/hooks/common-cinder#L58

<ram___> andrey-mp :  you passed config data to relation instead of cinder.conf for scaleio?

 <andrey-mp> yeah

 <ram___> andrey-mp :  Is there any reference docs for  passing config data to relation to get the better understanding. Because I am new to write juju charms.
 <andrey-mp> I don't know about this feature - we just reversed cinder code and tried

<ram___> andrey-mp : Ok thank you. I have a question. If we pass config data to a relation then what it will exactly do? It will change cinder configuration internally without regenerating cinder.conf by juju with default values?

 <andrey-mp> here data will be catch by SubordinateConfigContext. it will generate config from template https://github.com/openstack/charm-cinder/blob/master/templates/mitaka/cinder.conf

 <andrey-mp> and it will include https://github.com/openstack/charm-cinder/blob/master/templates/parts/backends

 <andrey-mp> section data will be filled by SubordinateConfigCotext from relation data.


Based on andrey-mp information, I created a cinder-storageDriver charm using Shell script which will pass external config data to relation instead of cinder.conf directly. This is the standard way. It is working fine for us. We want to certify and integrate our charm to Autopilot. But I have a question. How much compatible our created cinder-storageDriver charm with Autopilot?