public static DeleteSnapsot ( string snapshotid ) : void | ||
snapshotid | string | |
return | void |
/// <summary> /// Check for any snapshots set to expire -- that have a tag key of "expires" with a value that is in the past. /// </summary> public static void CheckForExpiredSnapshots() { Console.WriteLine("Checking for expired snapshots..."); AmazonEC2 ec2 = Ec2Helper.CreateClient(); DescribeSnapshotsRequest rq = new DescribeSnapshotsRequest(); rq.WithOwner("self"); rq.WithFilter(new Filter() { Name = "tag-key", Value = new List <string>() { "expires" } }); DescribeSnapshotsResponse rs = ec2.DescribeSnapshots(rq); foreach (Snapshot s in rs.DescribeSnapshotsResult.Snapshot) { string expireText = Ec2Helper.GetTagValue(s.Tag, "expires"); DateTime expires; if (DateTime.TryParse(expireText, out expires)) { if (expires < DateTime.UtcNow) { Console.WriteLine("Deleting " + s.SnapshotId + " for " + s.VolumeId + "..."); Ec2Helper.DeleteSnapsot(s.SnapshotId); } } } }