Update.
This commit is contained in:
		
							parent
							
								
									e5d155e124
								
							
						
					
					
						commit
						7e8ae1632d
					
				
							
								
								
									
										10
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								Makefile
									
									
									
									
									
								
							| @ -5,17 +5,21 @@ GUNICORN=./.venv/bin/gunicorn | ||||
| GUNICORN_WORKERS = 1 | ||||
| PORT = 8081 | ||||
| 
 | ||||
| python: | ||||
| 	$(PYTHON) | ||||
| 
 | ||||
| 
 | ||||
| shell: | ||||
| 	.venv/bin/snek shell | ||||
| 
 | ||||
| dump: | ||||
| 	@$(PYTHON) -m snek.dump | ||||
| 
 | ||||
| build: | ||||
| 
 | ||||
| serve: run  | ||||
| 
 | ||||
| 
 | ||||
| run: | ||||
| 	.venv/usr/bin/snek | ||||
| 	.venv/bin/snek serve | ||||
| 	#$(GUNICORN) -w $(GUNICORN_WORKERS) -k aiohttp.worker.GunicornWebWorker snek.gunicorn:app --bind 0.0.0.0:$(PORT) --reload | ||||
| 	 | ||||
| install: ubuntu | ||||
|  | ||||
| @ -1,40 +1,32 @@ | ||||
| import argparse | ||||
| import click | ||||
| import uvloop | ||||
| from aiohttp import web | ||||
| import asyncio | ||||
| from snek.app import Application | ||||
| from IPython import start_ipython | ||||
| 
 | ||||
| @click.group() | ||||
| def cli(): | ||||
|     pass | ||||
| 
 | ||||
| @cli.command() | ||||
| @click.option('--port', default=8081, show_default=True, help='Port to run the application on') | ||||
| @click.option('--host', default='0.0.0.0', show_default=True, help='Host to run the application on') | ||||
| @click.option('--db_path', default='snek.db', show_default=True, help='Database path for the application') | ||||
| def serve(port, host, db_path): | ||||
|     asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) | ||||
|     web.run_app( | ||||
|         Application(db_path=f"sqlite:///{db_path}"), port=port, host=host | ||||
|     ) | ||||
| 
 | ||||
| @cli.command() | ||||
| @click.option('--db_path', default='snek.db', show_default=True, help='Database path for the application') | ||||
| def shell(db_path): | ||||
|     app = Application(db_path=f"sqlite:///{db_path}") | ||||
|     start_ipython(argv=[], user_ns={'app': app}) | ||||
| 
 | ||||
| def main(): | ||||
|      | ||||
|     asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) | ||||
|      | ||||
|     parser = argparse.ArgumentParser(description="Run the web application.") | ||||
|     parser.add_argument( | ||||
|         "--port", | ||||
|         type=int, | ||||
|         default=8081, | ||||
|         help="Port to run the application on (default: 8081)", | ||||
|     ) | ||||
|     parser.add_argument( | ||||
|         "--host", | ||||
|         type=str, | ||||
|         default="0.0.0.0", | ||||
|         help="Host to run the application on (default: 0.0.0.0)", | ||||
|     ) | ||||
|     parser.add_argument( | ||||
|         "--db_path", | ||||
|         type=str, | ||||
|         default="snek.db", | ||||
|         help="Database path for the application (default: sqlite:///snek.db)", | ||||
|     ) | ||||
| 
 | ||||
|     args = parser.parse_args() | ||||
| 
 | ||||
|     web.run_app( | ||||
|         Application(db_path="sqlite:///" + args.db_path), port=args.port, host=args.host | ||||
|     ) | ||||
| 
 | ||||
|     cli() | ||||
| 
 | ||||
| if __name__ == "__main__": | ||||
|     main() | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user