operator-framework / operator-framework/operator-controller
Clean up collision error format and provide context specifc error in the case of duplicate package installation
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 213
- Forks
- 85
- Avg merge
- 2d 1m
- Merged PRs (30d)
- 38
Description
The discussion in the PR introducing a duplication package installation regression e2e test, the suggestion was given that a better more context specific error message be provided for the user in the case of duplicate package installation.
As things are now, duplicate package installation is detected through the COS conflict behavior. Resource conflicts can happen in different contexts, e.g. preexisting cluster resources, foreign controller resource takeover, etc.
We could address duplicate installation through a check against existing CEs even before engaging with the resolver (although there could be an inherent race condition here that would put the onus anyway on conflict detection). We should also consider compressing the conflict error message as it is quite verbose and perhaps detect somehow whether the conflict is related to attempting to install a package that is already being handled by another ClusterExtension.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the duplicate package installation regression e2e test discussed in PR #2764 and trace the existing COS conflict handling. Compare the proposed existing-ClusterExtension check with conflict detection, including the possible race. Done means duplicate installation has a concise, context-specific error without obscuring other resource conflicts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100