From 069d716a4266a3639f5e7dc15002142c7d4f62e6 Mon Sep 17 00:00:00 2001
From: Alexandre MERLIN <alexandre.merlin@inria.fr>
Date: Mon, 16 Nov 2020 10:45:26 +0100
Subject: [PATCH] Add group_storage in servers

---
 data/grid5000/sites/lille/servers/granche-srv1.json  | 5 +++++
 data/grid5000/sites/lille/servers/granche-srv2.json  | 5 +++++
 data/grid5000/sites/luxembourg/servers/srv-data.json | 5 +++++
 data/grid5000/sites/lyon/servers/alcor.json          | 5 +++++
 data/grid5000/sites/nancy/servers/talc-data2.json    | 5 +++++
 data/grid5000/sites/rennes/servers/srv-bigdata.json  | 5 +++++
 data/grid5000/sites/sophia/servers/srv-data.json     | 5 +++++
 input/grid5000/sites/lille/servers/physical.yaml     | 8 ++++++++
 input/grid5000/sites/luxembourg/servers/servers.yaml | 4 ++++
 input/grid5000/sites/lyon/servers/servers.yaml       | 4 ++++
 input/grid5000/sites/nancy/servers/servers.yaml      | 4 ++++
 input/grid5000/sites/rennes/servers/servers.yaml     | 4 ++++
 input/grid5000/sites/sophia/servers/physical.yaml    | 4 ++++
 lib/refrepo/valid/input/schemas/schema-site.yaml     | 7 +++++++
 14 files changed, 70 insertions(+)

diff --git a/data/grid5000/sites/lille/servers/granche-srv1.json b/data/grid5000/sites/lille/servers/granche-srv1.json
index 768a220bcc6..3961e0e5dc6 100644
--- a/data/grid5000/sites/lille/servers/granche-srv1.json
+++ b/data/grid5000/sites/lille/servers/granche-srv1.json
@@ -2,6 +2,11 @@
   "alias": [
     "storage1"
   ],
+  "group_storage": {
+    "name": "storage1",
+    "rate": 50000000000,
+    "size": 90000000000000
+  },
   "kind": "physical",
   "monitoring": {
     "metric": "power",
diff --git a/data/grid5000/sites/lille/servers/granche-srv2.json b/data/grid5000/sites/lille/servers/granche-srv2.json
index cc31db11167..3523ee383c0 100644
--- a/data/grid5000/sites/lille/servers/granche-srv2.json
+++ b/data/grid5000/sites/lille/servers/granche-srv2.json
@@ -3,6 +3,11 @@
     "storage2",
     "modules"
   ],
+  "group_storage": {
+    "name": "storage2",
+    "rate": 50000000000,
+    "size": 90000000000000
+  },
   "kind": "physical",
   "monitoring": {
     "metric": "power",
diff --git a/data/grid5000/sites/luxembourg/servers/srv-data.json b/data/grid5000/sites/luxembourg/servers/srv-data.json
index b444fe6480a..8877b9842a4 100644
--- a/data/grid5000/sites/luxembourg/servers/srv-data.json
+++ b/data/grid5000/sites/luxembourg/servers/srv-data.json
@@ -7,6 +7,11 @@
     "storage1",
     "modules"
   ],
