Skip to content

Commit 77d2c42

Browse files
committed
Mapped volumeImageMetadata
1 parent 8d58892 commit 77d2c42

File tree

3 files changed

+41
-2
lines changed

3 files changed

+41
-2
lines changed

src/BlockStorage/v2/Models/Volume.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ class Volume extends OperatorResource implements Creatable, Listable, Updateable
6262
/** @var array */
6363
public $metadata = [];
6464

65+
/** @var array */
66+
public $volumeImageMetadata = [];
67+
6568
protected $resourceKey = 'volume';
6669
protected $resourcesKey = 'volumes';
6770
protected $markerKey = 'id';
@@ -72,7 +75,8 @@ class Volume extends OperatorResource implements Creatable, Listable, Updateable
7275
'snapshot_id' => 'snapshotId',
7376
'volume_type' => 'volumeTypeName',
7477
'os-vol-tenant-attr:tenant_id' => 'tenantId',
75-
'os-vol-host-attr:host' => 'host'
78+
'os-vol-host-attr:host' => 'host',
79+
'volume_image_metadata' => 'volumeImageMetadata',
7680
];
7781

7882
/**

tests/unit/BlockStorage/v2/Fixtures/GET_volume.resp

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,23 @@ Content-Type: application/json
3232
"os-volume-replication:extended_status": null,
3333
"metadata": {},
3434
"id": "7449e332-9715-4185-b191-1cfd91d75d48",
35-
"size": 10
35+
"size": 10,
36+
"size": 10,
37+
"volume_image_metadata": {
38+
"os_distro": "ubuntu",
39+
"os_version": "xenial",
40+
"hypervisor_type": "qemu",
41+
"os_variant": "ubuntu",
42+
"disk_format": "qcow2",
43+
"image_name": "Some Image Name x86_64",
44+
"image_id": "54986297-8364-4baa-8435-812add437507",
45+
"architecture": "x86_64",
46+
"container_format": "bare",
47+
"min_disk": "40",
48+
"os_type": "linux",
49+
"checksum": "bb3055b274fe72bc3406ffe9febe9fff",
50+
"min_ram": "0",
51+
"size": "6508557824"
52+
}
3653
}
3754
}

tests/unit/BlockStorage/v2/Models/VolumeTest.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,24 @@ public function test_it_retrieves()
4545
$this->setupMock('GET', 'volumes/1', null, [], 'GET_volume');
4646

4747
$this->volume->retrieve();
48+
49+
$volumeImageMetadata = $this->volume->volumeImageMetadata;
50+
51+
$this->assertInternalType('array', $volumeImageMetadata);
52+
$this->assertEquals($volumeImageMetadata['os_distro'], 'ubuntu');
53+
$this->assertEquals($volumeImageMetadata['os_version'], 'xenial');
54+
$this->assertEquals($volumeImageMetadata['hypervisor_type'], 'qemu');
55+
$this->assertEquals($volumeImageMetadata['os_variant'], 'ubuntu');
56+
$this->assertEquals($volumeImageMetadata['disk_format'], 'qcow2');
57+
$this->assertEquals($volumeImageMetadata['image_name'], 'Some Image Name x86_64');
58+
$this->assertEquals($volumeImageMetadata['image_id'], '54986297-8364-4baa-8435-812add437507');
59+
$this->assertEquals($volumeImageMetadata['architecture'], 'x86_64');
60+
$this->assertEquals($volumeImageMetadata['container_format'], 'bare');
61+
$this->assertEquals($volumeImageMetadata['min_disk'], '40');
62+
$this->assertEquals($volumeImageMetadata['os_type'], 'linux');
63+
$this->assertEquals($volumeImageMetadata['checksum'], 'bb3055b274fe72bc3406ffe9febe9fff');
64+
$this->assertEquals($volumeImageMetadata['min_ram'], '0');
65+
$this->assertEquals($volumeImageMetadata['size'], '6508557824');
4866
}
4967

5068
public function test_it_merges_metadata()

0 commit comments

Comments
 (0)