Skip to content

🌱 OPRUN-3956: Add experimental e2e tests #2064

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 3 commits into from
Jun 29, 2025

Conversation

tmshort
Copy link
Contributor

@tmshort tmshort commented Jun 29, 2025

Fix #2016

This adds manifests/experimental-e2e.yaml, and uses it to run the experimental-e2e.

The experimental-e2e is run via make test-experimental-e2e and a CI job is added to run it.

A "no-op" experimental-e2e test has been added.

This is part of the feature-gated API functionality.

Description

Reviewer Checklist

  • API Go Documentation
  • Tests: Unit Tests (and E2E Tests, if appropriate)
  • Comprehensive Commit Messages
  • Links to related GitHub Issue(s)

This adds `manifests/experimental-e2e.yaml`, and uses it to run the
experimental-e2e.

The experimental-e2e is run via `make test-experimental-e2e` and a
CI job is added to run it.

A "no-op" experimental-e2e test has been added.

This is part of the feature-gated API functionality.

Signed-off-by: Todd Short <[email protected]>
@tmshort tmshort requested a review from a team as a code owner June 29, 2025 01:13
@openshift-ci openshift-ci bot requested review from gallettilance and oceanc80 June 29, 2025 01:13
Copy link

netlify bot commented Jun 29, 2025

Deploy Preview for olmv1 ready!

Name Link
🔨 Latest commit 1a42acf
🔍 Latest deploy log https://app.netlify.com/projects/olmv1/deploys/6860bf64aae3650008143766
😎 Deploy Preview https://deploy-preview-2064--olmv1.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

camilamacedo86

This comment was marked as outdated.

@openshift-ci openshift-ci bot added lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jun 29, 2025
@camilamacedo86 camilamacedo86 removed lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jun 29, 2025
@camilamacedo86 camilamacedo86 dismissed their stale review June 29, 2025 01:46

/lgtm cancel

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 29, 2025
@camilamacedo86 camilamacedo86 removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 29, 2025
@operator-framework operator-framework deleted a comment from openshift-ci bot Jun 29, 2025
@camilamacedo86
Copy link
Contributor

/approved cancel
sorry mistake

@camilamacedo86 camilamacedo86 self-requested a review June 29, 2025 01:47
Copy link

codecov bot commented Jun 29, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 73.89%. Comparing base (f050355) to head (1a42acf).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2064      +/-   ##
==========================================
+ Coverage   73.82%   73.89%   +0.06%     
==========================================
  Files          81       81              
  Lines        7365     7365              
==========================================
+ Hits         5437     5442       +5     
+ Misses       1588     1585       -3     
+ Partials      340      338       -2     
Flag Coverage Δ
e2e 44.10% <ø> (+0.04%) ⬆️
experimental-e2e 20.14% <ø> (?)
unit 60.24% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ 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.

@@ -0,0 +1,1984 @@
apiVersion: v1
Copy link
Contributor

@camilamacedo86 camilamacedo86 Jun 29, 2025

Choose a reason for hiding this comment

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

Quick question — I noticed that before we didn’t commit the install.yaml file.
Are we planning to commit both files now? Just curious what’s changed and why we’re doing that now, if so.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

What install.yaml file are you referring to?
This does not change the existing release mechanism; those files are still created via the quickstart Makefile target.

Copy link
Contributor

Choose a reason for hiding this comment

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

But we generated it when we run target, why do we need to commit?
Can we not add those to gitignore?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I assume you're talking about manifest/experimental-e2e.yaml?
We are now checking in all the manifests for standard, experimental and e2e (look in the manifest directory). This is done on purpose (it's mentioned in the RFC, and is a continuation of #2025). It allows people (and reviewers) to easily identify the effects of any changes to the kustomize config, which can usually be hard to figure out.

Having these files committed made it very easy to do all the earlier kustomizae changes (#2063, #2061, #2060, #2059, #2057, #2056, #2055 and #2025), because I could easily see that there were no changes to the resulting manifests.

@tmshort
Copy link
Contributor Author

tmshort commented Jun 29, 2025

/approve

Copy link

openshift-ci bot commented Jun 29, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: camilamacedo86, tmshort

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [camilamacedo86,tmshort]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 29, 2025
@@ -1,6 +1,6 @@
codecov:
notify:
after_n_builds: 2
after_n_builds: 3
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this change related ?

Copy link
Contributor Author

@tmshort tmshort Jun 29, 2025

Choose a reason for hiding this comment

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

Yes, as the experimental-e2e pushes code coverage. There are three builds that do code-coverage:

  • e2e
  • unit
  • experimental-e2e

This is supposed to make codecov wait until it gets three build pushes (the above).
See: https://app.codecov.io/gh/operator-framework/operator-controller/pull/2064/flags

go-version-file: go.mod

- name: Run e2e tests
run: ARTIFACT_PATH=/tmp/artifacts make test-experimental-e2e
Copy link
Contributor

Choose a reason for hiding this comment

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

For curiosity, what was the issue that was not finding the path?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The CollectTestArtifacts() function was not being called; one of the things it does is create the /tmp/artifacts directory.


func TestNoop(t *testing.T) {
t.Log("Running experimental-e2e tests")
defer utils.CollectTestArtifacts(t, artifactName, c, cfg)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@camilamacedo86 as a side effect, this creates the /tmp/artifacts directory.

@camilamacedo86
Copy link
Contributor

camilamacedo86 commented Jun 29, 2025

/lgtm

Great work 🎉

Thank you for all explanations

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jun 29, 2025
@openshift-merge-bot openshift-merge-bot bot merged commit 6465e63 into operator-framework:main Jun 29, 2025
22 checks passed
@tmshort tmshort deleted the exp-e2e branch June 30, 2025 03:12
@tmshort tmshort changed the title 🌱 Add experimental e2e tests 🌱 OPRUN-3956: Add experimental e2e tests Jun 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create Experimental E2E Test Target
2 participants