{-# LANGUAGE DataKinds #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE ImportQualifiedPost #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-duplicate-exports #-} {-# OPTIONS_GHC -fno-warn-name-shadowing #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- | -- Module : Gogol.Container.Projects.Locations.Clusters.Delete -- Copyright : (c) 2015-2025 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Toni Cebrián -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Deletes the cluster, including the Kubernetes endpoint and all worker nodes. Firewalls and routes that were configured during cluster creation are also deleted. Other Google Compute Engine resources that might be in use by the cluster, such as load balancer resources, are not deleted if they weren\'t present when the cluster was initially created. -- -- /See:/ for @container.projects.locations.clusters.delete@. module Gogol.Container.Projects.Locations.Clusters.Delete ( -- * Resource ContainerProjectsLocationsClustersDeleteResource, -- ** Constructing a Request ContainerProjectsLocationsClustersDelete (..), newContainerProjectsLocationsClustersDelete, ) where import Gogol.Container.Types import Gogol.Prelude qualified as Core -- | A resource alias for @container.projects.locations.clusters.delete@ method which the -- 'ContainerProjectsLocationsClustersDelete' request conforms to. type ContainerProjectsLocationsClustersDeleteResource = "v1" Core.:> Core.Capture "name" Core.Text Core.:> Core.QueryParam "$.xgafv" Xgafv Core.:> Core.QueryParam "access_token" Core.Text Core.:> Core.QueryParam "callback" Core.Text Core.:> Core.QueryParam "clusterId" Core.Text Core.:> Core.QueryParam "projectId" Core.Text Core.:> Core.QueryParam "uploadType" Core.Text Core.:> Core.QueryParam "upload_protocol" Core.Text Core.:> Core.QueryParam "zone" Core.Text Core.:> Core.QueryParam "alt" Core.AltJSON Core.:> Core.Delete '[Core.JSON] Operation -- | Deletes the cluster, including the Kubernetes endpoint and all worker nodes. Firewalls and routes that were configured during cluster creation are also deleted. Other Google Compute Engine resources that might be in use by the cluster, such as load balancer resources, are not deleted if they weren\'t present when the cluster was initially created. -- -- /See:/ 'newContainerProjectsLocationsClustersDelete' smart constructor. data ContainerProjectsLocationsClustersDelete = ContainerProjectsLocationsClustersDelete { -- | V1 error format. xgafv :: (Core.Maybe Xgafv), -- | OAuth access token. accessToken :: (Core.Maybe Core.Text), -- | JSONP callback :: (Core.Maybe Core.Text), -- | Deprecated. The name of the cluster to delete. This field has been deprecated and replaced by the name field. clusterId :: (Core.Maybe Core.Text), -- | The name (project, location, cluster) of the cluster to delete. Specified in the format @projects\/*\/locations\/*\/clusters\/*@. name :: Core.Text, -- | Deprecated. The Google Developers Console . This field has been deprecated and replaced by the name field. projectId :: (Core.Maybe Core.Text), -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\"). uploadType :: (Core.Maybe Core.Text), -- | Upload protocol for media (e.g. \"raw\", \"multipart\"). uploadProtocol :: (Core.Maybe Core.Text), -- | Deprecated. The name of the Google Compute Engine in which the cluster resides. This field has been deprecated and replaced by the name field. zone :: (Core.Maybe Core.Text) } deriving (Core.Eq, Core.Show, Core.Generic) -- | Creates a value of 'ContainerProjectsLocationsClustersDelete' with the minimum fields required to make a request. newContainerProjectsLocationsClustersDelete :: -- | The name (project, location, cluster) of the cluster to delete. Specified in the format @projects\/*\/locations\/*\/clusters\/*@. See 'name'. Core.Text -> ContainerProjectsLocationsClustersDelete newContainerProjectsLocationsClustersDelete name = ContainerProjectsLocationsClustersDelete { xgafv = Core.Nothing, accessToken = Core.Nothing, callback = Core.Nothing, clusterId = Core.Nothing, name = name, projectId = Core.Nothing, uploadType = Core.Nothing, uploadProtocol = Core.Nothing, zone = Core.Nothing } instance Core.GoogleRequest ContainerProjectsLocationsClustersDelete where type Rs ContainerProjectsLocationsClustersDelete = Operation type Scopes ContainerProjectsLocationsClustersDelete = '[CloudPlatform'FullControl] requestClient ContainerProjectsLocationsClustersDelete {..} = go name xgafv accessToken callback clusterId projectId uploadType uploadProtocol zone (Core.Just Core.AltJSON) containerService where go = Core.buildClient ( Core.Proxy :: Core.Proxy ContainerProjectsLocationsClustersDeleteResource ) Core.mempty