Skip to content

Commit ca21eec

Browse files
Merge pull request #1872 from BrianSantivanez/issue1871
Add columns to `image list`
2 parents 3d5e9b1 + 3c50315 commit ca21eec

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

SoftLayer/CLI/image/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
from SoftLayer.CLI import formatting
44

55

6-
MASK = ('id,accountId,name,globalIdentifier,parentId,publicFlag,flexImageFlag,'
7-
'imageType')
6+
MASK = ('id,createDate,note,accountId,name,globalIdentifier,parentId,publicFlag,flexImageFlag,'
7+
'imageType,children[blockDevices[diskImage[softwareReferences[softwareDescription]]]]')
88
DETAIL_MASK = MASK + (',firstChild,children[id,blockDevicesDiskSpaceTotal,datacenter,'
99
'transaction[transactionGroup,transactionStatus],'
1010
'blockDevices[diskImage[capacity,name,units,softwareReferences[softwareDescription]],diskSpace]],'

SoftLayer/CLI/image/list.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,20 @@ def cli(env, name, public):
2929
for image in image_mgr.list_public_images(name=name, mask=image_mod.MASK):
3030
images.append(image)
3131

32-
table = formatting.Table(['id', 'name', 'type', 'visibility', 'account'])
32+
table = formatting.Table(['Id', 'Name', 'Type', 'Visibility', 'Account', 'OS', 'Created', 'Notes'])
33+
table.align['OS'] = 'l'
34+
table.align['Notes'] = 'l'
3335

3436
images = [image for image in images if not image['parentId']]
3537
for image in images:
36-
38+
operative_system = '-'
39+
if image.get('children') and len(image.get('children')) != 0:
40+
if image.get('children')[0].get('blockDevices') and len(image.get('children')[0].get('blockDevices')) != 0:
41+
for block_device in image.get('children')[0].get('blockDevices'):
42+
if block_device.get('diskImage').get('softwareReferences') and \
43+
len(block_device.get('diskImage').get('softwareReferences')) != 0:
44+
operative_system = block_device.get('diskImage').get('softwareReferences')[0].\
45+
get('softwareDescription').get('longDescription')
3746
visibility = (image_mod.PUBLIC_TYPE if image['publicFlag'] else image_mod.PRIVATE_TYPE)
3847
table.add_row([
3948
image.get('id', formatting.blank()),
@@ -43,6 +52,9 @@ def cli(env, name, public):
4352
utils.lookup(image, 'imageType', 'name')),
4453
visibility,
4554
image.get('accountId', formatting.blank()),
55+
operative_system,
56+
utils.clean_time(image.get('createDate', formatting.blank())),
57+
image.get('note', formatting.blank()),
4658
])
4759

4860
env.fout(table)

0 commit comments

Comments
 (0)