<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif; ">
<div>Agreed, any thoughts from the oslo folks on how this could be done (without a major refactoring??). Can it even be done?</div>
<div><br>
</div>
<div>It will be a continuous problem for libraries which want to be integrated with the various openstack projects, especially if those libraries use oslo code, since there is now a weird 'action at a distance' on config shared between the project and the library.
 To me this is one of the pain points in a global CFG object, maybe for things that oslo will 'librarize' those libraries should not have a strong coupling to said global CFG but should prefer a local config 'object' to be passed in (of which the project using
 the oslo library can by default pass in the global CFG object to it, if the project desires to use it this way). </div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>Mark Washenberger <<a href="mailto:mark.washenberger@markwash.net">mark.washenberger@markwash.net</a>><br>
<span style="font-weight:bold">Reply-To: </span>OpenStack Development Mailing List <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Date: </span>Wednesday, August 21, 2013 5:59 PM<br>
<span style="font-weight:bold">To: </span>OpenStack Development Mailing List <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>Re: [openstack-dev] [Oslo.db] Configuration options<br>
</div>
<div><br>
</div>
<div>
<div>
<div dir="ltr">Josh thanks for highlighting this. This example is a good reason why oslo libraries should decouple their useful bits from any configuration assumptions. Much of the code already allows use without requiring you to adopt configuration code. But
 we should make all of it like that.</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Wed, Aug 21, 2013 at 3:42 PM, Joshua Harlow <span dir="ltr">
<<a href="mailto:harlowja@yahoo-inc.com" target="_blank">harlowja@yahoo-inc.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="font-size:14px;font-family:Calibri,sans-serif;word-wrap:break-word">
<div>Another question related to making oslo.db a pypi library and relevant to how taskflow is used.</div>
<div><br>
</div>
<div>Currently taskflow has a persistence layer, its using a copy of oslo-incubator db module to do this.</div>
<div><br>
</div>
<div>That copied code (soon to be library I hope) has the following:</div>
<div><br>
</div>
<div>
<div>db_opts = [</div>
<div>    cfg.StrOpt('backend',</div>
<div>               default='sqlalchemy',</div>
<div>               deprecated_name='db_backend',</div>
<div>               deprecated_group='DEFAULT',</div>
<div>               help='The backend to use for db'),</div>
<div>    cfg.BoolOpt('use_tpool',</div>
<div>                default=False,</div>
<div>                deprecated_name='dbapi_use_tpool',</div>
<div>                deprecated_group='DEFAULT',</div>
<div>                help='Enable the experimental use of thread pooling for '</div>
<div>                     'all DB API calls')</div>
<div>]</div>
</div>
<div><br>
</div>
<div>Now if oslo.db is a library, and taskflow and the integrated project want to use a database backend (potentially a different one) how would that be possible with a single library configuration?</div>
<div><br>
</div>
<div>It would seem like the configuration done like this would not allow for that, and I could see taskflow having local sqlite as its backend (different DB config in this case, same backend), while the integrated project using mysql (for whatever its storing).</div>
<div><br>
</div>
<div>Would something like that be possible? </div>
<div><br>
</div>
<div>Thoughts??</div>
<div><br>
</div>
<div>-josh</div>
<div><br>
</div>
<div><br>
</div>
</div>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</span>
</body>
</html>