#[async_trait::async_trait]
pub trait ClusterManager: std::fmt::Debug + Send + Sync {
async fn list_clusters(
&self,
req: crate::model::ListClustersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListClustersResponse>>;
async fn get_cluster(
&self,
req: crate::model::GetClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Cluster>>;
async fn create_cluster(
&self,
req: crate::model::CreateClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn update_cluster(
&self,
req: crate::model::UpdateClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn update_node_pool(
&self,
req: crate::model::UpdateNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_node_pool_autoscaling(
&self,
req: crate::model::SetNodePoolAutoscalingRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_logging_service(
&self,
req: crate::model::SetLoggingServiceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_monitoring_service(
&self,
req: crate::model::SetMonitoringServiceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_addons_config(
&self,
req: crate::model::SetAddonsConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_locations(
&self,
req: crate::model::SetLocationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn update_master(
&self,
req: crate::model::UpdateMasterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_master_auth(
&self,
req: crate::model::SetMasterAuthRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn delete_cluster(
&self,
req: crate::model::DeleteClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn list_operations(
&self,
req: crate::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: crate::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn cancel_operation(
&self,
req: crate::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn get_server_config(
&self,
req: crate::model::GetServerConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ServerConfig>>;
async fn get_json_web_keys(
&self,
req: crate::model::GetJSONWebKeysRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GetJSONWebKeysResponse>>;
async fn list_node_pools(
&self,
req: crate::model::ListNodePoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNodePoolsResponse>>;
async fn get_node_pool(
&self,
req: crate::model::GetNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NodePool>>;
async fn create_node_pool(
&self,
req: crate::model::CreateNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn delete_node_pool(
&self,
req: crate::model::DeleteNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn complete_node_pool_upgrade(
&self,
req: crate::model::CompleteNodePoolUpgradeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn rollback_node_pool_upgrade(
&self,
req: crate::model::RollbackNodePoolUpgradeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_node_pool_management(
&self,
req: crate::model::SetNodePoolManagementRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_labels(
&self,
req: crate::model::SetLabelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_legacy_abac(
&self,
req: crate::model::SetLegacyAbacRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn start_ip_rotation(
&self,
req: crate::model::StartIPRotationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn complete_ip_rotation(
&self,
req: crate::model::CompleteIPRotationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_node_pool_size(
&self,
req: crate::model::SetNodePoolSizeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_network_policy(
&self,
req: crate::model::SetNetworkPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn set_maintenance_policy(
&self,
req: crate::model::SetMaintenancePolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>>;
async fn list_usable_subnetworks(
&self,
req: crate::model::ListUsableSubnetworksRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListUsableSubnetworksResponse>>;
async fn check_autopilot_compatibility(
&self,
req: crate::model::CheckAutopilotCompatibilityRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CheckAutopilotCompatibilityResponse>>;
async fn fetch_cluster_upgrade_info(
&self,
req: crate::model::FetchClusterUpgradeInfoRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ClusterUpgradeInfo>>;
async fn fetch_node_pool_upgrade_info(
&self,
req: crate::model::FetchNodePoolUpgradeInfoRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NodePoolUpgradeInfo>>;
}
#[async_trait::async_trait]
impl<T: super::ClusterManager> ClusterManager for T {
async fn list_clusters(
&self,
req: crate::model::ListClustersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListClustersResponse>> {
T::list_clusters(self, req, options).await
}
async fn get_cluster(
&self,
req: crate::model::GetClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Cluster>> {
T::get_cluster(self, req, options).await
}
async fn create_cluster(
&self,
req: crate::model::CreateClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::create_cluster(self, req, options).await
}
async fn update_cluster(
&self,
req: crate::model::UpdateClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::update_cluster(self, req, options).await
}
async fn update_node_pool(
&self,
req: crate::model::UpdateNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::update_node_pool(self, req, options).await
}
async fn set_node_pool_autoscaling(
&self,
req: crate::model::SetNodePoolAutoscalingRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_node_pool_autoscaling(self, req, options).await
}
async fn set_logging_service(
&self,
req: crate::model::SetLoggingServiceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_logging_service(self, req, options).await
}
async fn set_monitoring_service(
&self,
req: crate::model::SetMonitoringServiceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_monitoring_service(self, req, options).await
}
async fn set_addons_config(
&self,
req: crate::model::SetAddonsConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_addons_config(self, req, options).await
}
async fn set_locations(
&self,
req: crate::model::SetLocationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_locations(self, req, options).await
}
async fn update_master(
&self,
req: crate::model::UpdateMasterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::update_master(self, req, options).await
}
async fn set_master_auth(
&self,
req: crate::model::SetMasterAuthRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_master_auth(self, req, options).await
}
async fn delete_cluster(
&self,
req: crate::model::DeleteClusterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::delete_cluster(self, req, options).await
}
async fn list_operations(
&self,
req: crate::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListOperationsResponse>> {
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: crate::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: crate::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn get_server_config(
&self,
req: crate::model::GetServerConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ServerConfig>> {
T::get_server_config(self, req, options).await
}
async fn get_json_web_keys(
&self,
req: crate::model::GetJSONWebKeysRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GetJSONWebKeysResponse>> {
T::get_json_web_keys(self, req, options).await
}
async fn list_node_pools(
&self,
req: crate::model::ListNodePoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNodePoolsResponse>> {
T::list_node_pools(self, req, options).await
}
async fn get_node_pool(
&self,
req: crate::model::GetNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NodePool>> {
T::get_node_pool(self, req, options).await
}
async fn create_node_pool(
&self,
req: crate::model::CreateNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::create_node_pool(self, req, options).await
}
async fn delete_node_pool(
&self,
req: crate::model::DeleteNodePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::delete_node_pool(self, req, options).await
}
async fn complete_node_pool_upgrade(
&self,
req: crate::model::CompleteNodePoolUpgradeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::complete_node_pool_upgrade(self, req, options).await
}
async fn rollback_node_pool_upgrade(
&self,
req: crate::model::RollbackNodePoolUpgradeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::rollback_node_pool_upgrade(self, req, options).await
}
async fn set_node_pool_management(
&self,
req: crate::model::SetNodePoolManagementRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_node_pool_management(self, req, options).await
}
async fn set_labels(
&self,
req: crate::model::SetLabelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_labels(self, req, options).await
}
async fn set_legacy_abac(
&self,
req: crate::model::SetLegacyAbacRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_legacy_abac(self, req, options).await
}
async fn start_ip_rotation(
&self,
req: crate::model::StartIPRotationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::start_ip_rotation(self, req, options).await
}
async fn complete_ip_rotation(
&self,
req: crate::model::CompleteIPRotationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::complete_ip_rotation(self, req, options).await
}
async fn set_node_pool_size(
&self,
req: crate::model::SetNodePoolSizeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_node_pool_size(self, req, options).await
}
async fn set_network_policy(
&self,
req: crate::model::SetNetworkPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_network_policy(self, req, options).await
}
async fn set_maintenance_policy(
&self,
req: crate::model::SetMaintenancePolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Operation>> {
T::set_maintenance_policy(self, req, options).await
}
async fn list_usable_subnetworks(
&self,
req: crate::model::ListUsableSubnetworksRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListUsableSubnetworksResponse>> {
T::list_usable_subnetworks(self, req, options).await
}
async fn check_autopilot_compatibility(
&self,
req: crate::model::CheckAutopilotCompatibilityRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CheckAutopilotCompatibilityResponse>> {
T::check_autopilot_compatibility(self, req, options).await
}
async fn fetch_cluster_upgrade_info(
&self,
req: crate::model::FetchClusterUpgradeInfoRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ClusterUpgradeInfo>> {
T::fetch_cluster_upgrade_info(self, req, options).await
}
async fn fetch_node_pool_upgrade_info(
&self,
req: crate::model::FetchNodePoolUpgradeInfoRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NodePoolUpgradeInfo>> {
T::fetch_node_pool_upgrade_info(self, req, options).await
}
}