添加代码
This commit is contained in:
parent
545fd6554d
commit
91c977fc16
6
app.py
6
app.py
|
|
@ -5,4 +5,10 @@
|
||||||
# @File :app.py
|
# @File :app.py
|
||||||
from fastapi import FastAPI
|
from fastapi import FastAPI
|
||||||
from router import routers
|
from router import routers
|
||||||
|
from fastapi import status
|
||||||
|
from fastapi.responses import JSONResponse
|
||||||
|
from fastapi.encoders import jsonable_encoder
|
||||||
|
import uvicorn
|
||||||
|
from config import Debug
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,3 +3,22 @@
|
||||||
# @Email :508737091@qq.com
|
# @Email :508737091@qq.com
|
||||||
# @Author :qiangyanwen
|
# @Author :qiangyanwen
|
||||||
# @File :__init__.py.py
|
# @File :__init__.py.py
|
||||||
|
import yaml, os
|
||||||
|
from yaml import CLoader as Loader
|
||||||
|
|
||||||
|
from utils.system import system
|
||||||
|
from entity.setting_entity import SettingModel
|
||||||
|
from config.log import logger
|
||||||
|
Debug = os.getenv("DEBUG", True)
|
||||||
|
platforms = ["darwin", "win32", "win64"]
|
||||||
|
if system in platforms:
|
||||||
|
# 启动开发环境
|
||||||
|
logger.info("start the automation service development environment")
|
||||||
|
config_file = "application_dev.yaml"
|
||||||
|
else:
|
||||||
|
# 启动生产环境
|
||||||
|
logger.info("start the automation service production environment")
|
||||||
|
config_file = "application_prod.yaml"
|
||||||
|
logger.info("loading environment configuration file")
|
||||||
|
project_path = os.path.dirname(os.path.realpath(__file__))
|
||||||
|
settings = SettingModel(**yaml.load(open(os.path.join(project_path, config_file)), Loader))
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
# _*_ coding: utf-8 _*_
|
||||||
|
# @Time :2022/5/26 09:31
|
||||||
|
# @Email :508737091@qq.com
|
||||||
|
# @Author :qiangyanwen
|
||||||
|
# @File :__init__.py.py
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
"""
|
||||||
|
-------------------------------------------------
|
||||||
|
File Name: setting_entity
|
||||||
|
Description :
|
||||||
|
Author : qiangyanwen
|
||||||
|
date: 2022/1/14
|
||||||
|
-------------------------------------------------
|
||||||
|
"""
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
from pydantic import BaseModel
|
||||||
|
from typing import List
|
||||||
|
|
||||||
|
|
||||||
|
class MysqlModel(BaseModel):
|
||||||
|
USERNAME: str
|
||||||
|
PASSWORD: str
|
||||||
|
HOST: str
|
||||||
|
PORT: int
|
||||||
|
DATABASE: str
|
||||||
|
|
||||||
|
|
||||||
|
class RedisModel(BaseModel):
|
||||||
|
HOST: str
|
||||||
|
PASSWORD: str
|
||||||
|
DB: int
|
||||||
|
PORT: int
|
||||||
|
TIMEOUT: int
|
||||||
|
|
||||||
|
|
||||||
|
class ProjectModel(BaseModel):
|
||||||
|
DEBUG: bool
|
||||||
|
PORT: int
|
||||||
|
BASE_PATH: str
|
||||||
|
|
||||||
|
|
||||||
|
class DataBaseModel(BaseModel):
|
||||||
|
Mysql: MysqlModel
|
||||||
|
|
||||||
|
|
||||||
|
class SwaggerModel(BaseModel):
|
||||||
|
TITLE: str
|
||||||
|
DESCRIPTION: str
|
||||||
|
DOCS_URL: str
|
||||||
|
REDOC_URL: str
|
||||||
|
|
||||||
|
|
||||||
|
class AccessModel(BaseModel):
|
||||||
|
ACCESS_TOKEN_EXPIRE_MINUTES: int
|
||||||
|
ALGORITHM: str
|
||||||
|
SECRET_KEY: str
|
||||||
|
|
||||||
|
|
||||||
|
class SettingModel(BaseModel):
|
||||||
|
PROJECT: ProjectModel
|
||||||
|
SWAGGER: SwaggerModel
|
||||||
|
ACCESS: AccessModel
|
||||||
|
DATABASE: DataBaseModel
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
# _*_ coding: utf-8 _*_
|
||||||
|
# @Time :2022/5/26 09:33
|
||||||
|
# @Email :508737091@qq.com
|
||||||
|
# @Author :qiangyanwen
|
||||||
|
# @File :system.py
|
||||||
|
import socket
|
||||||
|
import sys
|
||||||
|
from _yaml import yaml
|
||||||
|
|
||||||
|
|
||||||
|
def get_host_ip():
|
||||||
|
"""
|
||||||
|
查询本机ip地址
|
||||||
|
:return:
|
||||||
|
"""
|
||||||
|
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||||
|
try:
|
||||||
|
s.connect(('8.8.8.8', 80))
|
||||||
|
ip = s.getsockname()[0]
|
||||||
|
finally:
|
||||||
|
s.close()
|
||||||
|
|
||||||
|
return ip
|
||||||
|
|
||||||
|
|
||||||
|
def current_platform():
|
||||||
|
return sys.platform
|
||||||
|
|
||||||
|
|
||||||
|
system = current_platform()
|
||||||
|
host = get_host_ip()
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = ["system", "host"]
|
||||||
Loading…
Reference in New Issue