[all] No documentation for the API wsgi entry point of project APIs
Hi, As we're supposed to move away from uwsgi's config: wsgi-script=/usr/bin/<something> I'm switching all (-most every) Debian package to: module=<something-else> in the shipped <project>-api-uwsgi.ini file. In some case, that's fine, the release note tells where to find it. However, in a general way, it's documented nowhere but in the release note. In some cases, like for Magnum, the release note only tells that the wsgi-script is deprecated, without even telling to what I should switch. I've double-guessed that it should be: magnum.wsgi.api:application as this is what devstack/lib/magnum is doing. But I'm not sure, and I'll have to check for that fact after my package is built. Someone told me on IRC that I was right, and that this path is probably the "standard" for all projects. One shouldn't have to hunt for this kind of information. Could we agree on a *STANDARD* way to document this in every project? Or at least document somewhere OpenStack wide, that the standard path *must* be: magnum.wsgi.api:application and that distros and operators should expect it? Or is it that I missed the information and that's already documented? If that's the case, where is it? Cheers, Thomas Goirand (zigo)
On 12/9/2025 5:15 pm, Thomas Goirand wrote:
One shouldn't have to hunt for this kind of information. Could we agree on a *STANDARD* way to document this in every project? Or at least document somewhere OpenStack wide, that the standard path *must* be:
magnum.wsgi.api:application
Sorry for the lack of documentation. From a newish project maintainer, I am unaware of the level of documentation needed to be provided to packages. Happy to follow a documentation standard, even an implementation standard so I don't need to make decisions on what to call it. Regards, Jake
On 13/9/2025 10:19 am, Jake Yip wrote:
Happy to follow a documentation standard, even an implementation standard so I don't need to make decisions on what to call it.
Update: I just remembered it was a TC goal [1], which states modules should be <service>.wsgi.<server>:application which is why magnum calls it magnum.wsgi.api:application Only the <server> part is arbitrary. I will get the reno updated. [1] https://governance.openstack.org/tc/goals/completed/2025.2/migrate-from-wsgi... P.S: links to https://governance.openstack.org/tc/goals/proposed/migrate-from-wsgi-scripts... now shows a 404 due to the goal moving to /completed. It may be good to have a redirect, or maybe a permanent url for git commit messages.
On Sep 13, 2025 02:48, Jake Yip <jake.yip@ardc.edu.au> wrote:
On 13/9/2025 10:19 am, Jake Yip wrote:
Happy to follow a documentation standard, even an implementation
standard so I don't need to make decisions on what to call it.
Update: I just remembered it was a TC goal [1], which states modules
should be
<service>.wsgi.<server>:application
which is why magnum calls it
magnum.wsgi.api:application
Thanks for the pointer which I obviously missed. Thomas
Here's the information for Ironic: https://docs.openstack.org/ironic/latest/install/install.html#using-uwsgi -- I made sure it was updated when we landed the wsgi changes. I'll add to my (admittedly long) list a task to add an example config to the Ironic repo. -JayF On 9/12/25 12:15 AM, Thomas Goirand wrote:
Hi,
As we're supposed to move away from uwsgi's config: wsgi-script=/usr/bin/<something>
I'm switching all (-most every) Debian package to: module=<something-else>
in the shipped <project>-api-uwsgi.ini file. In some case, that's fine, the release note tells where to find it. However, in a general way, it's documented nowhere but in the release note. In some cases, like for Magnum, the release note only tells that the wsgi-script is deprecated, without even telling to what I should switch. I've double-guessed that it should be:
magnum.wsgi.api:application
as this is what devstack/lib/magnum is doing. But I'm not sure, and I'll have to check for that fact after my package is built. Someone told me on IRC that I was right, and that this path is probably the "standard" for all projects.
One shouldn't have to hunt for this kind of information. Could we agree on a *STANDARD* way to document this in every project? Or at least document somewhere OpenStack wide, that the standard path *must* be:
magnum.wsgi.api:application
and that distros and operators should expect it? Or is it that I missed the information and that's already documented? If that's the case, where is it?
Cheers,
Thomas Goirand (zigo)
participants (4)
-
Jake Yip
-
Jay Faulkner
-
Thomas Goirand
-
thomas@goirand.fr