<div dir="ltr"><div>Thanks for the response. But this is not the answer I was looking for. I am asking how wsgi is implemented in the nova-api server. How to understand these python classes ?</div><div><br></div><div>How does the flow of control go from one module to another ? Specifically wsgi related. Is there any design doc which talks about this ? Are there any resources on the internet along these lines? <br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Sep 27, 2023 at 8:59 PM Stephen Finucane <<a href="mailto:stephenfin@redhat.com">stephenfin@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-5643560899686050992"><div><div>On Wed, 2023-09-27 at 19:41 +0530, Gk Gk wrote:</div><blockquote type="cite" style="margin:0px 0px 0px 0.8ex;border-left:2px solid rgb(114,159,207);padding-left:1ex"><div dir="ltr"><div>Hi All,</div><div><br></div><div>I am new to python coding and trying to understand how wsgi is implemented in nova or glance api servers. What would be the best way to understand the design here ? Are there any useful documents available over the internet to understand these ? I understand the WSGI standard. I can't figure out where the start_response functions are coded in nova-api wsgi implementation. Any useful tips are highly appreciated. Thanks so much for your time.</div><div><br></div><div>Thanks</div><div>Y.G<br></div></div></blockquote><div><br></div><div>Script for WSGI "entry points" are automatically generated by pbr, similar to how standard setuptools builds scripts for console scripts:</div><div><br></div><div><a href="https://github.com/openstack/pbr/blob/d03d617c09e7ba8ddf62d1e53d71685cd708e2da/pbr/packaging.py#L332-L384" target="_blank">https://github.com/openstack/pbr/blob/d03d617c09e7ba8ddf62d1e53d71685cd708e2da/pbr/packaging.py#L332-L384</a></div><div><br></div><div>If you build an sdist or wheel and extract it, you'll see the generated scripts in there. You'll also see then in `bin` if you install e.g. nova and look at the `nova-api` script.</div><div><br></div><div>Stephen</div><div><span></span></div></div>
</div></blockquote></div>