Skip to content

fix integration tests, add epoxy release #428

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Jun 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 17 additions & 15 deletions .github/workflows/integration_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,16 @@ name: Integration Tests

on:
workflow_dispatch:
inputs:
tmate_enabled:
type: boolean
description: 'Run the build with tmate debugging enabled'
required: false
default: false
openstack_version:
description: 'Comma-separated list of Openstack versions e.g. "stable/2025.1", "unmaintained/zed"'
required: false
default: false
pull_request:
push:
branches:
Expand All @@ -19,23 +29,11 @@ jobs:
strategy:
fail-fast: false
matrix:
openstack_version: [ "stable/2023.2" ]
openstack_version: ${{ fromJSON(format('[{0}]', inputs.openstack_version || vars.OPENSTACK_VERSIONS )) }}
php_version: [ 8.1 ]
include:
- name: "dalmatian"
openstack_version: "stable/2024.2"
ubuntu_version: "22.04"
- name: "caracal"
openstack_version: "stable/2024.1"
ubuntu_version: "22.04"
- name: "antelope"
openstack_version: "unmaintained/2023.1"
ubuntu_version: "22.04"
- name: "zed"
openstack_version: "unmaintained/zed"
ubuntu_version: "22.04"
ubuntu_version: [ 22.04 ]
runs-on: ubuntu-${{ matrix.ubuntu_version }}
name: Deploy OpenStack ${{ matrix.name }} and run integration tests with php ${{matrix.php_version}}
name: Deploy OpenStack ${{ matrix.openstack_version }} and run integration tests with php ${{matrix.php_version}}
steps:
- uses: actions/checkout@v4

Expand Down Expand Up @@ -120,3 +118,7 @@ jobs:
with:
name: failure-logs-${{ strategy.job-index }}
path: failure-logs

- name: Setup tmate session
uses: mxschmitt/action-tmate@v3
if: ${{ always() && github.event_name == 'workflow_dispatch' && inputs.tmate_enabled }}
7 changes: 7 additions & 0 deletions doc/services/block-storage/v3/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ Block Storage v3
OpenStack Block Storage API v3 (Cinder). Cinder is the OpenStack Block Storage service for providing volumes
to Nova virtual machines, Ironic bare metal hosts, containers and more.

.. note::

By default we are creating Cinder service with ``cinderv3`` name and ``volumev3`` type.
This is left for backward compatibility and would be changed on the next major release of OpenStack SDK.
It's made to be compatible with the old OpenStack installations where the 2nd version of Cinder was also installed.
Check your service name and type. New installations would use ``cinder`` name and ``block-storage`` type.

.. osdoc:: https://docs.openstack.org/api-ref/block-storage/v3/

.. toctree::
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/create.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->createSnapshot([
'volumeId' => '{volumeId}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->getSnapshot('{snapshotId}');
$snapshot->delete();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/get.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->getSnapshot('{snapshotId}');
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/get_metadata.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$metadata = $service->getSnapshot('{snapshotId}')
->getMetadata();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshots = $service->listSnapshots();

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/list_detail.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshots = $service->listSnapshots(true);

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/list_sorted.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshots = $service->listSnapshots(false, ['sortKey' => '{sortKey}', 'sortDir' => '{sortDir}']);

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/merge_metadata.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->getSnapshot('{snapshotId}');

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/reset_metadata.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->getSnapshot('{snapshotId}');

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/snapshots/update.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'scope' => ['project' => ['id' => '{projectId}']]
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$snapshot = $service->getSnapshot('{snapshotId}');

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volume_types/create.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
,
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumeType = $service->createVolumeType([
'name' => '{name}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volume_types/delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
,
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumeType = $service->getVolumeType('{volumeTypeId}');
$volumeType->delete();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volume_types/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
,
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumeTypes = $service->listVolumeTypes();

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volume_types/read.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
,
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumeType = $service->getVolumeType('{volumeTypeId}');
$volumeType->retrieve();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volume_types/update.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
,
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumeType = $service->getVolumeType('{volumeTypeId}');
$volumeType->name = '{newName}';
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/create.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->createVolume([
'description' => '{description}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/create_from_image.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->createVolume([
'description' => '{description}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/create_from_snapshot.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->createVolume([
'description' => '{description}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/create_from_volume.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->createVolume([
'description' => '{description}',
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->getVolume('{volumeId}');
$volume->delete();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volumes = $service->listVolumes();

Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/list_detail.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

foreach ($service->listVolumes(true) as $volume) {
/** @var $volume \OpenStack\BlockStorage\v2\Models\Volume */
Expand Down
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/read.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->getVolume('{volumeId}');
$volume->retrieve();
2 changes: 1 addition & 1 deletion samples/BlockStorage/v3/volumes/update.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
],
]);

$service = $openstack->blockStorageV3();
$service = $openstack->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);

$volume = $service->getVolume('{volumeId}');

Expand Down
3 changes: 3 additions & 0 deletions src/Images/v2/Models/Image.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
use OpenStack\Common\Resource\Alias;
use OpenStack\Common\Resource\Creatable;
use OpenStack\Common\Resource\Deletable;
use OpenStack\Common\Resource\HasWaiterTrait;
use OpenStack\Common\Resource\Listable;
use OpenStack\Common\Resource\OperatorResource;
use OpenStack\Common\Resource\Retrievable;
Expand All @@ -20,6 +21,8 @@
*/
class Image extends OperatorResource implements Creatable, Listable, Retrievable, Deletable
{
use HasWaiterTrait;

/** @var string */
public $status;

Expand Down
2 changes: 1 addition & 1 deletion tests/sample/Images/v2/ImageTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public function testCreate(): Image
'{tag1}' => 'ubuntu',
'{tag2}' => 'test',
'{containerFormat}' => 'bare',
'{diskFormat}' => 'qcow2',
'{diskFormat}' => 'raw',
'{visibility}' => 'private',
]
);
Expand Down
2 changes: 1 addition & 1 deletion tests/sample/TestCase.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ protected function getCachedService(string $serviceType): AbstractService
$service = $this->getOpenStack()->blockStorageV2();
break;
case \OpenStack\BlockStorage\v3\Service::class:
$service = $this->getOpenStack()->blockStorageV3();
$service = $this->getOpenStack()->blockStorageV3(['catalogName' => 'cinder', 'catalogType' => 'block-storage']);
break;
case \OpenStack\Compute\v2\Service::class:
$service = $this->getOpenStack()->computeV2();
Expand Down
Loading