Deploying different architecture topologies with Tuskar Tuskar should allow an admin to deploy overclouds based on different topologies. Examples are overclouds with multiple compute nodes, cinder nodes, neutron network nodes, etc. Deploying different numbers of each node type should also be supported. Proposal: 1. Add a heat template repository to Tuskar 2. Tuskar works currently by being configured to read templates from a filesystem directory 2. This could be replaced with some additional schema to store some metadata about the templates and their filesystem path 1. New API/UI in Tuskar to allow an admin to perform basic CRUD on the templates 2. Could also just add an API to allow user to register a new template 1. New API/UI in Tuskar to allow an admin to merge templates together to describe the topology they want to deploy 2. Would use merge.py (or is this functionality getting added to Heat?) 2. Example: * As an admin, I want to deploy an overcloud with 1 control node and 3 compute nodes. * I choose the overcloud control template with a quantity of 1, and the overcloud compute template with a quantity of 3 * The templates are merged together into one overcloud template that can be deployed from Heat * Tuskar uses the Heat API to deploy the merged overcloud template 1. Continue to add new templates in tripleo-heat-templates for different types 2. We already have templates for control and compute 2. Are working on a template for Cinder 2. Could add additional ones for: 3. Swift 3. Neutron Network Node 3. Glance Questions: 1. Has there been any discussion around a template repository elsewhere in OpenStack? 2. Yes - Keith Bray has proposed it for Heat and met with some resistance 1. Is this something that is useful and generic enough that it should live in Heat instead? 2. Probably, raises other questions such as how to organize them, do we need search, etc. etc. 2. Another option is to put them in glance as a different image type 3. Benefit is glance is already made to scale and store things for other openstack services Actions: * Avoid causing syncing issues! * Create a wiki page with clearly articulated requirements for doing all that merge.py does in Heat server side. * Get Tuskar folk hooked up with Heat template language sessions * Tuskar should consume releases (or trunk) of Tripleo-Heat-Templates