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

Adapt behaviour of KeptnAppCreationRequest controller during corner cases processing #728

Closed
2 of 7 tasks
Tracked by #514 ...
odubajDT opened this issue Jan 31, 2023 · 0 comments · Fixed by #1270
Closed
2 of 7 tasks
Tracked by #514 ...
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@odubajDT
Copy link
Contributor

odubajDT commented Jan 31, 2023

Part of #514

Pre-requisites :

Goal

Implement the controller logic to handle KeptnAppCreationRequest resources in corner cases of automatic discovery of the application.

Technical Details

Implementation of Reconcile() function of KeptnAppCreationRequest controller

Definition of behavior in corner cases:
What happens if you apply a KeptnWorkload with v1 and before the timeout also with a v2? What happens if v2 is applied after the timeout?

  • KeptnWorkload v2 applied before the timeout expired: Each of the currently present workloads will be added to the app. If there are multiple versions of the same Workload, the latest applied (by time) one will be added.
  • KeptnWorkload v2 applied after the timeout expired: A change in the version of a Workload could be interpreted as a change in the overall KeptnApp. In this case a change of KeptnApp will result that a new KeptnAppVersion with a newly computed version will be created. Noteworthy: Currently, Only the new workload will be displayed in OTel trace of new KeptnAppVersion version, all other workloads will, if unchanged be still be part of the previous KeptnAppVersion version.

Acceptance Criteria

  • KeptnAppCreationRequest controller covers corner cases

DoD

  • Implemented controller logic according to the description of corner cases
  • Unit tests
  • Component tests
  • Kuttl tests

Note

PoC of implementation available here: #559

@odubajDT odubajDT added enhancement New feature or request status: ready-for-refinement Issue is relevant for the next backlog refinment labels Jan 31, 2023
@odubajDT odubajDT added this to the 0.7 milestone Jan 31, 2023
@odubajDT odubajDT removed the status: ready-for-refinement Issue is relevant for the next backlog refinment label Feb 8, 2023
@thisthat thisthat modified the milestones: 0.7, 0.8 Feb 24, 2023
@bacherfl bacherfl self-assigned this Apr 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants