module Ingresses

Public Instance Methods

create_new_ingress(namespace, config) click to toggle source

Create new Ingress

# File lib/ruby-kubernetes-controller/ingresses.rb, line 12
def create_new_ingress(namespace, config)
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "POST")
  request.content_type = "application/json"

  if @yaml
    request.body = yaml_file_to_json(config)
  else
    request.body = config
  end

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body

  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
delete_ingress(namespace, ingress_name, options = '') click to toggle source

Delete existing Namespace

# File lib/ruby-kubernetes-controller/ingresses.rb, line 153
def delete_ingress(namespace, ingress_name, options = '')
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses/#{ingress_name}"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "DELETE")
  request.content_type = "application/json"

  if @yaml
    request.body = yaml_file_to_json(options)
  else
    request.body = options
  end

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body

  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
get_all_ingresses() click to toggle source

Get all Ingresses

# File lib/ruby-kubernetes-controller/ingresses.rb, line 40
def get_all_ingresses
  extension = "/apis/networking.k8s.io/v1beta1/ingresses"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "GET")

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body

  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
get_all_namespaced_ingresses(namespace) click to toggle source

Get all existing Ingresses in Namespace

# File lib/ruby-kubernetes-controller/ingresses.rb, line 61
def get_all_namespaced_ingresses(namespace)
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "GET")

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body

  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
get_single_namespaced_ingress(namespace, ingress_name) click to toggle source

Get single Ingress in Namespace

# File lib/ruby-kubernetes-controller/ingresses.rb, line 82
def get_single_namespaced_ingress(namespace, ingress_name)
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses/#{ingress_name}"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "GET")

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body
  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
patch_ingress(namespace, ingress_name, patch) click to toggle source

Patch existing Ingress

# File lib/ruby-kubernetes-controller/ingresses.rb, line 130
def patch_ingress(namespace, ingress_name, patch)
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses/#{ingress_name}"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "PATCH")
  request.content_type = "application/json-patch+json"

  request.body = patch

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body
  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end
update_namespaced_ingress(namespace, ingress_name, update) click to toggle source

Update existing Ingress in Namespace

# File lib/ruby-kubernetes-controller/ingresses.rb, line 102
def update_namespaced_ingress(namespace, ingress_name, update)
  extension = "/apis/networking.k8s.io/v1beta1/namespaces/#{namespace}/ingresses/#{ingress_name}"

  uri = prepareURI(@endpoint, extension)

  request = prepareGenericRequest(uri, @bearer_token, "PUT")
  request.content_type = "application/json"

  if @yaml
    request.body = yaml_file_to_json(update)
  else
    request.body = update
  end

  req_options = prepareGenericRequestOptions(@ssl, uri)

  begin
    response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
      http.request(request)
    end
    return response.body

  rescue Errno::ECONNREFUSED
    raise "Connection for host #{uri.hostname} refused"
  end
end