# SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser( description="Describe EBS snapshots in all/some available EC2 regions", parents=[bc.build_region_parser(), bc.build_filter_parser("EBS snapshots"), bc.build_common_parser()], ) args = parser.parse_args() # process common command line arguments log = logging.getLogger("botocross") bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) log.info(args.resource_ids) # execute business logic log.info("Describing EBS snapshots:") for region in regions:
# IN THE SOFTWARE. from botocross.ec2 import * from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser( description="Expire snapshots of EBS volumes in all/some available EC2 regions", parents=[ bc.build_region_parser(), bc.build_filter_parser("EBS volume"), bc.build_backup_parser("EBS volume", True, 1), bc.build_common_parser(), ], ) args = parser.parse_args() # process common command line arguments log = logging.getLogger("botocross") bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) # execute business logic log.info("Expire EBS snapshots")
from botocross.ec2 import * from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser( description= 'Expire snapshots of EBS volumes in all/some available EC2 regions', parents=[ bc.build_region_parser(), bc.build_filter_parser('EBS volume'), bc.build_backup_parser('EBS volume', True, 1), bc.build_common_parser() ]) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) # execute business logic log.info("Expire EBS snapshots")
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from botocross.ec2 import * from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging import sys # configure command line argument parsing parser = argparse.ArgumentParser(description='Create snapshots of EBS volumes in all/some available EC2 regions', parents=[bc.build_region_parser(), bc.build_filter_parser('EBS volume'), bc.build_backup_parser('EBS volume'), bc.build_common_parser()]) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) # execute business logic log.info("Snapshotting EBS volumes:") # REVIEW: For backup purposes it seems reasonable to only consider all OK vs. FAIL?! exit_code = bc.ExitCodes.OK
# ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser(description='Describe EC2 images in all/some available EC2 regions', parents=[bc.build_region_parser(), bc.build_filter_parser('EC2 image'), bc.build_common_parser()]) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) log.info(args.resource_ids) # execute business logic log.info("Describing EC2 images") for region in regions: try:
# ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser(description='Delete EBS snapshots in all/some available EC2 regions', parents=[bc.build_region_parser(), bc.build_filter_parser('EBS snapshot'), bc.build_common_parser()]) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) log.info(args.resource_ids) # execute business logic log.info("Deleting EBS snapshots:") for region in regions: try:
from botocross.ec2 import * from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging import sys # configure command line argument parsing parser = argparse.ArgumentParser( description="Create images of EC2 instances in all/some available EC2 regions", parents=[ bc.build_region_parser(), bc.build_filter_parser("EC2 instance"), bc.build_backup_parser("EC2 instance"), bc.build_common_parser(), ], ) parser.add_argument( "-nr", "--no_reboot", action="store_true", help="Prevent shut down of instance before creating the image. [default: False]", ) args = parser.parse_args() # process common command line arguments log = logging.getLogger("botocross") bc.configure_logging(log, args.log_level)
from botocross.ec2 import * from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging import sys # configure command line argument parsing parser = argparse.ArgumentParser( description= 'Create images of EC2 instances in all/some available EC2 regions', parents=[ bc.build_region_parser(), bc.build_filter_parser('EC2 instance'), bc.build_backup_parser('EC2 instance'), bc.build_common_parser() ]) parser.add_argument( "-nr", "--no_reboot", action="store_true", help= "Prevent shut down of instance before creating the image. [default: False]" ) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level)
# ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser(description='Describe EC2 security groups in all/some available EC2 regions', parents=[bc.build_region_parser(), bc.build_filter_parser('EC2 security group', False), bc.build_common_parser()]) parser.add_argument("-li", "--instances", action="store_true", help="List all instances currently running within this security group") parser.add_argument("-lr", "--rules", action="store_true", help="List all rules currently active in this security group") args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) # execute business logic log.info("Describing EC2 security groups:") if args.filter: for filter in args.filter:
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. from pprint import pprint import argparse import boto import boto.ec2 import botocross as bc import logging # configure command line argument parsing parser = argparse.ArgumentParser( description='Delete EBS snapshots in all/some available EC2 regions', parents=[ bc.build_region_parser(), bc.build_filter_parser('EBS snapshot'), bc.build_common_parser() ]) args = parser.parse_args() # process common command line arguments log = logging.getLogger('botocross') bc.configure_logging(log, args.log_level) credentials = bc.parse_credentials(args) regions = bc.filter_regions(boto.ec2.regions(), args.region) filter = bc.build_filter(args.filter, args.exclude) log.info(args.resource_ids) # execute business logic log.info("Deleting EBS snapshots:")