Puppet Class: kubeinstall::runtime::crio::install

Defined in:
manifests/runtime/crio/install.pp

Summary

CRI-O packages installation

Overview

CRI-O packages installation

Examples:

include kubeinstall::runtime::crio::install

Parameters:

  • crio_version (Variant[ Enum['installed', 'latest'], Pattern[/^1\.[0-9]+\.[0-9]+(~[0-9]+)?$/] ]) (defaults to: $kubeinstall::crio_version)

    CRI-O version to install (or installed, latest)

  • crio_runc_version (String) (defaults to: $kubeinstall::crio_runc_version)

    CRI-O runc version (could be also installed, latest, absent)



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
44
45
46
47
48
49
50
51
52
53
# File 'manifests/runtime/crio/install.pp', line 13

class kubeinstall::runtime::crio::install (
  Variant[
    Enum['installed', 'latest'],
    Pattern[/^1\.[0-9]+\.[0-9]+(~[0-9]+)?$/]
  ] $crio_version = $kubeinstall::crio_version,
  String $crio_runc_version = $kubeinstall::crio_runc_version,
) {
  include kubeinstall::repos::crio
  include bsys::systemctl::daemon_reload

  $osname = $facts['os']['name']
  $version_data  = split($crio_version, '[~]')

  if $osname == 'Ubuntu' {
    if $version_data[1] {
      $os_crio_version = $crio_version
    }
    else {
      $os_crio_version = "${crio_version}~0"
    }
  }
  else {
    $os_crio_version = $crio_version
  }

  package { 'cri-o':
    ensure  => $os_crio_version,
    notify  => Class['bsys::systemctl::daemon_reload'],
    require => Class['kubeinstall::repos::crio'],
  }

  if $facts['os']['family'] == 'Debian' {
    package { 'cri-o-runc':
      ensure => $crio_runc_version,
      before => Package['cri-o'],
    }

    # fix sequence of repository update and package installation
    Class['apt::update'] -> Package['cri-o-runc']
  }
}