Skip to content

Conversation

@4t8dd
Copy link
Contributor

@4t8dd 4t8dd commented Nov 30, 2025

Create a dedicated package for container image constants used across e2e tests to provide a single source of truth for image versions.

Each image is now defined with three constants:

  • imageURL: base image path (unexported)
  • imageTag: version tag (unexported)
  • Image: combined reference (exported)

This structure makes version updates simpler by allowing changes to only the tag constant while keeping the base URL unchanged.

Updated test files:

  • test/e2e/telemetry_metrics_validation_e2e_test.go
  • test/e2e/thv-operator/virtualmcp/helpers.go
  • test/e2e/thv-operator/virtualmcp/virtualmcp_discovered_mode_test.go
  • test/e2e/thv-operator/virtualmcp/virtualmcp_inline_auth_test.go
  • test/e2e/thv-operator/virtualmcp/virtualmcp_tokenexchange_test.go

Fixes #2786

@github-actions github-actions bot added the size/XS Extra small PR: < 100 lines changed label Nov 30, 2025
@codecov
Copy link

codecov bot commented Nov 30, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 56.53%. Comparing base (cb8a1df) to head (e98aba1).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2811   +/-   ##
=======================================
  Coverage   56.53%   56.53%           
=======================================
  Files         319      319           
  Lines       30885    30885           
=======================================
+ Hits        17460    17462    +2     
+ Misses      11932    11930    -2     
  Partials     1493     1493           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Create a dedicated package for container image constants used across
e2e tests to provide a single source of truth for image versions.

Each image is now defined with three constants:
- imageURL: base image path (unexported)
- imageTag: version tag (unexported)
- Image: combined reference (exported)

This structure makes version updates simpler by allowing changes to
only the tag constant while keeping the base URL unchanged.

Updated test files:
- test/e2e/telemetry_metrics_validation_e2e_test.go
- test/e2e/thv-operator/virtualmcp/helpers.go
- test/e2e/thv-operator/virtualmcp/virtualmcp_discovered_mode_test.go
- test/e2e/thv-operator/virtualmcp/virtualmcp_inline_auth_test.go
- test/e2e/thv-operator/virtualmcp/virtualmcp_tokenexchange_test.go

Fixes stacklok#2786

Signed-off-by: 4t8dd <[email protected]>
@4t8dd 4t8dd force-pushed the issue-2786-centralize-e2e-images branch from 6c68f73 to e98aba1 Compare November 30, 2025 05:19
@github-actions github-actions bot added size/XS Extra small PR: < 100 lines changed and removed size/XS Extra small PR: < 100 lines changed labels Nov 30, 2025
@4t8dd
Copy link
Contributor Author

4t8dd commented Nov 30, 2025

@JAORMX could you please help rerun the CI job? I can run this command to get the image without any problem.

Copy link
Contributor

@jhrozek jhrozek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

Would you be interested to contributing another enhancement @4t8dd ? When reading your code I learned that renovate, that we already use, might support bumping the images if we decorate the code:

https://docs.renovatebot.com/configuration-options/#matchstrings
https://docs.renovatebot.com/modules/manager/regex/

I'd be happy to file an issue. Anyway, acking, thanks for the contribution.


// YardstickImage is the container image for the yardstick MCP server
const YardstickImage = "ghcr.io/stackloklabs/yardstick/yardstick-server:0.0.2"
const YardstickImage = images.YardstickServerImage
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we could get away with this constant now and use images.YardstickServerImage instead?

PythonImage = pythonImageURL + ":" + pythonImageTag

curlImageURL = "curlimages/curl"
curlImageTag = "latest"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a follow-up, could we migrate from using latest and pin to a version?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XS Extra small PR: < 100 lines changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Centralize MCP images used in e2e tests into a dedicated package

2 participants