Puppet Class: k8s::client

Defined in:
modules/k8s/manifests/client.pp

Summary

Class that sets up and configures kubectl

Overview

SPDX-License-Identifier: Apache-2.0

Parameters:

  • version (Optional[K8s::KubernetesVersion])

    Optional version of kubectl to install, if not set, all versions we're running clusters on are installed



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'modules/k8s/manifests/client.pp', line 4

class k8s::client (
    Optional[K8s::KubernetesVersion] $version,
) {
    if $version != undef {
        k8s::package { 'kubectl':
            package => 'client',
            version => $version,
        }
    } else {
        # Install kubectl for all k8s versions we're running
        k8s::fetch_clusters(false).map | $_, K8s::ClusterConfig $config | {
            $config['version']
        }.unique.each |$cluster_version| {
            k8s::package { "kubectl-${cluster_version}":
                package => 'client',
                version => $cluster_version,
            }
        }
    }
}