加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
ping.py 818 Bytes
一键复制 编辑 原始数据 按行查看 历史
"""
Script for checking that a database server is available.
Essentially a cross-platform, database agnostic mysqladmin.
"""
import time
from sqlalchemy import create_engine
from sqlalchemy.engine.url import make_url
from CTFd.config import Config
url = make_url(Config.DATABASE_URL)
# Ignore sqlite databases
if url.drivername.startswith("sqlite"):
exit(0)
# Null out the database so raw_connection doesnt error if it doesnt exist
# CTFd will create the database if it doesnt exist
url.database = None
# Wait for the database server to be available
engine = create_engine(url)
print(f"Waiting for {url} to be ready")
while True:
try:
engine.raw_connection()
break
except Exception:
print(".", end="", flush=True)
time.sleep(1)
print(f"{url} is ready")
time.sleep(1)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化