func getTemplateInstanceConfiguration()

in ec/ecresource/deploymentresource/topology_dedicated_masters.go [320:346]


func getTemplateInstanceConfiguration(template models.DeploymentTemplateInfoV2, topologyId string) *models.InstanceConfigurationInfo {
	if template.DeploymentTemplate == nil ||
		template.DeploymentTemplate.Resources == nil ||
		len(template.DeploymentTemplate.Resources.Elasticsearch) == 0 ||
		template.DeploymentTemplate.Resources.Elasticsearch[0].Plan == nil {
		return nil
	}
	var topologyElement *models.ElasticsearchClusterTopologyElement
	for _, topology := range template.DeploymentTemplate.Resources.Elasticsearch[0].Plan.ClusterTopology {
		if topology.ID == topologyId {
			topologyElement = topology
			break
		}
	}
	if topologyElement == nil {
		return nil
	}

	// Find IC for tier
	for _, ic := range template.InstanceConfigurations {
		if ic.ID == topologyElement.InstanceConfigurationID {
			return ic
		}
	}

	return nil
}