From 1fa9cbc58632c9592acfd23d2fa9f273ccbfffb3 Mon Sep 17 00:00:00 2001
From: Patrick Jentsch <pjentsch@pjentsch-Laptop.local>
Date: Mon, 12 Aug 2019 19:34:41 +0200
Subject: [PATCH] pass job object instead of id.

---
 app/swarm.py | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)

diff --git a/app/swarm.py b/app/swarm.py
index ecd34978..d79c3d53 100644
--- a/app/swarm.py
+++ b/app/swarm.py
@@ -1,5 +1,3 @@
-from sqlalchemy import create_engine
-from sqlalchemy.orm import sessionmaker
 import docker
 import json
 import os
@@ -13,14 +11,13 @@ class Swarm:
         self.docker = docker.from_env()
 
     def init_app(self, app):
-        engine = create_engine(app.config['SQLALCHEMY_DATABASE_URI'])
-        self.Session = sessionmaker(bind=engine)
+        pass
 
     '''
     ' Swarm mode is intendet to run containers which serve a non terminating
     ' service like a webserver. For processing an occuring job it is necessary
-    ' to use a one-shot container, which stops after the wrapped job process is
-    ' completly executed. In order to run these one-shot containers in Swarm
+    ' to use an one-shot container, which stops after the wrapped job process
+    ' is completly executed. In order to run these one-shot containers in Swarm
     ' mode, the following run method is implemented analog to the presented
     ' implementation in Alex Ellis' blog post "One-shot containers on Docker
     ' Swarm"¹.
@@ -28,13 +25,10 @@ class Swarm:
     ' ¹ https://blog.alexellis.io/containers-on-swarm/
     '''
 
-    def run(self, job_id):
+    def run(self, job):
         '''
-        Input is a job id.
+        Input is a job.
         '''
-        from .models import Job
-        session = self.Session()
-        job = session.query(Job).filter_by(id=job_id).first()
         # Prepare argument values needed for the service creation.
         service_args = json.loads(job.service_args)
         _command = (job.service
-- 
GitLab