Project

Profile

Help

Issue #7230

Updated by daviddavis over 3 years ago

### Steps to reproduce 

 1. Install pulpcore with `-e`. 
 2. Run pulp with `django-admin runserver` 
 3. 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 why pbindings modifies `__init__.py`? One solution is to run the django web server with `--noreload` but that's rather inconvenient.

Back