DigitalOcean.KubernetesCluster (digital_ocean v0.1.0)

Link to this section Summary

Functions

Create a Kubernetes cluster.

Create a node pool for a Kubernetes cluster.

Delete a Kubernetes cluster.

Delete a node from a Kubernetes cluster.

Delete a node pool from a Kubernetes cluster.

Retrieve a Kubernetes cluster.

Retrieve clusterlint diagnostics for a Kubernetes cluster.

Retrieve credentials for a Kubernetes cluster.

Retrieve the kubeconfig for a Kubernetes cluster.

Retrieve a node pool for a Kubernetes cluster.

Retrieve supported Kubernetes versions, available regions and available node sizes.

Retrieve available updates for a cluster.

Retrieve a list of Kubernetes clusters.

Retrieve a list of node pools for a Kubernetes cluster.

Run clusterlink checks on a Kubernetes cluster.

Update a Kubernetes cluster.

Update a node pool for a Kubernetes cluster.

Update a Kubernetes cluster to a newer patch release of Kubernetes.

Link to this section Functions

Specs

Create a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.create(
...>   name: "prod-cluster-01",
...>   region: "nyc1",
...>   version: "1.14.1-do.4",
...>   tags: ["production", "web-team"],
...>   node_pools: [
...>     %{
...>       size: "s-1vcpu-2gb",
...>       count: 3,
...>       name: "frontend-pool",
...>       tags: ["frontend"],
...>       labels: %{
...>         service: "frontend",
...>         priority: "hi"
...>       }
...>     }
...>   ]
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

create_node_pool(cluster_id, opts)

Specs

create_node_pool(String.t(), Keyword.t()) :: DigitalOcean.Operation.t()

Create a node pool for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.create_node_pool(
...>   "d5f5959-5e1e-4205-a714-a914373942af",
...>   size: "s-2vcpu-4gb",
...>   count: 1,
...>   name: "pool-02",
...>   tags: ["web"],
...>   labels: %{
...>     service: "web",
...>     priority: "high"
...>   }
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

delete(cluster_id)

Specs

Delete a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.delete("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

delete_node(cluster_id, node_pool_id, node_id, opts \\ [])

Specs

Delete a node from a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.delete_node(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   "86c9bc8c-b2c3-4d40-8000-b0c7bee27305",
...>   "478247f8-b1bb-4f7a-8db9-2a5f8d4b8f8f",
...>   skip_drain: 0,
...>   replace: 1
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

delete_node_pool(cluster_id, node_pool_id)

Specs

delete_node_pool(String.t(), String.t()) :: DigitalOcean.Operation.t()

Delete a node pool from a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.delete_node_pool(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   "86c9bc8c-b2c3-4d40-8000-b0c7bee27305"
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get(cluster_id)

Specs

Retrieve a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get_clusterlint_diagnostics(cluster_id, opts \\ [])

Specs

get_clusterlint_diagnostics(String.t(), Keyword.t()) ::
  DigitalOcean.Operation.t()

Retrieve clusterlint diagnostics for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get_clusterlint_diagnostics("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get_credentials(cluster_id)

Specs

get_credentials(String.t()) :: DigitalOcean.Operation.t()

Retrieve credentials for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get_credentials("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get_kubeconfig(cluster_id)

Specs

get_kubeconfig(String.t()) :: DigitalOcean.Operation.t()

Retrieve the kubeconfig for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get_kubeconfig("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get_node_pool(cluster_id, node_pool_id)

Specs

get_node_pool(String.t(), String.t()) :: DigitalOcean.Operation.t()

Retrieve a node pool for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get_node_pool(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   "cdda885e-7663-40c8-bc74-3a036c66545d"
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }

Specs

get_options() :: DigitalOcean.Operation.t()

Retrieve supported Kubernetes versions, available regions and available node sizes.

Examples

iex> DigitalOcean.KubernetesCluster.get_options()
{ :ok, %DigitalOcean.Response{} }
Link to this function

get_upgrades(cluster_id)

Specs

get_upgrades(String.t()) :: DigitalOcean.Operation.t()

Retrieve available updates for a cluster.

Examples

iex> DigitalOcean.KubernetesCluster.get_upgrades("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

list(opts \\ [])

Specs

Retrieve a list of Kubernetes clusters.

Examples

iex> DigitalOcean.KubernetesCluster.lists() |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

list_node_pools(cluster_id, opts \\ [])

Specs

list_node_pools(String.t(), Keyword.t()) :: DigitalOcean.Operation.t()

Retrieve a list of node pools for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.list_node_pools("bd5f5959-5e1e-4205-a714-a914373942af") |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

run_clusterlint(cluster_id, opts \\ [])

Specs

run_clusterlint(String.t(), Keyword.t()) :: DigitalOcean.Operation.t()

Run clusterlink checks on a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.run_clusterlint(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   include_groups: ["basic"],
...>   include_checks: "bare-pods"
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

update(cluster_id, opts)

Specs

Update a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.update(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   name: "stage-cluster-01",
...>   tags: ["staging", "web-team"]
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

update_node_pool(cluster_id, node_pool_id, opts)

Specs

update_node_pool(String.t(), String.t(), Keyword.t()) ::
  DigitalOcean.Operation.t()

Update a node pool for a Kubernetes cluster.

Examples

iex> DigitalOcean.KubernetesCluster.update_node_pool(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   "86c9bc8c-b2c3-4d40-8000-b0c7bee27305",
...>   name: "frontend",
...>   count: 1,
...>   tags: ["frontend"],
...>   labels: %{
...>     service: "frontend",
...>     priority: "high"
...>   }
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }
Link to this function

upgrade(cluster_id, opts)

Specs

Update a Kubernetes cluster to a newer patch release of Kubernetes.

Examples

iex> DigitalOcean.KubernetesCluster.upgrade(
...>   "bd5f5959-5e1e-4205-a714-a914373942af",
...>   version: "1.12.3-do.1"
...> ) |> DigitalOcean.request()
{ :ok, %DigitalOcean.Response{} }