mirror of
				https://github.com/gristlabs/grist-core.git
				synced 2025-06-13 20:53:59 +00:00 
			
		
		
		
	restart: gracefully handle restart failure
In case Grist isn't running with the supervisor (e.g. it's running under nodemon instead via `yarn start`), surface the problem to the frontend.
This commit is contained in:
		
							parent
							
								
									9ae8918156
								
							
						
					
					
						commit
						960f023618
					
				| @ -1886,10 +1886,15 @@ export class FlexServer implements GristServer { | ||||
|           process.send({ action: 'restart' }); | ||||
|         } | ||||
|       }); | ||||
|       // On the topic of http response codes, thus spake MDN:
 | ||||
|       // "409: This response is sent when a request conflicts with the current state of the server."
 | ||||
|       const status = process.send ? 200 : 409; | ||||
|       return resp.status(status).send(); | ||||
| 
 | ||||
|       if(!process.env.GRIST_RUNNING_UNDER_SUPERVISOR) { | ||||
|         // On the topic of http response codes, thus spake MDN:
 | ||||
|         // "409: This response is sent when a request conflicts with the current state of the server."
 | ||||
|         return resp.status(409).send({ | ||||
|           error: "Cannot automatically restart the Grist server to enact changes. Please restart server manually." | ||||
|         }); | ||||
|       } | ||||
|       return resp.status(200).send({ msg: 'ok' }); | ||||
|     })); | ||||
| 
 | ||||
|     // Restrict this endpoint to install admins
 | ||||
|  | ||||
| @ -5,7 +5,8 @@ let grist; | ||||
| function startGrist(newConfig={}) { | ||||
|   // H/T https://stackoverflow.com/a/36995148/11352427
 | ||||
|   grist = spawn('./sandbox/run.sh', { | ||||
|     stdio: ['inherit', 'inherit', 'inherit', 'ipc'] | ||||
|     stdio: ['inherit', 'inherit', 'inherit', 'ipc'], | ||||
|     env: {...process.env, GRIST_RUNNING_UNDER_SUPERVISOR: true} | ||||
|   }); | ||||
|   grist.on('message', function(data) { | ||||
|     if (data.action === 'restart') { | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user