|  | 
| 71 | 71 |     } | 
| 72 | 72 |     case $facts['os']['family'] { | 
| 73 | 73 |       'Debian': { | 
| 74 |  | -        $codename = fact('os.distro.codename') | 
| 75 | 74 |         apt::source { 'kubernetes': | 
| 76 | 75 |           location => pick($kubernetes_apt_location,"https://pkgs.k8s.io/core:/stable:/v${minor_version}/deb"), | 
| 77 | 76 |           release  => pick($kubernetes_apt_release, '/'), | 
| 78 | 77 |           repos    => $_repos, | 
| 79 |  | -          key      => { | 
| 80 |  | -            'id'     => pick($kubernetes_key_id,'DE15B14486CD377B9E876E1A234654DA9A296436'), | 
| 81 |  | -            'source' => pick($kubernetes_key_source,"https://pkgs.k8s.io/core:/stable:/v${minor_version}/deb/Release.key"), | 
| 82 |  | -          }, | 
| 83 | 78 |         } | 
| 84 | 79 | 
 | 
|  | 80 | +        if $kubernetes_apt_location =~ String[1] { | 
|  | 81 | +          Apt::Source<| title == 'kubernetes' |> { | 
|  | 82 | +            key => { | 
|  | 83 | +              'id'     => $kubernetes_key_id, | 
|  | 84 | +              'source' => $kubernetes_key_source, | 
|  | 85 | +            } | 
|  | 86 | +          } | 
|  | 87 | +        } else { | 
|  | 88 | +          # For pkgs.k8s.io use GPG siging key | 
|  | 89 | +          $_keyring = '/usr/share/keyrings/kubernetes-apt-keyring.gpg' | 
|  | 90 | +          # TODO: Switch to apt::keyring once supported by puppetlabs-apt | 
|  | 91 | +          # see: https://github.com/puppetlabs/puppetlabs-apt/pull/1128 | 
|  | 92 | +          archive { '/tmp/kubernetes-apt-keyring.gpg': | 
|  | 93 | +            source          => "https://pkgs.k8s.io/core:/stable:/v${minor_version}/deb/Release.key", | 
|  | 94 | +            extract         => true, | 
|  | 95 | +            extract_path    => '/usr/share/keyrings', | 
|  | 96 | +            extract_command => 'gpg --dearmor < %s > kubernetes-apt-keyring.gpg', | 
|  | 97 | +            creates         => $_keyring, | 
|  | 98 | +          } | 
|  | 99 | + | 
|  | 100 | +          Apt::Source<| title == 'kubernetes' |> { | 
|  | 101 | +            keyring  => $_keyring, | 
|  | 102 | +            require  => Archive['/tmp/kubernetes-apt-keyring.gpg'], | 
|  | 103 | +          } | 
|  | 104 | +        } | 
|  | 105 | + | 
|  | 106 | +        $codename = fact('os.distro.codename') | 
| 85 | 107 |         if ($container_runtime == 'docker' and $manage_docker == true) or | 
| 86 | 108 |         ($container_runtime == 'cri_containerd' and $containerd_install_method == 'package') { | 
| 87 | 109 |           apt::source { 'docker': | 
|  | 
0 commit comments