From c36bb3641095285c4437687fdcb841e0b541f5a6 Mon Sep 17 00:00:00 2001
From: Daniel K Lyons <dlyons@nrao.edu>
Date: Thu, 8 Oct 2020 13:50:19 -0600
Subject: [PATCH] Making it through the first request

---
 shared/workspaces/src/workspaces/schema.py   | 6 ++++--
 shared/workspaces/src/workspaces/services.py | 6 ++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/shared/workspaces/src/workspaces/schema.py b/shared/workspaces/src/workspaces/schema.py
index f403943aa..a061380d6 100644
--- a/shared/workspaces/src/workspaces/schema.py
+++ b/shared/workspaces/src/workspaces/schema.py
@@ -156,6 +156,7 @@ class Capability(Base, CapabilityIF):
     name = sa.Column('capability_name', sa.String)
     steps = sa.Column('capability_steps', sa.String)
     max_jobs = sa.Column('max_jobs', sa.Integer)
+    requests = relationship("CapabilityRequest", back_populates='capability')
 
     @classmethod
     def from_file(cls, filename: str):
@@ -225,8 +226,8 @@ class CapabilityRequest(Base, CapabilityRequestIF):
     __tablename__ = 'capability_requests'
     id = sa.Column('capability_request_id', sa.Integer, primary_key=True)
     state = sa.Column('state', sa.String)
-    capability = sa.Column(
-        'capability',
+    capability_id = sa.Column(
+        'capability_id',
         sa.Integer,
         sa.ForeignKey('capabilities.capability_id')
     )
@@ -234,6 +235,7 @@ class CapabilityRequest(Base, CapabilityRequestIF):
     # FIXME: This needs to be changed to properly keep track of product locators.
     #future_products = sa.Column('future_products', sa.String)
     versions = relationship("CapabilityVersion", back_populates="capability_request")
+    capability = relationship(Capability, back_populates='requests')
 
     def update_status(self, status: str):
         # TODO: create field in table
diff --git a/shared/workspaces/src/workspaces/services.py b/shared/workspaces/src/workspaces/services.py
index a0167316f..ba36214f1 100644
--- a/shared/workspaces/src/workspaces/services.py
+++ b/shared/workspaces/src/workspaces/services.py
@@ -133,10 +133,8 @@ class CapabilityInfo(CapabilityInfoIF):
         capability = self.lookup_capability(capability_name)
         request = CapabilityRequest(
             state=RequestState.Ready.name,
-            capability=capability.id,
-            parameters=str(parameters),
-            future_products=str(future_products),
-            versions=str(versions)
+            capability=capability,
+            parameters=str(parameters)
         )
         return self.save_entity(request)
 
-- 
GitLab