Update konnector developer docs#334
Conversation
Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com> On-behalf-of: @SAP karol.szwaj@sap.com
WalkthroughDocumentation and controller code were updated to replace CRD-centric reconcile flows with BoundSchema-centered sequences for APIServiceBinding and APIServiceExport. A helper was renamed from Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Reconciler as APIServiceBinding Reconciler
participant Export as APIServiceExport
participant Req as APIServiceExportRequest
participant BS as BoundSchema
participant CRD as CustomResourceDefinition
participant Status as APIServiceBinding Status
Reconciler->>Export: get APIServiceExport
alt export present
Reconciler->>Req: get APIServiceExportRequest
alt request failed
Reconciler->>Status: set connected=false (terminal)
else request ok
Reconciler->>Export: get_bound_schemas
alt bound schemas fetched
Reconciler->>BS: reference_bound_schema
Reconciler->>BS: convert_boundschema_to_crd
Reconciler->>CRD: get_crd
alt crd present
Reconciler->>CRD: update_crd / create_crd
Reconciler->>Status: set connected=true
Reconciler->>Status: set schemaInSync=true
else crd missing
Reconciler->>Status: set connected=false
end
else fetch failed
Reconciler->>Status: set connected=false
end
end
else export absent
Reconciler->>Status: set connected=false
end
sequenceDiagram
autonumber
actor Reconciler as APIServiceExport Reconciler
participant Export as APIServiceExport
participant BS as BoundSchema
participant CRD as CustomResourceDefinition
participant Summary as Summary/Conditions
Reconciler->>Export: fetch export
alt export present
Reconciler->>Export: get_bound_schemas
alt is_bound_schema_present
Reconciler->>BS: start/ensure syncer
Reconciler->>Export: get_bound_schemas (for conditions)
Reconciler->>CRD: get_crd
Reconciler->>Summary: copy_crd_conditions
Reconciler->>BS: update_bound_schema
Reconciler-->>Export: stop (complete)
else absent
Reconciler-->>Export: stop sync
end
else not present
Reconciler-->>Export: stop
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used🧠 Learnings (1)📓 Common learnings⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
🔇 Additional comments (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| is_apiserviceexport_present{"export<br>exists?"} | ||
| is_apiserviceexport_valid{"export<br>valid?"} | ||
|
|
||
| get_bound_schemas(["Get all referenced |
There was a problem hiding this comment.
Double check please where does boundschema is created now. On request path or on request implementation. And source now has to play where it comes from
There was a problem hiding this comment.
This includes only changes from servicebinding and serviceexport reconcilers.
We can also describe, if it is consumer or provider side
mjudeikis
left a comment
There was a problem hiding this comment.
I think we need more details about Request implementation now too
Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com>
mjudeikis
left a comment
There was a problem hiding this comment.
I really like @CodeRabbit generated flow charts (see PR description).
maybe we can reuse them.
|
We can convert them to sequence diagrams |
Summary
What Type of PR Is This?
/kind documentation
Related Issue(s)
Fixes #
Release Notes
Summary by CodeRabbit
Documentation
Refactor