def execute(self, args): image_mgr = ImageManager(self.client) image_id = resolve_id(image_mgr.resolve_ids, args.get('<identifier>'), 'image') image_mgr.delete_image(image_id)
def list_zone(client, zone, args): manager = DNSManager(client) t = Table([ "record", "type", "ttl", "value", ]) t.align['ttl'] = 'l' t.align['record'] = 'r' t.align['value'] = 'l' zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') try: records = manager.get_records( zone_id, type=args.get('--type'), host=args.get('--record'), ttl=args.get('--ttl'), data=args.get('--data'), ) except DNSZoneNotFound: raise CLIAbort("No zone found matching: %s" % args['<zone>']) for rr in records: t.add_row([ rr['host'], rr['type'].upper(), rr['ttl'], rr['data'] ]) return t
def execute(self, args): manager = DNSManager(self.client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') try: return manager.dump_zone(zone_id) except DNSZoneNotFound: raise CLIAbort("No zone found matching: %s" % args['<zone>'])
def execute(self, args): mgr = FirewallManager(self.client) input_id = resolve_id( mgr.resolve_ids, args.get('<identifier>'), 'firewall') ha_support = args.get('--ha', False) if not args['--really']: if args['--vlan']: pkg = mgr.get_dedicated_package(ha_enabled=ha_support) elif args['--cci']: pkg = mgr.get_standard_package(input_id) elif args['--server']: pkg = mgr.get_standard_package(input_id, is_cci=False) if not pkg: return "Unable to add firewall - Is network public enabled?" print_package_info(pkg) if not confirm("This action will incur charges on your account. " "Continue?"): raise CLIAbort('Aborted.') if args['--vlan']: mgr.add_vlan_firewall(input_id, ha_enabled=ha_support) elif args['--cci']: mgr.add_standard_firewall(input_id, is_cci=True) elif args['--server']: mgr.add_standard_firewall(input_id, is_cci=False) return "Firewall is being created!"
def execute(self, args): mgr = TicketManager(self.client) ticket_id = resolve_id( mgr.resolve_ids, args.get('<identifier>'), 'ticket') count = args.get('--updateCount') return get_ticket_results(mgr, ticket_id, int(count))
def execute(self, args): manager = DNSManager(self.client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') if args['--really'] or no_going_back(args['<zone>']): manager.delete_zone(zone_id) else: raise CLIAbort("Aborted.")
def execute(self, args): mgr = NetworkManager(self.client) global_ip_id = resolve_id(mgr.resolve_global_ip_ids, args.get('<identifier>'), name='global ip') if not global_ip_id: raise CLIAbort("Unable to find global IP record for " + args['<identifier>']) mgr.assign_global_ip(global_ip_id, args['<target>'])
def execute(self, args): mgr = LoadBalancerManager(self.client) input_id = resolve_id( mgr.resolve_ids, args.get('<identifier>'), 'load_balancer') if not confirm("This action will incur charges on your account. " "Continue?"): raise CLIAbort('Aborted.') mgr.add_local_lb(input_id, datacenter=args['--datacenter']) return "Load balancer is being created!"
def execute(self, args): mgr = NetworkManager(self.client) global_ip_id = resolve_id(mgr.resolve_global_ip_ids, args.get('<identifier>'), name='global ip') if args['--really'] or no_going_back(global_ip_id): mgr.cancel_global_ip(global_ip_id) else: CLIAbort('Aborted')
def execute(self, args): mgr = NetworkManager(self.client) subnet_id = resolve_id(mgr.resolve_subnet_ids, args.get('<identifier>'), name='subnet') if args['--really'] or no_going_back(subnet_id): mgr.cancel_subnet(subnet_id) else: CLIAbort('Aborted')
def execute(self, args): manager = DNSManager(self.client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') args['--ttl'] = args['--ttl'] or 7200 manager.create_record( zone_id, args['<record>'], args['<type>'], args['<data>'], ttl=args['--ttl'])
def execute(self, args): mgr = TicketManager(self.client) ticket_id = resolve_id( mgr.resolve_ids, args.get('<identifier>'), 'ticket') body = args.get('--body') if body is None: body = open_editor(beg_msg=TEMPLATE_MSG) mgr.update_ticket(ticket_id=ticket_id, body=body) return "Ticket Updated!"
def execute(client, args): manager = DNSManager(client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') args['--ttl'] = args['--ttl'] or DNSManager.DEFAULT_TTL manager.create_record( zone_id, args['<record>'], args['<type>'], args['<data>'], ttl=args['--ttl'])
def execute(self, args): image_mgr = ImageManager(self.client) data = {} if args.get('--name'): data['name'] = args.get('--name') if args.get('--note'): data['note'] = args.get('--note') if args.get('--tag'): data['tag'] = args.get('--tag') image_id = resolve_id(image_mgr.resolve_ids, args.get('<identifier>'), 'image') if not image_mgr.edit(image_id, **data): raise CLIAbort("Failed to Edit Image")
def execute(self, args): mgr = NetworkManager(self.client) subnet_id = resolve_id(mgr.resolve_subnet_ids, args.get('<identifier>'), name='subnet') subnet = mgr.get_subnet(subnet_id) table = KeyValueTable(['Name', 'Value']) table.align['Name'] = 'r' table.align['Value'] = 'l' table.add_row(['id', subnet['id']]) table.add_row(['identifier', '%s/%s' % (subnet['networkIdentifier'], str(subnet['cidr']))]) table.add_row(['subnet type', subnet['subnetType']]) table.add_row(['gateway', subnet.get('gateway', blank())]) table.add_row(['broadcast', subnet.get('broadcastAddress', blank())]) table.add_row(['datacenter', subnet['datacenter']['name']]) table.add_row(['usable ips', subnet.get('usableIpAddressCount', blank())]) if not args.get('--no-cci'): if subnet['virtualGuests']: cci_table = Table(['Hostname', 'Domain', 'IP']) cci_table.align['Hostname'] = 'r' cci_table.align['IP'] = 'l' for cci in subnet['virtualGuests']: cci_table.add_row([cci['hostname'], cci['domain'], cci.get('primaryIpAddress')]) table.add_row(['ccis', cci_table]) else: table.add_row(['cci', 'none']) if not args.get('--no-hardware'): if subnet['hardware']: hw_table = Table(['Hostname', 'Domain', 'IP']) hw_table.align['Hostname'] = 'r' hw_table.align['IP'] = 'l' for hardware in subnet['hardware']: hw_table.add_row([hardware['hostname'], hardware['domain'], hardware.get('primaryIpAddress')]) table.add_row(['hardware', hw_table]) else: table.add_row(['hardware', 'none']) return table
def execute(self, args): manager = DNSManager(self.client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') try: results = manager.get_records( zone_id, host=args['<record>']) except DNSZoneNotFound: raise CLIAbort("No zone found matching: %s" % args['<zone>']) for r in results: if args['--id'] and str(r['id']) != args['--id']: continue r['data'] = args['--data'] or r['data'] r['ttl'] = args['--ttl'] or r['ttl'] manager.edit_record(r)
def execute(self, args): image_mgr = ImageManager(self.client) image_id = resolve_id(image_mgr.resolve_ids, args.get('<identifier>'), 'image') image = image_mgr.get_image(image_id) t = KeyValueTable(['Name', 'Value']) t.align['Name'] = 'r' t.align['Value'] = 'l' t.add_row(['id', image['id']]) t.add_row(['account', image.get('accountId', blank())]) t.add_row(['name', image['name'].strip()]) t.add_row(['global_identifier', image.get('globalIdentifier', blank())]) return t
def list_zone(self, args): """ list records for a particular zone """ manager = DNSManager(self.client) table = Table([ "id", "record", "type", "ttl", "value", ]) table.align['ttl'] = 'l' table.align['record'] = 'r' table.align['value'] = 'l' zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') try: records = manager.get_records( zone_id, record_type=args.get('--type'), host=args.get('--record'), ttl=args.get('--ttl'), data=args.get('--data'), ) except DNSZoneNotFound: raise CLIAbort("No zone found matching: %s" % args['<zone>']) for record in records: table.add_row([ record['id'], record['host'], record['type'].upper(), record['ttl'], record['data'] ]) return table
def execute(self, args): manager = DNSManager(self.client) zone_id = resolve_id(manager.resolve_ids, args['<zone>'], name='zone') if args['--id']: records = [{'id': args['--id']}] else: try: records = manager.get_records( zone_id, host=args['<record>']) except DNSZoneNotFound: raise CLIAbort("No zone found matching: %s" % args['<zone>']) if args['--really'] or no_going_back('yes'): t = Table(['record']) for r in records: if args.get('--id') and args['--id'] != r['id']: continue manager.delete_record(r['id']) t.add_row([r['id']]) return t raise CLIAbort("Aborted.")
def execute(self, args): mgr = NetworkManager(self.client) vlan_id = resolve_id(mgr.resolve_vlan_ids, args.get('<identifier>'), 'VLAN') vlan = mgr.get_vlan(vlan_id) table = KeyValueTable(['Name', 'Value']) table.align['Name'] = 'r' table.align['Value'] = 'l' table.add_row(['id', vlan['id']]) table.add_row(['number', vlan['vlanNumber']]) table.add_row(['datacenter', vlan['primaryRouter']['datacenter']['longName']]) table.add_row(['primary router', vlan['primaryRouter']['fullyQualifiedDomainName']]) table.add_row(['firewall', 'Yes' if vlan['firewallInterfaces'] else 'No']) subnets = [] for subnet in vlan['subnets']: subnet_table = KeyValueTable(['Name', 'Value']) subnet_table.align['Name'] = 'r' subnet_table.align['Value'] = 'l' subnet_table.add_row(['id', subnet['id']]) subnet_table.add_row(['identifier', subnet['networkIdentifier']]) subnet_table.add_row(['netmask', subnet['netmask']]) subnet_table.add_row(['gateway', subnet.get('gateway', '-')]) subnet_table.add_row(['type', subnet['subnetType']]) subnet_table.add_row(['usable ips', subnet['usableIpAddressCount']]) subnets.append(subnet_table) table.add_row(['subnets', subnets]) if not args.get('--no-cci'): if vlan['virtualGuests']: cci_table = KeyValueTable(['Hostname', 'Domain', 'IP']) cci_table.align['Hostname'] = 'r' cci_table.align['IP'] = 'l' for cci in vlan['virtualGuests']: cci_table.add_row([cci['hostname'], cci['domain'], cci.get('primaryIpAddress')]) table.add_row(['ccis', cci_table]) else: table.add_row(['cci', 'none']) if not args.get('--no-hardware'): if vlan['hardware']: hw_table = Table(['Hostname', 'Domain', 'IP']) hw_table.align['Hostname'] = 'r' hw_table.align['IP'] = 'l' for hardware in vlan['hardware']: hw_table.add_row([hardware['hostname'], hardware['domain'], hardware.get('primaryIpAddress')]) table.add_row(['hardware', hw_table]) else: table.add_row(['hardware', 'none']) return table