File size: 1,762 Bytes
3e44c55 9be5d05 8450c71 27be269 9e798a1 b856986 9e798a1 c353d4b 01a1238 ffcfb71 4cedc0e 3e44c55 afbb33a 3e44c55 8450c71 9be5d05 6f4f5f9 9be5d05 8450c71 b856986 8450c71 9be5d05 8450c71 27be269 9e798a1 c353d4b 01a1238 8450c71 9be5d05 8450c71 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
from fastapi import FastAPI, BackgroundTasks
from fastapi.middleware.cors import CORSMiddleware
from tortoise import Tortoise
from .Users.UserRoutes import user_router
from .Webhooks.webhookRoute import webhook_router
from .Subscriptions.SubscriptionRoutes import subscription_router
from .modelInit import TORTOISE_ORM
from .Payments.PaymentsRoutes import payment_router
from .Plans.PlanRoutes import plan_router
from .Portals.PortalRoutes import portal_router
from .Metrics.MetricsRoutes import metrics_router
from .Messages.MessagesRoute import message_router
# from .Subscriptions.background_tasks import check_expiring_subscriptions
import asyncio, os
import logging
import subprocess
logging.basicConfig(level=logging.INFO)
app = FastAPI()
# Configure CORS to allow all origins
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # Allows all origins
allow_credentials=True, # Allows cookies and authentication headers
allow_methods=["*"], # Allows all HTTP methods (GET, POST, PUT, DELETE, etc.)
allow_headers=["*"], # Allows all headers
)
@app.on_event("startup")
async def startup_event():
await Tortoise.init(config=TORTOISE_ORM)
await Tortoise.generate_schemas()
@app.get("/")
async def landing_page():
return {"code": 200, "message": "still running"}
# Include routers
app.include_router(user_router)
app.include_router(webhook_router)
app.include_router(subscription_router)
app.include_router(payment_router)
app.include_router(plan_router)
app.include_router(portal_router)
app.include_router(metrics_router)
app.include_router(message_router)
# if __name__ == "__main__":
# import uvicorn
# # Run the FastAPI app located at App.app:app
# uvicorn.run(app, host="0.0.0.0", port=8000)
|