Skip to content

Commit 2bf9320

Browse files
author
Kevin McDonald
committed
Address review concerns
1 parent 231f840 commit 2bf9320

11 files changed

Lines changed: 94 additions & 92 deletions

File tree

SoftLayer/CLI/block/access_list.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def _format_name(obj):
4545
"""),
4646
column_helper.Column('type', ('type',)),
4747
column_helper.Column(
48-
'primaryBackendIpAddress',
48+
'private_ip_address',
4949
('primaryBackendIpAddress',),
5050
"""
5151
allowedVirtualGuests.primaryBackendIpAddress
@@ -54,7 +54,7 @@ def _format_name(obj):
5454
allowedIpAddresses.primaryBackendIpAddress
5555
"""),
5656
column_helper.Column(
57-
'hostIqn',
57+
'host_iqn',
5858
('allowedHost', 'name',),
5959
"""
6060
allowedVirtualGuests.allowedHost.name
@@ -87,8 +87,8 @@ def _format_name(obj):
8787
'id',
8888
'name',
8989
'type',
90-
'primaryBackendIpAddress',
91-
'hostIqn',
90+
'private_ip_address',
91+
'host_iqn',
9292
'username',
9393
'password',
9494
]
@@ -104,7 +104,7 @@ def _format_name(obj):
104104
default=','.join(DEFAULT_COLUMNS))
105105
@environment.pass_env
106106
def cli(env, columns, sortby, volume_id):
107-
"""List block storage."""
107+
"""List ACLs."""
108108
block_manager = SoftLayer.BlockStorageManager(env.client)
109109
access_list = block_manager.get_block_volume_access_list(
110110
volume_id=volume_id)

SoftLayer/CLI/block/list.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,23 @@
1515
('serviceResource', 'datacenter', 'name'),
1616
mask="serviceResource.datacenter.name"),
1717
column_helper.Column(
18-
'storageType',
18+
'storage_type',
1919
lambda b: b['storageType']['keyName'].split('_').pop(0),
2020
mask="storageType.keyName"),
21-
column_helper.Column('capacityGb', ('capacityGb',), mask="capacityGb"),
22-
column_helper.Column('bytesUsed', ('bytesUsed',), mask="bytesUsed"),
23-
column_helper.Column('ipAddr', ('serviceResourceBackendIpAddress',),
21+
column_helper.Column('capacity_gb', ('capacityGb',), mask="capacityGb"),
22+
column_helper.Column('bytes_used', ('bytesUsed',), mask="bytesUsed"),
23+
column_helper.Column('ip_addr', ('serviceResourceBackendIpAddress',),
2424
mask="serviceResourceBackendIpAddress"),
2525
]
2626

2727
DEFAULT_COLUMNS = [
2828
'id',
2929
'username',
3030
'datacenter',
31-
'storageType',
32-
'capacityGb',
33-
'bytesUsed',
34-
'ipAddr'
31+
'storage_type',
32+
'capacity_gb',
33+
'bytes_used',
34+
'ip_addr'
3535
]
3636

3737

SoftLayer/CLI/block/snapshot/__init__.py

Lines changed: 0 additions & 1 deletion
This file was deleted.

SoftLayer/CLI/block/snapshot/list.py

Lines changed: 0 additions & 56 deletions
This file was deleted.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
"""List block storage snapshots."""
2+
# :license: MIT, see LICENSE for more details.
3+
4+
import click
5+
import SoftLayer
6+
from SoftLayer.CLI import columns as column_helper
7+
from SoftLayer.CLI import environment
8+
from SoftLayer.CLI import formatting
9+
10+
11+
COLUMNS = [
12+
column_helper.Column(
13+
'id',
14+
('snapshots', 'id',),
15+
mask='snapshots.id'),
16+
column_helper.Column('name', ('snapshots', 'notes',),
17+
mask='snapshots.notes'),
18+
column_helper.Column('created',
19+
('snapshots', 'snapshotCreationTimestamp',),
20+
mask='snapshots.snapshotCreationTimestamp'),
21+
column_helper.Column('size_bytes', ('snapshots', 'snapshotSizeBytes',),
22+
mask='snapshots.snapshotSizeBytes'),
23+
]
24+
25+
DEFAULT_COLUMNS = [
26+
'id',
27+
'name',
28+
'created',
29+
'size_bytes'
30+
]
31+
32+
33+
@click.command()
34+
@click.argument('volume_id')
35+
@click.option('--sortby', help='Column to sort by',
36+
default='created')
37+
@click.option('--columns',
38+
callback=column_helper.get_formatter(COLUMNS),
39+
help='Columns to display. Options: {0}'.format(
40+
', '.join(column.name for column in COLUMNS)),
41+
default=','.join(DEFAULT_COLUMNS))
42+
@environment.pass_env
43+
def cli(env, sortby, columns, volume_id):
44+
"""List block storage snapshots."""
45+
block_manager = SoftLayer.BlockStorageManager(env.client)
46+
snapshots = block_manager.get_block_volume_snapshot_list(
47+
volume_id=volume_id,
48+
mask=columns.mask(),
49+
)
50+
51+
table = formatting.Table(columns.columns)
52+
table.sortby = sortby
53+
54+
for snapshot in snapshots:
55+
table.add_row([value or formatting.blank()
56+
for value in columns.row(snapshot)])
57+
58+
env.fout(table)

