This commit is contained in:
2025-09-19 23:01:16 +08:00
parent 2f921b6209
commit 5ad898f97d
8 changed files with 202 additions and 9 deletions

View File

@ -2,7 +2,7 @@ import datetime
from CTFd.models import db
from CTFd.utils import get_config
from ..models import WhaleContainer, WhaleRedirectTemplate
from ..models import WhaleContainer, WhaleContainerLog, WhaleRedirectTemplate
class DBContainer:
@ -14,6 +14,14 @@ class DBContainer:
return container
@staticmethod
def create_container_log(container):
container = WhaleContainerLog(container)
db.session.add(container)
db.session.commit()
return container
@staticmethod
def get_current_containers(user_id):
q = db.session.query(WhaleContainer)
@ -55,6 +63,14 @@ class DBContainer:
)
return q.all()
@staticmethod
def get_all_container_logs_page(page_start, page_end):
q = db.session.query(WhaleContainerLog)
q = q.slice(page_start, page_end)
return q.all()
@staticmethod
def get_all_container():
q = db.session.query(WhaleContainer)
@ -72,6 +88,12 @@ class DBContainer:
q = q.slice(page_start, page_end)
return q.all()
@staticmethod
def get_all_container_logs_count():
q = db.session.query(WhaleContainerLog)
return q.count()
@staticmethod
def get_all_alive_container_count():
timeout = int(get_config("whale:docker_timeout", "3600"))