Kubernetes::Client
Inherits Reference / Object
Constructors
new(server : URI, token_file : Path, certificate_file : String = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt", client_cert_file : String | Nil = nil, private_key_file : String | Nil = nil, log = Log.for("kubernetes.client"))
Sourcenew(server : URI, token : Proc(String) = -> do
(File.read("/var/run/secrets/kubernetes.io/serviceaccount/token")).strip
end, certificate_file : String = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt", client_cert_file : String | Nil = nil, private_key_file : String | Nil = nil, log = Log.for("kubernetes.client"))
Sourcenew
Sourcenew(*, server : URI = URI.parse("https://#{ENV["KUBERNETES_SERVICE_HOST"]}:#{ENV["KUBERNETES_SERVICE_PORT"]}"), token : Proc(String) = -> do
(File.read("/var/run/secrets/kubernetes.io/serviceaccount/token")).strip
end, tls : OpenSSL::SSL::Context::Client | Nil, log : Log = Log.for("kubernetes.client"))
SourceClass methods
from_config(config : Config, *, context context_name : String = config.current_context)
Sourcefrom_config(*, file : String = "#{ENV["HOME"]?}/.kube/config", context context_name : String | Nil = nil)
SourceInstance methods
api_resources(group : String)
Sourceapis
Sourceapply_cronjob(resource : Resource(CronJob), spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_cronjob(metadata : NamedTuple | Metadata, api_version : String = "batch/v1", kind : String = "CronJob", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_deployment(resource : Deployment, spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_deployment(metadata : NamedTuple | Metadata, api_version : String = "apps/v1", kind : String = "Deployment", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_ingress(resource : Resource(Networking::Ingress), spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_ingress(metadata : NamedTuple | Metadata, api_version : String = "networking.k8s.io/v1", kind : String = "Ingress", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_job(resource : Resource(Job), spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_job(metadata : NamedTuple | Metadata, api_version : String = "batch/v1", kind : String = "Job", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_persistentvolumeclaim(resource : Resource(JSON::Any), spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_persistentvolumeclaim(metadata : NamedTuple | Metadata, api_version : String = "/v1", kind : String = "PersistentVolumeClaim", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_pod(resource : Pod, spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_pod(metadata : NamedTuple | Metadata, api_version : String = "/v1", kind : String = "Pod", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_service(resource : Service, spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_service(metadata : NamedTuple | Metadata, api_version : String = "/v1", kind : String = "Service", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceapply_statefulset(resource : Resource(StatefulSet), spec, name : String = resource.metadata.name, namespace : String | Nil = resource.metadata.namespace, force : Bool = false, field_manager : String | Nil = nil)
Sourceapply_statefulset(metadata : NamedTuple | Metadata, api_version : String = "apps/v1", kind : String = "StatefulSet", force : Bool = false, field_manager : String | Nil = nil, **kwargs)
Sourceclose
Sourcecronjob(name : String, namespace : String = "default", resource_version : String = "")
Sourcecronjobs(namespace : String | Nil = "default", label_selector = nil)
Sourcedelete(path : String, headers = HTTP::Headers.new)
Sourcedelete_cronjob(resource : Resource(CronJob))
Sourcedelete_cronjob(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_deployment(resource : Deployment)
Sourcedelete_deployment(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_ingress(resource : Resource(Networking::Ingress))
Sourcedelete_ingress(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_job(resource : Resource(Job))
Sourcedelete_job(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_persistentvolumeclaim(resource : Resource(JSON::Any))
Sourcedelete_persistentvolumeclaim(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_pod(resource : Pod)
Sourcedelete_pod(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_service(resource : Service)
Sourcedelete_service(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedelete_statefulset(resource : Resource(StatefulSet))
Sourcedelete_statefulset(name : String, namespace : String = "default", *, propagation_policy : PropagationPolicy = :background)
Sourcedeployment(name : String, namespace : String = "default", resource_version : String = "")
Sourcedeployments(namespace : String | Nil = "default", label_selector = nil)
Sourceget(path : String, headers = HTTP::Headers.new, *, as type : T.class) : T | Nil forall T
Sourceget(path : String, headers = HTTP::Headers.new, &)
Sourceingress(name : String, namespace : String = "default", resource_version : String = "")
Sourceingresses(namespace : String | Nil = "default", label_selector = nil)
Sourcejob(name : String, namespace : String = "default", resource_version : String = "")
Sourcejobs(namespace : String | Nil = "default", label_selector = nil)
Sourceon_close
Register a callback to be invoked when the client is closed. Used for cleanup of resources like TokenFileWatcher.
patch(path : String, body, headers = HTTP::Headers.new)
Sourcepatch_cronjob(name : String, namespace, **kwargs)
Sourcepatch_cronjob_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_deployment(name : String, namespace, **kwargs)
Sourcepatch_deployment_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_ingress(name : String, namespace, **kwargs)
Sourcepatch_ingress_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_job(name : String, namespace, **kwargs)
Sourcepatch_job_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_persistentvolumeclaim(name : String, namespace, **kwargs)
Sourcepatch_persistentvolumeclaim_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_pod(name : String, namespace, **kwargs)
Sourcepatch_pod_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_service(name : String, namespace, **kwargs)
Sourcepatch_service_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepatch_statefulset(name : String, namespace, **kwargs)
Sourcepatch_statefulset_subresource(name : String, subresource : String, namespace : String = "default", **args)
Sourcepersistentvolumeclaim(name : String, namespace : String = "default", resource_version : String = "")
Sourcepersistentvolumeclaims(namespace : String | Nil = "default", label_selector = nil)
Sourcepod(name : String, namespace : String = "default", resource_version : String = "")
Sourcepods(namespace : String | Nil = "default", label_selector = nil)
Sourceput(path : String, body, headers = HTTP::Headers.new)
Sourceraw_patch(path : String, body, headers = HTTP::Headers.new)
Sourceservice(name : String, namespace : String = "default", resource_version : String = "")
Sourceservices(namespace : String | Nil = "default", label_selector = nil)
Sourcestatefulset(name : String, namespace : String = "default", resource_version : String = "")
Sourcestatefulsets(namespace : String | Nil = "default", label_selector = nil)
Sourcewatch_cronjobs(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_deployments(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_ingresses(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_jobs(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_persistentvolumeclaims(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_pods(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_services(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Sourcewatch_statefulsets(resource_version = "0", timeout : Time::Span = 10.minutes, namespace : String | Nil = nil, labels label_selector : String = "", &)
Source