Skip to content

Instantly share code, notes, and snippets.

@waltervargas
Created January 17, 2017 01:26
Show Gist options
  • Save waltervargas/5fe2c43dbe3f2b5255d243e5fe86a920 to your computer and use it in GitHub Desktop.
Save waltervargas/5fe2c43dbe3f2b5255d243e5fe86a920 to your computer and use it in GitHub Desktop.
test
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