SoftLayer/CLI/routes.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@
6161
('block:volume-detail', 'SoftLayer.CLI.block.detail:cli'),
6262
('block:volume-cancel', 'SoftLayer.CLI.block.cancel:cli'),
6363
('block:volume-order', 'SoftLayer.CLI.block.order:cli'),
64-
('block:snapshot-list', 'SoftLayer.CLI.block.snapshot.list:cli'),
65-
('block:snapshot-delete', 'SoftLayer.CLI.block.snapshot.delete:cli'),
64+
('block:snapshot-list', 'SoftLayer.CLI.block.snapshot_list:cli'),
65+
('block:snapshot-delete', 'SoftLayer.CLI.block.snapshot_delete:cli'),
6666
('block:access-list', 'SoftLayer.CLI.block.access_list:cli'),
6767

6868
('firewall', 'SoftLayer.CLI.firewall'),

SoftLayer/fixtures/SoftLayer_Network_Storage.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,5 +61,5 @@
6161
},
6262
}],
6363
}
64-
64+
getSnapshots = []
6565
deleteObject = True

SoftLayer/managers/block.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def list_block_volumes(self, datacenter=None, username=None,
4242
'serviceResource.datacenter[name]',
4343
'serviceResourceBackendIpAddress'
4444
]
45-
kwargs['mask'] = "mask[%s]" % ','.join(items)
45+
kwargs['mask'] = ','.join(items)
4646

4747
_filter = utils.NestedDict(kwargs.get('filter') or {})
4848

@@ -89,7 +89,7 @@ def get_block_volume_details(self, volume_id, **kwargs):
8989
'iops',
9090
'lunId',
9191
]
92-
kwargs['mask'] = "mask[%s]" % ','.join(items)
92+
kwargs['mask'] = ','.join(items)
9393
return self.client.call('Network_Storage', 'getObject',
9494
id=volume_id, **kwargs)
9595

@@ -108,7 +108,7 @@ def get_block_volume_access_list(self, volume_id, **kwargs):
108108
'allowedSubnets[allowedHost[credential]]',
109109
'allowedIpAddresses[allowedHost[credential]]',
110110
]
111-
kwargs['mask'] = "mask[%s]" % ','.join(items)
111+
kwargs['mask'] = ','.join(items)
112112
return self.client.call('Network_Storage', 'getObject',
113113
id=volume_id, **kwargs)
114114

@@ -130,8 +130,9 @@ def get_block_volume_snapshot_list(self, volume_id, **kwargs):
130130
dailySchedule,
131131
weeklySchedule
132132
]'''
133-
kwargs['mask'] = "mask[%s]" % ','.join(items)
134-
return self.client.call('Network_Storage', 'getObject',
133+
kwargs['mask'] = ','.join(items)
134+
135+
return self.client.call('Network_Storage', 'getSnapshots',
135136
id=volume_id, **kwargs)
136137

137138
def delete_snapshot(self, snapshot_id):

tests/CLI/modules/block_tests.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,36 @@ def test_access_list(self):
2020
'username': 'joe',
2121
'name': 'test-server.example.com',
2222
'type': 'VIRTUAL',
23-
'hostIqn': 'test-server',
23+
'host_iqn': 'test-server',
2424
'password': '12345',
25-
'primaryBackendIpAddress': '10.0.0.1',
25+
'private_ip_address': '10.0.0.1',
2626
'id': 1234,
2727
},
2828
{
2929
'username': 'joe',
3030
'name': 'test-server.example.com',
3131
'type': 'HARDWARE',
32-
'hostIqn': 'test-server',
32+
'host_iqn': 'test-server',
3333
'password': '12345',
34-
'primaryBackendIpAddress': '10.0.0.2',
34+
'private_ip_address': '10.0.0.2',
3535
'id': 1234,
3636
},
3737
{
3838
'username': 'joe',
3939
'name': '10.0.0.1/24 (backend subnet)',
4040
'type': 'SUBNET',
41-
'hostIqn': 'test-server',
41+
'host_iqn': 'test-server',
4242
'password': '12345',
43-
'primaryBackendIpAddress': None,
43+
'private_ip_address': None,
4444
'id': 1234,
4545
},
4646
{
4747
'username': 'joe',
4848
'name': '10.0.0.1 (backend ip)',
4949
'type': 'IP',
50-
'hostIqn': 'test-server',
50+
'host_iqn': 'test-server',
5151
'password': '12345',
52-
'primaryBackendIpAddress': None,
52+
'private_ip_address': None,
5353
'id': 1234,
5454
}],
5555
json.loads(result.output),)
@@ -87,12 +87,12 @@ def test_volume_list(self):
8787
self.assertEqual(result.exit_code, 0)
8888
self.assertEqual([
8989
{
90-
'bytesUsed': None,
91-
'capacityGb': 20,
90+
'bytes_used': None,
91+
'capacity_gb': 20,
9292
'datacenter': None,
9393
'id': 100,
94-
'ipAddr': '10.1.2.3',
95-
'storageType': 'ENDURANCE',
94+
'ip_addr': '10.1.2.3',
95+
'storage_type': 'ENDURANCE',
9696
'username': 'username'
9797
}],
9898
json.loads(result.output))

0 commit comments

Comments
 (0)