-
-# Note that COMPUTESCALE is not a physical dep - 'make overcloud.yaml' won't do
-# the right thing if you change COMPUTESCALE from one run to another.
-overcloud.yaml: overcloud-source.yaml swift-source.yaml ssl-source.yaml $(overcloud_source_deps)
- python ./tripleo_heat_merge/merge.py --scale NovaCompute=$${COMPUTESCALE:-'1'} overcloud-source.yaml swift-source.yaml ssl-source.yaml > $@.tmp
+VALIDATE := $(patsubst %,validate-%,$(generated_templates))
+validate-all: $(VALIDATE)
+$(VALIDATE):
+ heat template-validate -f $(subst validate-,,$@)
+
+# You can define in CONTROLEXTRA one or more additional YAML files to further extend the template, some additions could be:
+# - overcloud-vlan-port.yaml to activate the VLAN auto-assignment from Neutron
+# - nfs-source.yaml to configure Cinder with NFS
+overcloud.yaml: overcloud-source.yaml block-storage.yaml swift-deploy.yaml swift-source.yaml swift-storage-source.yaml ssl-source.yaml nova-compute-config.yaml $(overcloud_source_deps)
+ python ./tripleo_heat_merge/merge.py --hot --scale NovaCompute=$${COMPUTESCALE:-'1'} --scale controller=$${CONTROLSCALE:-'1'} --scale SwiftStorage=$${SWIFTSTORAGESCALE:-'0'} --scale BlockStorage=$${BLOCKSTORAGESCALE:-'0'} --scale CephStorage=$${CEPHSTORAGESCALE:-'0'} overcloud-source.yaml block-storage.yaml swift-source.yaml swift-storage-source.yaml ssl-source.yaml swift-deploy.yaml nova-compute-config.yaml ${CONTROLEXTRA} > $@.tmp