Puppet Class: kubernetes_addons::nginx_ingress

Inherits:
::kubernetes_addons::params
Defined in:
manifests/nginx_ingress.pp

Overview

Parameters:

  • image (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_image)
  • version (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_version)
  • request_cpu (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_request_cpu)
  • request_mem (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_request_mem)
  • limit_cpu (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_limit_cpu)
  • limit_mem (Any) (defaults to: $::kubernetes_addons::params::nginx_ingress_limit_mem)
  • namespace (Any) (defaults to: $::kubernetes_addons::params::namespace)
  • replicas (Any) (defaults to: undef)
  • host_port (Any) (defaults to: false)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'manifests/nginx_ingress.pp', line 1

class kubernetes_addons::nginx_ingress(
  $image=$::kubernetes_addons::params::nginx_ingress_image,
  $version=$::kubernetes_addons::params::nginx_ingress_version,
  $request_cpu=$::kubernetes_addons::params::nginx_ingress_request_cpu,
  $request_mem=$::kubernetes_addons::params::nginx_ingress_request_mem,
  $limit_cpu=$::kubernetes_addons::params::nginx_ingress_limit_cpu,
  $limit_mem=$::kubernetes_addons::params::nginx_ingress_limit_mem,
  $namespace=$::kubernetes_addons::params::namespace,
  $replicas=undef,
  $host_port=false,
) inherits ::kubernetes_addons::params {
  require ::kubernetes
  require ::kubernetes_addons::default_backend

  $deployment_name = 'nginx-ingress-lb'

  $authorization_mode = $::kubernetes::_authorization_mode
  if member($authorization_mode, 'RBAC'){
    $rbac_enabled = true
  } else {
    $rbac_enabled = false
  }

  if versioncmp($::kubernetes::version, '1.6.0') >= 0 {
    $version_before_1_6 = false
  } else {
    $version_before_1_6 = true
  }

  kubernetes::apply{'nginx-ingress':
    manifests => [
      template('kubernetes_addons/nginx-ingress-svc.yaml.erb'),
      template('kubernetes_addons/nginx-ingress-deployment.yaml.erb'),
      template('kubernetes_addons/nginx-ingress-rbac.yaml.erb'),
    ],
  }
}