+  "group_storage": {
+    "name": "storage1",
+    "rate": 20000000000,
+    "size": 40000000000000
+  },
   "kind": "physical",
   "network_adapters": {
     "bmc": {
diff --git a/data/grid5000/sites/lyon/servers/alcor.json b/data/grid5000/sites/lyon/servers/alcor.json
index 84243d23c7a..330165a58a3 100644
--- a/data/grid5000/sites/lyon/servers/alcor.json
+++ b/data/grid5000/sites/lyon/servers/alcor.json
@@ -2,6 +2,11 @@
   "alias": [
     "storage1"
   ],
+  "group_storage": {
+    "name": "storage1",
+    "rate": 10000000000,
+    "size": 75000000000000
+  },
   "kind": "physical",
   "network_adapters": {
     "bmc": {
diff --git a/data/grid5000/sites/nancy/servers/talc-data2.json b/data/grid5000/sites/nancy/servers/talc-data2.json
index 1a7e3bd073c..803939d91b5 100644
--- a/data/grid5000/sites/nancy/servers/talc-data2.json
+++ b/data/grid5000/sites/nancy/servers/talc-data2.json
@@ -2,6 +2,11 @@
   "alias": [
 
   ],
+  "group_storage": {
+    "name": "talc-data2",
+    "rate": 10000000000,
+    "size": 200000000000000
+  },
   "kind": "physical",
   "network_adapters": {
     "bmc": {
diff --git a/data/grid5000/sites/rennes/servers/srv-bigdata.json b/data/grid5000/sites/rennes/servers/srv-bigdata.json
index 77e3c0b8b6e..b3d464a7a13 100644
--- a/data/grid5000/sites/rennes/servers/srv-bigdata.json
+++ b/data/grid5000/sites/rennes/servers/srv-bigdata.json
@@ -4,6 +4,11 @@
     "storage1",
     "modules"
   ],
+  "group_storage": {
+    "name": "storage1",
+    "rate": 10000000000,
+    "size": 100000000000000
+  },
   "kind": "physical",
   "network_adapters": {
     "bmc": {
diff --git a/data/grid5000/sites/sophia/servers/srv-data.json b/data/grid5000/sites/sophia/servers/srv-data.json
index beb860de5c5..8c7fe0a1ca4 100644
--- a/data/grid5000/sites/sophia/servers/srv-data.json
+++ b/data/grid5000/sites/sophia/servers/srv-data.json
@@ -5,6 +5,11 @@
     "storage1",
     "modules"
   ],
+  "group_storage": {
+    "name": "storage1",
+    "rate": 1000000000,
+    "size": 30000000000000
+  },
   "kind": "physical",
   "network_adapters": {
     "bmc": {
diff --git a/input/grid5000/sites/lille/servers/physical.yaml b/input/grid5000/sites/lille/servers/physical.yaml
index fb98d4d0ad1..341549b3242 100644
--- a/input/grid5000/sites/lille/servers/physical.yaml
+++ b/input/grid5000/sites/lille/servers/physical.yaml
@@ -322,6 +322,10 @@ granche-srv1:
             port: 11
           - uid: pdu-b2p2
             port: 11
+  group_storage:
+    name: storage1
+    size: 90000000000000
+    rate: 50000000000
 
 granche-srv2:
   kind: physical
@@ -353,3 +357,7 @@ granche-srv2:
             port: 10
           - uid: pdu-b2p2
             port: 10
+  group_storage:
+    name: storage2
+    size: 90000000000000
+    rate: 50000000000
diff --git a/input/grid5000/sites/luxembourg/servers/servers.yaml b/input/grid5000/sites/luxembourg/servers/servers.yaml
index 4dea6d97426..90389a47987 100644
--- a/input/grid5000/sites/luxembourg/servers/servers.yaml
+++ b/input/grid5000/sites/luxembourg/servers/servers.yaml
@@ -35,6 +35,10 @@ srv-data:
     bmc:
       ip: 172.17.190.70
       mac: D0:94:66:92:94:C1
+  group_storage:
+    name: storage1
+    size: 40000000000000
+    rate: 20000000000
 
 petitprince-cmc:
   kind: physical
diff --git a/input/grid5000/sites/lyon/servers/servers.yaml b/input/grid5000/sites/lyon/servers/servers.yaml
index 1487083ff63..e3c3d50baf3 100644
--- a/input/grid5000/sites/lyon/servers/servers.yaml
+++ b/input/grid5000/sites/lyon/servers/servers.yaml
@@ -51,6 +51,10 @@ alcor:
     bmc:
       ip: 172.17.62.11
       mac: 4C:D9:8F:6E:26:89
+  group_storage:
+    name: storage1
+    size: 75000000000000
+    rate: 10000000000
 
 nebula:
   kind: physical
diff --git a/input/grid5000/sites/nancy/servers/servers.yaml b/input/grid5000/sites/nancy/servers/servers.yaml
index a3cc45d0423..8d1bda4ac62 100644
--- a/input/grid5000/sites/nancy/servers/servers.yaml
+++ b/input/grid5000/sites/nancy/servers/servers.yaml
@@ -279,6 +279,10 @@ talc-data2:
     bmc:
       ip: 172.17.79.30
       mac: 4c:d9:8f:63:31:d3
+  group_storage:
+    name: talc-data2
+    size: 200000000000000
+    rate: 10000000000
 
 srv3:
   kind: physical
diff --git a/input/grid5000/sites/rennes/servers/servers.yaml b/input/grid5000/sites/rennes/servers/servers.yaml
index eff1ccb8f6f..8bae81bc649 100644
--- a/input/grid5000/sites/rennes/servers/servers.yaml
+++ b/input/grid5000/sites/rennes/servers/servers.yaml
@@ -69,6 +69,10 @@ srv-bigdata:
       ip: 172.16.111.7
     bmc:
       ip: 172.17.111.7
+  group_storage:
+    name: storage1
+    size: 100000000000000
+    rate: 10000000000
 
 rook-storage0:
   kind: physical
diff --git a/input/grid5000/sites/sophia/servers/physical.yaml b/input/grid5000/sites/sophia/servers/physical.yaml
index 705ee6bbf3f..01311991990 100644
--- a/input/grid5000/sites/sophia/servers/physical.yaml
+++ b/input/grid5000/sites/sophia/servers/physical.yaml
@@ -105,6 +105,10 @@ srv-data:
       mounted: true
       ip: 172.17.143.5
       mac: 14:18:77:45:b8:63
+  group_storage:
+    name: storage1
+    size: 30000000000000
+    rate: 1000000000
 
 gwol-south:
   kind: physical
diff --git a/lib/refrepo/valid/input/schemas/schema-site.yaml b/lib/refrepo/valid/input/schemas/schema-site.yaml
index 3413ce21fa7..2cafc7c077f 100644
--- a/lib/refrepo/valid/input/schemas/schema-site.yaml
+++ b/lib/refrepo/valid/input/schemas/schema-site.yaml
@@ -31,6 +31,13 @@ servers:
               available: boolean
               resolution: optional_integer
               via: optional
+      group_storage:
+        <optional_hash>:
+          name: string
+          size: integer
+          rate: integer
+          comment: optional_string
+
 name: string
 location: string
 web: string
-- 
GitLab