hashicorp / hashicorp/packer-plugin-openstack

Error initializing block storage client with Openstack 2026.1

Open
#162 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Go
Stars
29
Forks
26
PR merge metrics
No merged PRs in 30d

Description

#### Overview of the Issue

With the 2026.1 (Gazpacho) release, cinder dropped the `volumev3` endpoint.
It needs to be fetched from the endpoint list instead of hardcoded.

The error is `Error initializing block storage client: No suitable endpoint could be found in the service catalog.`

#### Reproduction Steps

After the upgrade of a cloud to 2026.1, `packer build` will fail when it previously worked:

```
# PACKER_LOG=1 /usr/bin/packer build openstack.pkr.hcl
(...)
openstack.openhpc: output will be in this color.

2026/08/25 15:40:35 Running builder: openstack
2026/08/25 15:40:35 [INFO] (telemetry) Starting builder openstack.openhpc
==> openstack.openhpc: Loading flavor: general.v1.small
2026/08/25 15:40:35 packer-plugin-openstack_v1.1.4_x5.0_linux_amd64 plugin: 2026/08/25 15:40:35 [INFO] Loading flavor by ID: general.v1.small
2026/08/25 15:40:35 packer-plugin-openstack_v1.1.4_x5.0_linux_amd64 plugin: 2026/08/25 15:40:35 [ERROR] Failed to find flavor by ID: Resource not found
2026/08/25 15:40:35 packer-plugin-openstack_v1.1.4_x5.0_linux_amd64 plugin: 2026/08/25 15:40:35 [INFO] Loading flavor by name: general.v1.small
==> openstack.openhpc: Verified flavor. ID: d7d3ab48-3948-4140-a690-60626ed3cabe
==> openstack.openhpc: Using existing SSH private key
==> openstack.openhpc: Using existing SSH private key
==> openstack.openhpc: Error initializing block storage client: No suitable endpoint could be found in the service catalog.
==> openstack.openhpc: Step "StepCreateVolume" failed
==> openstack.openhpc: [c] Clean up and exit, [a] abort without cleanup, or [r] retry step (build may fail even if retry succeeds)?
```

### Plugin and Packer version

Packer v1.16.0
packer-plugin-openstack v1.1.4

### Simplified Packer Buildfile

```
packer {
required_plugins {
openstack = {
version = ">= 1.0.0"
source = "github.com/hashicorp/openstack"
}
}
}
source "openstack" "openhpc" {

flavor = "en1.small"
use_blockstorage_volume = true
volume_type = "ssd"
volume_size = 20
volume_name = "my-image-xxx"

# Input image:
source_image = "xxxx"
source_image_name = "rl-98"

# Output image:
image_disk_format = "raw"
}

build {

source "source.openstack.openhpc" {
image_name = "my-image-xxx"
}

}
```

### Log Fragments and crash.log files

Openstack endpoints on 2025.1
```
$ openstack endpoint list | grep cinder
| uuid1 | RegionOne | cinderv3 | volumev3 | True | public | https://my.cloud.local/v3/%(tenant_id)s |
| uuid2 | RegionOne | cinder | block-storage | True | public | https://my.cloud.local/v3 |
| uuid3 | RegionOne | cinderv3 | volumev3 | True | internal | https://my.cloud.private.ip:8776/v3/%(tenant_id)s |
| uuid4 | RegionOne | cinder | block-storage | True | internal | https://my.cloud.private.ip:8776/v3
```

Openstack endpoints on 2026.1
```
| uuid5 | RegionOne | cinder | block-storage | True | public | https://my.cloud.private.ip:8776/v3 |
| uuid6 | RegionOne | cinder | block-storage | True | internal | https://my.cloud.private.ip:8776/v3
```

==> volumev3 endpoints have been removed, must switch to block-storage

Contributor guide

Open the contributing guide

Research direction

Start at the StepCreateVolume failure and the block storage client initialization, then trace how the service catalog endpoint is selected. Reproduce with the supplied Packer build against OpenStack 2026.1; done means block storage initializes using the available block-storage endpoint instead of requiring volumev3.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cloud
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.