function instance2AMIRegEx()

in scripts/suse-rhel-sap-ami/list.js [159:242]


function instance2AMIRegEx() {

	var iTypes = [
				"t1.micro",
				"t2.micro",
				"t2.small",
				"t2.medium",
				"m1.small",
				"m1.medium",
				"m1.large",
				"m1.xlarge",
				"m2.xlarge",
				"m2.2xlarge",
				"m2.4xlarge",
				"m3.medium",
				"m3.large",
				"m3.xlarge",
				"m3.2xlarge",
				"c1.medium",
				"c1.xlarge",
				"c3.large",
				"c3.xlarge",
				"c3.2xlarge",
				"c3.4xlarge",
				"c3.8xlarge",
				"c4.large",
				"c4.xlarge",
				"c4.2xlarge",
				"c4.4xlarge",
				"c4.8xlarge",
				"r3.large",
				"r3.xlarge",
				"r3.2xlarge",
				"r3.4xlarge",
				"r3.8xlarge",
				"i2.xlarge",
				"i2.2xlarge",
				"i2.4xlarge",
				"i2.8xlarge",
				"hi1.4xlarge",
				"hs1.8xlarge",
				"cr1.8xlarge",
				"cc2.8xlarge",
				];

	var amiShort = [];
	amiShort[amiAMZN64HVM] = "hvm";
	amiShort[amiAMZN64PV] = "pv";

	var amiMatrix = getAMImatrix();
	var instanceType2AMIName = {};
	for (var i in iTypes) {
		var instance = iTypes[i];
		var family = instance.split('.')[0];
		var data = __.find(amiMatrix, function(v) {
			return v.family == family;
		});
		var amiRegex = data.amiRegex;	
		instanceType2AMIName[instance] = {"amiType": amiShort[amiRegex] };

	}

	var Region2AMZNami = {};
	var pvAMIs = getAMZNamis(amiAMZN64PV);
	var hvmAMIs = getAMZNamis(amiAMZN64HVM);
	var regions = getRegions();

	for (var v in regions.Regions) {
		var region = (regions.Regions[v].RegionName);
		Region2AMZNami[region] = {};
		Region2AMZNami[region]["pv"] = pvAMIs[region];
		Region2AMZNami[region]["hvm"] = hvmAMIs[region];
	}

	
	var out = {};
	out["Mappings"] = {};
	out["Mappings"]["Region2AMZNami"] = Region2AMZNami;
	out["Mappings"]["instanceType2AMIType"] = instanceType2AMIName;

	console.log(JSON.stringify(out, null, 4));


}