コード例 #1
0
 def _execute(self, _):
     """ Returns user metadata """
     userdata = SoftLayer.MetadataManager().get('user_data')
     if userdata:
         return userdata
     else:
         raise exceptions.CLIAbort("No user metadata.")
コード例 #2
0
def get_network():
    """Returns a list of tables with public and private network details."""
    meta = SoftLayer.MetadataManager()
    network_tables = []
    for network_func in [meta.public_network, meta.private_network]:
        network = network_func()

        table = formatting.KeyValueTable(['name', 'value'])
        table.align['name'] = 'r'
        table.align['value'] = 'l'
        table.add_row([
            'mac addresses',
            formatting.listing(network['mac_addresses'], separator=',')
        ])
        table.add_row(['router', network['router']])
        table.add_row(
            ['vlans',
             formatting.listing(network['vlans'], separator=',')])
        table.add_row([
            'vlan ids',
            formatting.listing(network['vlan_ids'], separator=',')
        ])
        network_tables.append(table)

    return network_tables
コード例 #3
0
    def _execute(self, args):
        meta = SoftLayer.MetadataManager()
        if args['<public>']:
            table = formatting.KeyValueTable(['Name', 'Value'])
            table.align['Name'] = 'r'
            table.align['Value'] = 'l'
            network = meta.public_network()
            table.add_row([
                'mac addresses',
                formatting.listing(network['mac_addresses'], separator=',')])
            table.add_row([
                'router', network['router']])
            table.add_row([
                'vlans', formatting.listing(network['vlans'], separator=',')])
            table.add_row([
                'vlan ids',
                formatting.listing(network['vlan_ids'], separator=',')])
            return table

        if args['<private>']:
            table = formatting.KeyValueTable(['Name', 'Value'])
            table.align['Name'] = 'r'
            table.align['Value'] = 'l'
            network = meta.private_network()
            table.add_row([
                'mac addresses',
                formatting.listing(network['mac_addresses'], separator=',')])
            table.add_row([
                'router', network['router']])
            table.add_row([
                'vlans', formatting.listing(network['vlans'], separator=',')])
            table.add_row([
                'vlan ids',
                formatting.listing(network['vlan_ids'], separator=',')])
            return table
コード例 #4
0
def cli(env, prop):
    """Find details about this machine."""

    try:
        if prop == 'network':
            env.fout(get_network())
            return

        meta_prop = META_MAPPING.get(prop) or prop
        env.fout(SoftLayer.MetadataManager().get(meta_prop))
    except SoftLayer.TransportError as ex:
        message = 'Cannot connect to the backend service address. Make sure '\
                  'this command is being ran from a device on the backend network.'
        raise exceptions.CLIAbort(message) from ex
コード例 #5
0
def cli(prop):
    """Find details about this machine."""

    try:
        if prop == 'network':
            return get_network()

        meta_prop = META_MAPPING.get(prop) or prop
        return SoftLayer.MetadataManager().get(meta_prop)
    except SoftLayer.TransportError:
        raise exceptions.CLIAbort(
            'Cannot connect to the backend service address. Make sure '
            'this command is being ran from a device on the backend '
            'network.')
コード例 #6
0
 def set_up(self):
     self.metadata = SoftLayer.MetadataManager(client=self.client)
コード例 #7
0
 def set_up(self):
     self.metadata = SoftLayer.MetadataManager()
     self.url = '/'.join([
         consts.API_PRIVATE_ENDPOINT_REST.rstrip('/'),
         'SoftLayer_Resource_Metadata',
         'something.json'])
コード例 #8
0
 def set_up(self):
     self.metadata = SoftLayer.MetadataManager()
     self.make_request = mock.MagicMock()
     self.metadata.make_request = self.make_request
コード例 #9
0
 def _execute(self, _):
     frontend_macs = SoftLayer.MetadataManager().get('frontend_mac')
     return formatting.listing(frontend_macs, separator=',')
コード例 #10
0
 def _execute(self, _):
     return str(SoftLayer.MetadataManager().get('datacenter_id'))
コード例 #11
0
 def _execute(self, _):
     return SoftLayer.MetadataManager().get('datacenter')
コード例 #12
0
 def _execute(self, _):
     return formatting.listing(SoftLayer.MetadataManager().get('tags'),
                               separator=',')
コード例 #13
0
 def _execute(self, _):
     return SoftLayer.MetadataManager().get('provision_state')
コード例 #14
0
 def _execute(self, _):
     return SoftLayer.MetadataManager().get('primary_ip')
コード例 #15
0
 def _execute(self, _):
     return SoftLayer.MetadataManager().get('hostname')
コード例 #16
0
 def _execute(self, _):
     return SoftLayer.MetadataManager().get('fqdn')