Skip to content

[BUG] Upgrade test framework does not support single-image provider build #279

Description

@gergely-szabo-sap

Describe the bug
The upgrade test framework (test/upgrade/) assumes the provider is built as two separate Docker images (package image + controller image). It requires both crossplane/provider-cloudfoundry and crossplane/provider-cloudfoundry-controller keys in the UUT_IMAGES JSON environment variable. When running upgrade tests against a single-image provider build, the framework fails because the controller image key is missing and image pull/load operations attempt to fetch a non-existent image.

Tested with Provider Version
v1.1.0

To Reproduce
Steps to reproduce the behavior:

  1. Build the provider using the single-image pattern
  2. Set UPGRADE_TEST_FROM_TAG=v1.1.0 and UPGRADE_TEST_TO_TAG=local
  3. Set UUT_IMAGES to a JSON containing only the single provider image (no controller key)
  4. Run make test-upgrade
  5. See the test panic with "failed to unmarshal json from UUT_IMAGE" or fail pulling/loading the missing controller image

Expected behavior
The upgrade test framework should detect whether a single-image or two-image layout is in use and adapt accordingly — skipping the controller image pull and load when the provider uses the single-image pattern.

Screenshots
N/A

Additional context
The single-image provider build support was introduced recently. The two-image layout still works, so this only affects users who build with the single-image pattern.

Metadata

Metadata

Assignees

Labels

CFCF Providerkind/bugpriority/mediumFeature is broken, workaround available

Type

Fields

No fields configured for Bug.

Projects

Status
Ready for Sprints

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions