From 9ddafbb1547f9ad814e3147576b49e2695eb4690 Mon Sep 17 00:00:00 2001
From: David Loup <david.loup@inria.fr>
Date: Mon, 8 Jun 2020 10:15:27 +0200
Subject: [PATCH] [lib/reference-api,valid/schema] Add 'exotic' field as an
 optional Boolean

---
 lib/refrepo/gen/reference-api.rb                    | 2 ++
 lib/refrepo/valid/input/schemas/schema-cluster.yaml | 1 +
 lib/refrepo/valid/input/schemas/schema-node.yaml    | 1 +
 3 files changed, 4 insertions(+)

diff --git a/lib/refrepo/gen/reference-api.rb b/lib/refrepo/gen/reference-api.rb
index 850b84c123..f9c396f929 100644
--- a/lib/refrepo/gen/reference-api.rb
+++ b/lib/refrepo/gen/reference-api.rb
@@ -244,6 +244,8 @@ def generate_reference_api
           # Add default keys
           node["main_memory"] = {} unless node.key?("main_memory")
 
+          node["exotic"] = cluster.key?('exotic') ? cluster['exotic'] : false unless node.key?('exotic')
+
           node['supported_job_types']['queues'] = cluster['queues'] unless node['supported_job_types'].key?('queues')
 
           # Delete keys
diff --git a/lib/refrepo/valid/input/schemas/schema-cluster.yaml b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
index a6ff96d80d..79cef9d320 100644
--- a/lib/refrepo/valid/input/schemas/schema-cluster.yaml
+++ b/lib/refrepo/valid/input/schemas/schema-cluster.yaml
@@ -2,6 +2,7 @@
 nodes: required_hash
 model: string
 created_at: required # string or date ?
+exotic: optional_boolean
 kavlan: boolean
 queues: array
 priority: optional_string
diff --git a/lib/refrepo/valid/input/schemas/schema-node.yaml b/lib/refrepo/valid/input/schemas/schema-node.yaml
index 4ad6d19431..5505094e23 100644
--- a/lib/refrepo/valid/input/schemas/schema-node.yaml
+++ b/lib/refrepo/valid/input/schemas/schema-node.yaml
@@ -20,6 +20,7 @@ chassis:
   manufacturer: string
   name: string
   serial: optional # required # string ?
+exotic: optional_boolean
 gpu_devices: optional_hash
 kavlan:
   <multi>:
-- 
GitLab