Canvas: Monitor deployment

Change-Id: If5895724025e8e4082a372563c159cbf2216b97f
diff --git a/apps/canvas/back/index.js b/apps/canvas/back/index.js
index 6117e46..ef3449f 100644
--- a/apps/canvas/back/index.js
+++ b/apps/canvas/back/index.js
@@ -199,6 +199,43 @@
         resp.end();
     }
 });
+const handleStatus = (req, resp) => __awaiter(void 0, void 0, void 0, function* () {
+    try {
+        const projectId = Number(req.params["projectId"]);
+        const p = yield db.project.findUnique({
+            where: {
+                id: projectId,
+            },
+            select: {
+                instanceId: true,
+            },
+        });
+        console.log(projectId, p);
+        if (p === null) {
+            resp.status(404);
+            return;
+        }
+        if (p.instanceId == null) {
+            resp.status(404);
+            return;
+        }
+        const r = yield axios_1.default.request({
+            url: `http://appmanager.hgrz-appmanager.svc.cluster.local/api/tasks/${p.instanceId}`,
+            method: "get",
+        });
+        resp.status(r.status);
+        if (r.status === 200) {
+            resp.write(JSON.stringify(r.data));
+        }
+    }
+    catch (e) {
+        console.log(e);
+        resp.status(500);
+    }
+    finally {
+        resp.end();
+    }
+});
 function start() {
     return __awaiter(this, void 0, void 0, function* () {
         yield db.$connect();
@@ -207,6 +244,7 @@
         app.post("/api/project/:projectId/saved", handleSave);
         app.get("/api/project/:projectId/saved", handleSavedGet);
         app.post("/api/project/:projectId/deploy", handleDeploy);
+        app.get("/api/project/:projectId/status", handleStatus);
         app.get("/api/project", handleProjectAll);
         app.post("/api/project", handleProjectCreate);
         app.use("/", express_1.default.static("../front/dist"));