Skip to content
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

Fix: e2e test for re-reconcile on catalog change is not valid #945

Open
Tracked by #950
joelanford opened this issue Jun 15, 2024 · 5 comments · May be fixed by #1008
Open
Tracked by #950

Fix: e2e test for re-reconcile on catalog change is not valid #945

joelanford opened this issue Jun 15, 2024 · 5 comments · May be fixed by #1008
Assignees
Labels
kind/bug Categorizes issue or PR as related to a bug. v1.0 Issues related to the initial stable release of OLMv1

Comments

@joelanford
Copy link
Member

The TestClusterExtensionInstallReResolvesWhenNewCatalog test is not valid because it sets up a cluster extenstion that fails to resolve. This results in an exponential backoff where retries will occur whether or not a new catalog appears.

To correct this test, we need to:

  1. Create a catalog containing foo.v1.0.0, with a pollInterval set to 2s (or something very short)
  2. Create a cluster extension for foo with no channel or version specifications
  3. Wait until foo.v1.0.0 successfully installs.
  4. Update the catalog to contain foo.v2.0.0 with an upgrade edge from v1, and push the update to the same tag.
  5. After step (4) the following should happen all automatically:
    • Catalogd polls and sees a new SHA for the digest, pulls it and makes it available
    • Operator-controller sees the new catalog and re-reconciles all ClusterExtensions
    • The foo cluster extension re-resolves, finds foo.v2.0.0 and installs it.
@joelanford joelanford added kind/bug Categorizes issue or PR as related to a bug. v1.0 Issues related to the initial stable release of OLMv1 labels Jun 15, 2024
@LalatenduMohanty
Copy link

/assign

@LalatenduMohanty
Copy link

/unassign

@yashoza19
Copy link
Contributor

/assign

@yashoza19
Copy link
Contributor

@joelanford I have some concern about this test. We are currently already creating a catalog and pushing it to a local registry during e2e setup by loading all the versions of a particular bundle here.
The catalog creation is already been done here before the e2e is ran. There seems to be no way to update the catalog after the initial catalog has been build and pushed to the registry.
I though about creating 2 different catalog but that would not fit this use case as we need to update the same catalog tag for this test case.
Please let me know your suggestions on how to proceed with this issue.

@joelanford
Copy link
Member Author

During the e2e setup, we could push the catalog images with different tags, which would mean that step (4) becomes "move the tag from one image to another". And then maybe we could implement that directly in the test code?

cc @everettraven. Any other ideas?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. v1.0 Issues related to the initial stable release of OLMv1
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

3 participants