From f5f10ecd791fad3845a5b2bc3a1607f0ddc15b4a Mon Sep 17 00:00:00 2001
From: Raj Manandhar <manandhar_raj@bah.com>
Date: Wed, 7 Sep 2022 16:50:34 +0000
Subject: [PATCH] [BULL-2001] Update ODIN info in service catalog

---
 scripts/e2e-harness.js                        |   2 +-
 .../PartyBus/SupportedEnvironments.vue        | 104 +++++++++++-------
 2 files changed, 68 insertions(+), 38 deletions(-)

diff --git a/scripts/e2e-harness.js b/scripts/e2e-harness.js
index 9b244d39..2e3a9ab3 100644
--- a/scripts/e2e-harness.js
+++ b/scripts/e2e-harness.js
@@ -28,7 +28,7 @@ try {
   // ensure that the dev server is ready for connections
   const port = await portPromise;
   console.debug(`Waiting for dev server to be ready on port ${port} ...`);
-  await waitOn({ resources: [`tcp:${port}`] });
+  await waitOn({ resources: [`tcp:127.0.0.1:${port}`] });
   console.debug(`Dev server ready`);
 
   // kick off cypress (open/run)
diff --git a/src/components/PartyBus/SupportedEnvironments.vue b/src/components/PartyBus/SupportedEnvironments.vue
index 9863076d..c0216989 100644
--- a/src/components/PartyBus/SupportedEnvironments.vue
+++ b/src/components/PartyBus/SupportedEnvironments.vue
@@ -24,9 +24,14 @@
           >
             <template v-slot:item.devSupported="{ item }">
               <div class="d-flex align-center">
-                <SVGShapes stroke="#FA8022" v-if="item.devSupported === null" />
-                <CheckMark class="check-mark" v-else-if="item.devSupported" />
-                <XMark class="x-mark" v-else />
+                <span>
+                  <SVGShapes
+                    stroke="#FA8022"
+                    v-if="item.devSupported === null"
+                  />
+                  <CheckMark class="check-mark" v-else-if="item.devSupported" />
+                  <XMark class="x-mark" v-else />
+                </span>
                 <div>
                   <div>
                     <p
@@ -45,21 +50,27 @@
               <SVGShapes class="x-mark" v-else />
             </template>
           </v-data-table>
-          <div>
-            <p class="my-0 pt-4 pb-2">
-              <i>*Supported by ODIN</i>
-            </p>
-            <p class="my-0 pb-2">
-              <i>SIPR/JWICS whitelisted services:</i>
-            </p>
-            <ul>
-              <li class="my-0 pb-2">
-                UDL - Applications have the responsibility to develop a system
-                account to pull data in, and push data out.
-              </li>
-              <li class="my-0">C2IMERA</li>
-            </ul>
-          </div>
+          <v-row class="my-0 pt-8 pb-2">
+            <v-col class="col-sm-8">
+              <p>
+                <i>
+                  * PlatformOne and ODIN Programs are working a formal MoA
+                  (Agreement) to leverage each other's environments and
+                  services.
+                </i>
+              </p>
+            </v-col>
+            <v-col class="col-sm-4 d-flex" :class="[odinButtonClass]">
+              <v-btn
+                color="primary"
+                href="https://software.af.mil/dsop/services/odin/"
+                target="_blank"
+                rel="noopener noreferrer"
+              >
+                More ODIN Info
+              </v-btn>
+            </v-col>
+          </v-row>
         </v-tab-item>
       </v-tabs-items>
     </div>
@@ -97,53 +108,69 @@ export default {
       ],
       tableData: [
         {
-          environment: "IL2 (On C1D)",
-          status: "row-item-success",
+          environment: "IL2 (On Cloud One)",
+          status: "row-item-green",
           devSupported: true,
           devMessages: [],
           prodSupported: true,
           prodMessages: [],
         },
         {
-          environment: "IL4 (On C1D)",
-          status: "row-item-warning",
+          environment: "IL4 (On Cloud One)",
+          status: "row-item-orange",
           devSupported: true,
           devMessages: [],
           prodSupported: true,
           prodMessages: [],
         },
         {
-          environment: "IL5 (On C1D)",
-          status: "row-item-warning",
+          environment: "IL5 (On Cloud One)",
+          status: "row-item-orange",
           devSupported: true,
           devMessages: [],
           prodSupported: true,
           prodMessages: [],
         },
         {
-          environment: "S (On S-C2S)*",
-          status: "row-item-error",
+          environment: "S (ODIN IL6)*",
+          status: "row-item-red",
           devSupported: true,
-          devMessages: [],
+          devMessages: [
+            "DevSecOps Pipelines are available at IL6, cATO/CTF would need to be discussed with ODIN PM",
+          ],
           prodSupported: true,
           prodMessages: [],
         },
         {
-          environment: "TS/SCI (On C2S)*",
-          status: "row-item-error",
-          devSupported: null,
+          environment: "TS/SCI (ODIN JWICS)*",
+          status: "row-item-blue",
+          devSupported: true,
           devMessages: [
-            "3Q21 (Gitlab, pipelines) Pilot**",
-            "(Need license purchases for Anchore, Twistlock, Fortify, Elasticsearch)",
-            "Widely supported DSOP environment in 3Q21",
-            "*Note: CTF processes are not yet supported",
+            "DevSecOps Pipelines are available on JWICS, cATO/CTF would need to be discussed with ODIN PM",
           ],
           prodSupported: true,
           prodMessages: [],
         },
       ],
+      odinButtonClass: "justify-end",
     };
   },
+  mounted() {
+    this.handleResize();
+    window.addEventListener("resize", this.handleResize, { passive: true });
+  },
+  beforeDestroy() {
+    if (typeof window === "undefined") return;
+
+    window.removeEventListener("resize", this.handleResize, { passive: true });
+  },
+  methods: {
+    handleResize() {
+      this.odinButtonClass = window.matchMedia("(max-width: 537px)").matches
+        ? "justify-start"
+        : "justify-end";
+    },
+  },
 };
 </script>
 
@@ -159,15 +186,18 @@ export default {
 .small-display {
   max-height: 211px;
 }
-::v-deep .row-item-success {
+::v-deep .row-item-green {
   border-left: solid 12px green;
 }
-::v-deep .row-item-warning {
+::v-deep .row-item-orange {
   border-left: solid 12px orange;
 }
-::v-deep .row-item-error {
+::v-deep .row-item-red {
   border-left: solid 12px red;
 }
+::v-deep .row-item-blue {
+  border-left: solid 12px blue;
+}
 .data-table {
   background-color: transparent !important;
   border-bottom: 1px solid #223340;
-- 
GitLab