You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The KFP Operator tracks the state of custom resources using a SynchronizationState field. It also sets a condition (SynchronizationSucceeded) that aligns with that field and adds K8s events (as outlined in #74).
We want to do the same for Provider resources so they aligns with our other custom resources. In the case of Providers, the SynchronizationState will track the state of the Deployment and Service that the provider controller manages.
Possible SynchronizationState values
Creating: If the Deployment or Service don't exist (in which case the controller will create them)
Updating: If the Deployment or Service exist but don't match the desired state described on the Provider resource (in which case the controller will update them to match)
Deleting: If the Provider resource has been deleted (in which case the controller will delete the Deployment and Service)
Succeeded: If the Provider resource reconciliation has completed with no failures
Failed: If the Provider resource reconciliation has failed for any reason
Deleted: This is used on custom resources that depend on a Provider to exist (e.g. Pipelines and RunConfigurations). It is used in any of these cases:
The resource has been successfully deleted (test If the Provider resource reconciliation has completed with no failures) - Note: This is a bit confusing - why (and how?) is the state set to Deleted when the resource has been deleted?
A deletion for a resource has been requested, but there is no provider ID set on the resource, and therefore the deletion cannot be carried out (test here and here) - This case doesn't apply to Provider resources
Acceptance Criteria
The Provider controller tracks the state of provider resources. The state consists of:
Overview
The KFP Operator tracks the state of custom resources using a
SynchronizationState
field. It also sets a condition (SynchronizationSucceeded
) that aligns with that field and adds K8s events (as outlined in #74).We want to do the same for Provider resources so they aligns with our other custom resources. In the case of Providers, the
SynchronizationState
will track the state of the Deployment and Service that the provider controller manages.Possible SynchronizationState values
Creating
: If the Deployment or Service don't exist (in which case the controller will create them)Updating
: If the Deployment or Service exist but don't match the desired state described on the Provider resource (in which case the controller will update them to match)Deleting
: If the Provider resource has been deleted (in which case the controller will delete the Deployment and Service)Succeeded
: If the Provider resource reconciliation has completed with no failuresFailed
: If the Provider resource reconciliation has failed for any reasonDeleted
: This is used on custom resources that depend on a Provider to exist (e.g. Pipelines and RunConfigurations). It is used in any of these cases:Acceptance Criteria
SynchronizationState
Synchronized
conditionThe text was updated successfully, but these errors were encountered: