True up.
This commit is contained in:
@@ -112,7 +112,7 @@ class Runner:
|
||||
return False
|
||||
|
||||
def start(self):
|
||||
self.started = datetime.datetime.now()
|
||||
self.started = datetime.datetime.now(datetime.UTC)
|
||||
|
||||
def stop(self):
|
||||
raise RuntimeError("Attempting to stop an abstract class.")
|
||||
|
||||
@@ -244,11 +244,11 @@ class PodmanOrchestrator(Orchestrator):
|
||||
environment=container_env, user="root")
|
||||
con.start()
|
||||
logging.debug(f"Container started for {username} from image {self.opts.image_name}")
|
||||
started_at = datetime.datetime.now()
|
||||
started_at = datetime.datetime.now(datetime.UTC)
|
||||
logging.debug(f"Container state: \n{con.inspect()['State']}")
|
||||
while con.inspect()['State']['Status'] not in ['exited', 'running']:
|
||||
logging.debug("Container state not in ['exited', 'running']")
|
||||
now = datetime.datetime.now()
|
||||
now = datetime.datetime.now(datetime.UTC)
|
||||
if (now - started_at).total_seconds() > 300:
|
||||
con.stop()
|
||||
con.remove()
|
||||
@@ -344,7 +344,7 @@ class PodmanOrchestrator(Orchestrator):
|
||||
|
||||
|
||||
def touch_user_container(self, username: str):
|
||||
self.user_containers[self.get_container_name(username)] = datetime.datetime.now()
|
||||
self.user_containers[self.get_container_name(username)] = datetime.datetime.now(datetime.UTC)
|
||||
|
||||
def start_user_container(self, username: str) -> Container:
|
||||
if not self.podman_user_container_exists(username):
|
||||
@@ -357,7 +357,7 @@ class PodmanOrchestrator(Orchestrator):
|
||||
"""Checks running containers and stops them if they have been running too long."""
|
||||
containers_to_clean = set()
|
||||
for c in self.user_containers:
|
||||
if (datetime.datetime.now() - self.user_containers[c]).total_seconds() > self.opts.container_keepalive:
|
||||
if (datetime.datetime.now(datetime.UTC) - self.user_containers[c]).total_seconds() > self.opts.container_keepalive:
|
||||
logging.debug(f"Container {c} no activity for {self.opts.container_keepalive} seconds. Clearing.")
|
||||
containers_to_clean.add(c)
|
||||
for c in list(containers_to_clean):
|
||||
|
||||
@@ -48,7 +48,7 @@ class Server:
|
||||
self.orchestrator = None
|
||||
self.worker_thread = None
|
||||
self.check_job_queue = True
|
||||
self.last_check_job_queue = datetime.datetime.now()
|
||||
self.last_check_job_queue = datetime.datetime.now(datetime.UTC)
|
||||
self.job_check_interval = 60
|
||||
self.quick_job = False
|
||||
if data_dir:
|
||||
@@ -120,7 +120,7 @@ class Server:
|
||||
|
||||
def ping_job_queue(self):
|
||||
self.check_job_queue = True
|
||||
self.last_check_job_queue = datetime.datetime.now()
|
||||
self.last_check_job_queue = datetime.datetime.now(datetime.UTC)
|
||||
if self.quick_job:
|
||||
logging.debug("Setting the final quick job timer.")
|
||||
self.job_check_interval = 5
|
||||
@@ -220,7 +220,7 @@ class Server:
|
||||
if not self.started:
|
||||
return
|
||||
# Add things to do here:
|
||||
now = datetime.datetime.now()
|
||||
now = datetime.datetime.now(datetime.UTC)
|
||||
if (now - self.last_check_job_queue).total_seconds() > self.job_check_interval:
|
||||
self.ping_job_queue()
|
||||
if (self.orchestrator is not None) and self.orchestrator.started and self.check_job_queue:
|
||||
@@ -239,7 +239,7 @@ class Server:
|
||||
if runner is not None:
|
||||
storage.root.job_queue.remove(jid)
|
||||
job.status = JobStatus.RUNNING
|
||||
job.started_at = datetime.datetime.now()
|
||||
job.started_at = datetime.datetime.now(datetime.UTC)
|
||||
logging.info(f"Started job {job}")
|
||||
else:
|
||||
break
|
||||
|
||||
@@ -67,7 +67,7 @@ class Job(persistent.Persistent):
|
||||
return False
|
||||
if not runner.is_finished():
|
||||
return False
|
||||
job.finished_at = datetime.datetime.now()
|
||||
job.finished_at = datetime.datetime.now(datetime.UTC)
|
||||
job.output = runner.output
|
||||
job.errors = runner.errors
|
||||
job.return_code = runner.return_code
|
||||
@@ -327,8 +327,8 @@ def handle_new_job_post(req: Request, conn: PacketServerConnection, db: ZODB.DB)
|
||||
send_blank_response(conn, req, 500, "unknown server error while queuing job")
|
||||
return
|
||||
if quick:
|
||||
start_time = datetime.datetime.now()
|
||||
now = datetime.datetime.now()
|
||||
start_time = datetime.datetime.now(datetime.UTC)
|
||||
now = datetime.datetime.now(datetime.UTC)
|
||||
job_done = False
|
||||
quick_job = None
|
||||
logging.debug(f"{start_time}: Waiting for a quick job for 30 seconds")
|
||||
@@ -343,7 +343,7 @@ def handle_new_job_post(req: Request, conn: PacketServerConnection, db: ZODB.DB)
|
||||
except:
|
||||
pass
|
||||
time.sleep(1)
|
||||
now = datetime.datetime.now()
|
||||
now = datetime.datetime.now(datetime.UTC)
|
||||
if job_done and (type(quick_job) is Job):
|
||||
send_blank_response(conn, req, 200, job.to_dict(include_data=True))
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user