add demo wsgi project (server + app)
This commit is contained in:
		
							parent
							
								
									c4459866c8
								
							
						
					
					
						commit
						265048e76a
					
				
					 5 changed files with 43 additions and 0 deletions
				
			
		
							
								
								
									
										8
									
								
								demo/app.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								demo/app.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| # py-scopes/demo/app.py | ||||
| 
 | ||||
| def demo_app(environ, start_response): | ||||
|     status = '200 OK' | ||||
|     headers = [("Content-type", "text/plain; charset=utf-8")] | ||||
|     start_response(status, headers) | ||||
|     return ['Hello World'.encode()] | ||||
| 
 | ||||
							
								
								
									
										9
									
								
								demo/config.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								demo/config.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | |||
| # py-scopes/demo/config.py | ||||
| 
 | ||||
| from dotenv import load_dotenv | ||||
| from os import getenv | ||||
| 
 | ||||
| load_dotenv() | ||||
| 
 | ||||
| server_port = getenv('SERVER_PORT', '8999') | ||||
| 
 | ||||
							
								
								
									
										9
									
								
								demo/main.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								demo/main.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | |||
| # py-scopes/demo/main.py | ||||
| 
 | ||||
| import config | ||||
| 
 | ||||
| from app import demo_app | ||||
| import server | ||||
| 
 | ||||
| server.run(demo_app, config) | ||||
| 
 | ||||
							
								
								
									
										12
									
								
								demo/server.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								demo/server.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| # py-scopes/demo/server.py | ||||
| 
 | ||||
| from wsgiref.simple_server import make_server | ||||
| 
 | ||||
| def run(app, config): | ||||
|     port = int(config.server_port) | ||||
|     with make_server('', port, app) as httpd: | ||||
|         print(f'Serving on port {port}.') | ||||
|         try: | ||||
|             httpd.serve_forever() | ||||
|         except KeyboardInterrupt: | ||||
|             print('Shutting down.') | ||||
|  | @ -19,4 +19,9 @@ dependencies = [ | |||
| ] | ||||
| 
 | ||||
| [project.optional-dependencies] | ||||
| demo = ["python-dotenv"] | ||||
| test = ["pytest"] | ||||
| 
 | ||||
| [tool.setuptools] | ||||
| packages = ["scopes"] | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue