Puppet Class: kubeinstall::install

Defined in:
manifests/install.pp

Summary

A short summary of the purpose of this class

Overview

A description of what this class does

Examples:

include kubeinstall::install

Parameters:

  • kubernetes_version (Kubeinstall::VersionPrefix) (defaults to: $kubeinstall::kubernetes_version)
  • kubeadm_version (Kubeinstall::VersionPrefix) (defaults to: $kubeinstall::kubeadm_version)


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
38
39
40
41
42
43
# File 'manifests/install.pp', line 7

class kubeinstall::install (
  Kubeinstall::VersionPrefix $kubernetes_version = $kubeinstall::kubernetes_version,
  Kubeinstall::VersionPrefix $kubeadm_version    = $kubeinstall::kubeadm_version,
) {
  include kubeinstall::repos
  include bsys::systemctl::daemon_reload

  # if we do not know exect versions for Ubuntu  OS - use patterns
  if $facts['os']['name'] == 'Ubuntu' and $kubernetes_version =~ Kubeinstall::Version {
    $kubernetes_version_pattern = "${kubernetes_version}-00"
  }
  else {
    $kubernetes_version_pattern = $kubernetes_version
  }

  if $facts['os']['name'] == 'Ubuntu' and $kubeadm_version =~ Kubeinstall::Version {
    $kubeadm_version_pattern = "${kubeadm_version}-00"
  }
  else {
    $kubeadm_version_pattern = $kubeadm_version
  }

  # https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl
  package {
    default:
      ensure  => $kubernetes_version_pattern,
      require => Class['kubeinstall::repos'],
      ;
    'kubeadm':
      ensure  => $kubeadm_version_pattern,
      ;
    'kubelet':
      notify => Class['bsys::systemctl::daemon_reload'],
      ;
    'kubectl': ;
  }
}