Actions
Issue #7230
closedProblem using pbindings with django web server
Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
-
Category:
Installer - Moved to GitHub issues
Sprint/Milestone:
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Version:
Platform Release:
OS:
Triaged:
No
Groomed:
No
Sprint Candidate:
No
Tags:
Dev Environment
Sprint:
Quarter:
Description
Steps to reproduce¶
- Install pulpcore with
-e
. - Run pulp with
django-admin runserver
- Generate some bindings (eg
pbindings pulp_rpm python
)
This will fail most of the time. The problem is that django's webserver autoreloads when it detects changes:
pulp: django.utils.autoreload:INFO: /usr/local/lib/pulp/lib/python3.7/site-packages/pulpcore/__init__.py changed, reloading.
While this reload happens, the bindings tries hit some urls but fails:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (56) Recv failure: Connection reset by peer
http: error: ConnectionError: HTTPConnectionPool(host='localhost', port=24817): Max retries exceeded with url: /pulp/api/v3/status/ (Caused by NewConnectionError('<urllib3.connecti
on.HTTPConnection object at 0x7f10013f8c18>: Failed to establish a new connection: [Errno 111] Connection refused')) while doing a GET request to URL: http://localhost:24817/pulp/a
pi/v3/status/
[error] The spec file is not found: /local/api.json
[error] Check the path of the OpenAPI spec and try again.
I'm not sure what modifies __init__.py
? One solution is to run the django web server with --noreload
but that's rather inconvenient.
Actions
Add a check that server is up during bindings generation
fixes #7230