Created
January 17, 2017 01:26
-
-
Save waltervargas/5fe2c43dbe3f2b5255d243e5fe86a920 to your computer and use it in GitHub Desktop.
test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const AWS = require('aws-sdk'); | |
const YAML = require('yamljs'); | |
AWS.config.update({region: 'us-east-1'}); | |
const ec2 = new AWS.EC2(); | |
const mapping = { | |
RegionMap: {} | |
}; | |
const filter = [ | |
{ | |
Name: 'product-code', | |
Values: ['aw0evgkw8e5c1q413zgy5pjce'] | |
} | |
]; | |
const params = { | |
DryRun: false, | |
Filters: filter, | |
Owners: ['aws-marketplace'] | |
}; | |
ec2.describeRegions({}, (err, data) => { | |
if (err) console.error(err, err.stack); | |
else { | |
// regions loop | |
data.Regions.forEach((region) => { | |
var region_name = region.RegionName; | |
AWS.config.update({region: region_name}); | |
var region_ec2 = new AWS.EC2(); | |
region_ec2.describeImages(params, (err, data) => { | |
if (err) console.error(err, err.stack) | |
else { | |
// sort by date | |
var images = data.Images.sort((a,b) => { | |
return new Date(b.CreationDate) - new Date(a.CreationDate); | |
}); | |
images.forEach((image) => { | |
mapping['RegionMap'][region_name] = { | |
AMI: image.ImageId, | |
Name: image.Name, | |
CreationDate: image.CreationDate | |
}; | |
}); | |
var yamlmap = YAML.stringify(mapping,4); | |
console.log(yamlmap); | |
} | |
}); | |
}, this); | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment