summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config/pdf/idf-pod1.schema.yaml8
-rwxr-xr-xconfig/utils/check-jinja2.sh22
-rw-r--r--labs/arm/idf-pod5.yaml3
-rw-r--r--labs/arm/idf-pod7.yaml3
-rw-r--r--labs/bii/idf-pod1.yaml3
-rw-r--r--labs/zte/idf-pod9.yaml2
6 files changed, 26 insertions, 15 deletions
diff --git a/config/pdf/idf-pod1.schema.yaml b/config/pdf/idf-pod1.schema.yaml
index 78e22042..ad680da5 100644
--- a/config/pdf/idf-pod1.schema.yaml
+++ b/config/pdf/idf-pod1.schema.yaml
@@ -81,6 +81,11 @@ properties:
version:
type: 'number'
enum: [0.1]
+ installer:
+ type: 'array'
+ items:
+ type: 'string'
+ enum: ['apex', 'compass4nfv', 'daisy', 'fuel', 'joid']
net_config:
type: 'object'
fuel:
@@ -106,6 +111,9 @@ properties:
$ref: '#/definitions/daisy/v0.1'
compass:
$ref: '#/definitions/compass/v0.1'
+ fuel:
+ required: ['net_config']
+ daisy:
required: ['net_config']
# Do not allow any properties not defined here. This lets us catch typos.
diff --git a/config/utils/check-jinja2.sh b/config/utils/check-jinja2.sh
index b7fa5912..16e52130 100755
--- a/config/utils/check-jinja2.sh
+++ b/config/utils/check-jinja2.sh
@@ -35,27 +35,19 @@ done
# shellcheck disable=SC2086
while IFS= read -r lab_config; do
SUMMARY+="\n${lab_config#labs/};"
- lab_nodes=$(grep -ce 'node:' "${lab_config}")
- lab_tmacs=$(grep -ce 'mac_address:' "${lab_config}")
- ((lab_amacs=lab_tmacs/lab_nodes)); ((lab_nodes-=1))
+ idf_config="$(dirname "${lab_config}")/idf-$(basename "${lab_config}")"
+ idf_installer=$(grep 'installer:' "${idf_config}" 2>/dev/null || echo)
echo "###################### ${lab_config} ######################"
for adapter in ${INSTALLER_ADAPTERS}; do
pdf_inst=0
pdf_inst_pass=0
pdf_yaml_pass=0
- ia_nodes=$(grep -hPo 'nodes\W+\K\d+' -R "${adapter}" | tail -1)
- ia_rmacs=$(grep -hPo 'interfaces\W+\K\d+' -R "${adapter}" | sort | tail -1)
- ((ia_nodes+=1)); ((ia_rmacs+=1))
- if [[ ${ia_nodes} -gt ${lab_nodes} ]]; then
+ installer_name=$(basename "${adapter}")
+ if [ -n "${idf_installer}" ] && echo "${idf_installer}" | \
+ grep -vq "${installer_name}"; then
SUMMARY+='-;'
- echo -n "[GENERATE] [SKIP] $(basename "${adapter}") requires at least"
- echo -e " ${ia_nodes} nodes, but found only ${lab_nodes}, skipping.\n"
- continue
- fi
- if [[ ${ia_rmacs} -ge ${lab_amacs} ]]; then
- SUMMARY+='-;'
- echo -n "[GENERATE] [SKIP] $(basename "${adapter}") requires at least"
- echo -e " ${ia_rmacs} nics, but found ~ ${lab_amacs}, skipping.\n"
+ echo -n "[GENERATE] [SKIP] idf.installer defined and "
+ echo -e "${installer_name} not listed, skipping.\n"
continue
fi
while IFS= read -r jinja_template; do
diff --git a/labs/arm/idf-pod5.yaml b/labs/arm/idf-pod5.yaml
index c8035228..4e33135b 100644
--- a/labs/arm/idf-pod5.yaml
+++ b/labs/arm/idf-pod5.yaml
@@ -10,6 +10,9 @@
idf:
version: 0.1
+ # NOTE: Compass & Joid are not supported on this POD since they require at
+ # least 3 network ports on all nodes.
+ installer: ['apex', 'daisy', 'fuel']
net_config:
oob:
ip-range: 10.0.8.3-10.0.8.10
diff --git a/labs/arm/idf-pod7.yaml b/labs/arm/idf-pod7.yaml
index 6b41363d..2c2a9466 100644
--- a/labs/arm/idf-pod7.yaml
+++ b/labs/arm/idf-pod7.yaml
@@ -10,6 +10,9 @@
idf:
version: 0.1
+ # NOTE: Compass & Joid are not supported on this POD since they require at
+ # least 3 network ports on all nodes.
+ installer: ['apex', 'daisy', 'fuel']
net_config:
oob:
ip-range: 10.0.16.2-10.0.16.6
diff --git a/labs/bii/idf-pod1.yaml b/labs/bii/idf-pod1.yaml
index 187f42ce..d6944795 100644
--- a/labs/bii/idf-pod1.yaml
+++ b/labs/bii/idf-pod1.yaml
@@ -10,6 +10,9 @@
idf:
version: 0.1
+ # NOTE: Temporarily disable Daisy check, since it requires 'storage' network
+ # to be defined in 'idf.net_config' below.
+ installer: ['apex', 'compass4nfv', 'fuel', 'joid']
net_config:
oob: # IPMI management network
interface: 0
diff --git a/labs/zte/idf-pod9.yaml b/labs/zte/idf-pod9.yaml
index 61a225dc..1cdd5d88 100644
--- a/labs/zte/idf-pod9.yaml
+++ b/labs/zte/idf-pod9.yaml
@@ -10,6 +10,8 @@
idf:
version: 0.1
+ # NOTE: For now, only Daisy supports 3-node clusters
+ installer: ['daisy']
net_config:
# NOTE: Network names are likely to change after the PDF spec is updated
oob: