Skip to content

Commit 9f9f0eb

Browse files
committed
(CONT-585) allow deferred function for auth password
1 parent ef68246 commit 9f9f0eb

File tree

5 files changed

+85
-67
lines changed

5 files changed

+85
-67
lines changed

REFERENCE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -626,7 +626,7 @@ the files if they do not exist.
626626
[*containerd_config_template*]
627627
The template to use for containerd configuration
628628
This value is ignored if containerd_config_source is defined
629-
Default to 'kubernetes/containerd/config.toml.erb'
629+
Default to 'kubernetes/containerd/config.toml.epp'
630630

631631
[*containerd_config_source*]
632632
The source of the containerd configuration
@@ -1946,7 +1946,7 @@ Data type: `String`
19461946

19471947

19481948

1949-
Default value: `'kubernetes/containerd/config.toml.erb'`
1949+
Default value: `'kubernetes/containerd/config.toml.epp'`
19501950

19511951
##### <a name="-kubernetes--containerd_socket"></a>`containerd_socket`
19521952

manifests/init.pp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
# [*containerd_config_template*]
5454
# The template to use for containerd configuration
5555
# This value is ignored if containerd_config_source is defined
56-
# Default to 'kubernetes/containerd/config.toml.erb'
56+
# Default to 'kubernetes/containerd/config.toml.epp'
5757
#
5858
# [*containerd_config_source*]
5959
# The source of the containerd configuration
@@ -686,7 +686,7 @@
686686
Optional[String] $containerd_archive_checksum = undef,
687687
String $containerd_source =
688688
"https://github.com/containerd/containerd/releases/download/v${containerd_version}/${containerd_archive}",
689-
String $containerd_config_template = 'kubernetes/containerd/config.toml.erb',
689+
String $containerd_config_template = 'kubernetes/containerd/config.toml.epp',
690690
Variant[Stdlib::Unixpath, String] $containerd_socket = '/run/containerd/containerd.sock',
691691
Optional[String] $containerd_config_source = undef,
692692
Hash $containerd_plugins_registry = {

manifests/packages.pp

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
# Defaults to https://github.com/containerd/containerd/releases/download/v${containerd_version}/${containerd_archive}
5656
# @param containerd_config_template
5757
# The template to use for containerd configuration
58-
# This value is ignored if containerd_config_source is defined. Default to 'kubernetes/containerd/config.toml.erb'
58+
# This value is ignored if containerd_config_source is defined. Default to 'kubernetes/containerd/config.toml.epp'
5959
# @param containerd_config_source
6060
# The source of the containerd configuration
6161
# This value overrides containerd_config_template. Default to undef
@@ -350,7 +350,13 @@
350350
if $containerd_config_source {
351351
$_containerd_config_content = undef
352352
} else {
353-
$_containerd_config_content = template($containerd_config_template)
353+
$_containerd_config_content = stdlib::deferrable_epp($containerd_config_template, {
354+
'containerd_plugins_registry' => $containerd_plugins_registry,
355+
'containerd_socket' => $containerd_socket,
356+
'containerd_sandbox_image' => $containerd_sandbox_image,
357+
'docker_cgroup_driver' => $docker_cgroup_driver,
358+
'containerd_default_runtime_name' => $containerd_default_runtime_name,
359+
})
354360
}
355361
# Generate using 'containerd config default'
356362
file { '/etc/containerd/config.toml':
@@ -379,7 +385,13 @@
379385
if $containerd_config_source {
380386
$_containerd_config_content = undef
381387
} else {
382-
$_containerd_config_content = template($containerd_config_template)
388+
$_containerd_config_content = stdlib::deferrable_epp($containerd_config_template, {
389+
'containerd_plugins_registry' => $containerd_plugins_registry,
390+
'containerd_socket' => $containerd_socket,
391+
'containerd_sandbox_image' => $containerd_sandbox_image,
392+
'docker_cgroup_driver' => $docker_cgroup_driver,
393+
'containerd_default_runtime_name' => $containerd_default_runtime_name,
394+
})
383395
}
384396
# Generate using 'containerd config default'
385397
file { '/etc/containerd/config.toml':
@@ -430,7 +442,13 @@
430442
owner => 'root',
431443
group => 'root',
432444
mode => '0644',
433-
content => template('kubernetes/containerd/config.toml.erb'),
445+
content => stdlib::deferrable_epp('kubernetes/containerd/config.toml.epp', {
446+
'containerd_plugins_registry' => $containerd_plugins_registry,
447+
'containerd_socket' => $containerd_socket,
448+
'containerd_sandbox_image' => $containerd_sandbox_image,
449+
'docker_cgroup_driver' => $docker_cgroup_driver,
450+
'containerd_default_runtime_name' => $containerd_default_runtime_name,
451+
}),
434452
require => [File['/etc/containerd'], Archive[$containerd_archive]],
435453
notify => Service['containerd'],
436454
}

spec/classes/packages_spec.rb

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
'containerd_package_name' => 'containerd.io',
4545
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
4646
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
47-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
47+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
4848
'containerd_default_runtime_name' => 'runc',
4949
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
5050
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -145,7 +145,7 @@
145145
'containerd_package_name' => 'containerd.io',
146146
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
147147
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
148-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
148+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
149149
'containerd_default_runtime_name' => 'runc',
150150
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
151151
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -245,7 +245,7 @@
245245
'containerd_package_name' => 'containerd.io',
246246
'containerd_archive' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
247247
'containerd_source' => 'containerd-1.4.3-linux-amd64.tar.gz',
248-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
248+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
249249
'containerd_default_runtime_name' => 'runc',
250250
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
251251
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -466,7 +466,7 @@
466466
'containerd_package_name' => 'containerd.io',
467467
'containerd_archive' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
468468
'containerd_source' => 'containerd-1.4.3-linux-amd64.tar.gz',
469-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
469+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
470470
'containerd_default_runtime_name' => 'nvidia',
471471
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
472472
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -549,7 +549,7 @@
549549
'containerd_package_name' => 'containerd.io',
550550
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
551551
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
552-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
552+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
553553
'containerd_default_runtime_name' => 'runc',
554554
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
555555
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -648,7 +648,7 @@
648648
'containerd_package_name' => 'containerd.io',
649649
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
650650
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
651-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
651+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
652652
'containerd_default_runtime_name' => 'runc',
653653
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
654654
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -753,7 +753,7 @@
753753
'containerd_package_name' => 'containerd.io',
754754
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
755755
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
756-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
756+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
757757
'containerd_default_runtime_name' => 'runc',
758758
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
759759
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -835,7 +835,7 @@
835835
'containerd_package_name' => 'containerd.io',
836836
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
837837
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
838-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
838+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
839839
'containerd_default_runtime_name' => 'runc',
840840
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
841841
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -930,7 +930,7 @@
930930
'containerd_package_name' => 'containerd.io',
931931
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
932932
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
933-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
933+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
934934
'containerd_default_runtime_name' => 'runc',
935935
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
936936
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',
@@ -1030,7 +1030,7 @@
10301030
'containerd_package_name' => 'containerd.io',
10311031
'containerd_archive' => 'containerd-1.4.3-linux-amd64.tar.gz',
10321032
'containerd_source' => 'https://github.com/containerd/containerd/releases/download/v1.4.3/containerd-1.4.3-linux-amd64.tar.gz',
1033-
'containerd_config_template' => 'kubernetes/containerd/config.toml.erb',
1033+
'containerd_config_template' => 'kubernetes/containerd/config.toml.epp',
10341034
'containerd_default_runtime_name' => 'runc',
10351035
'etcd_archive' => 'etcd-v3.1.12-linux-amd64.tar.gz',
10361036
'etcd_source' => 'https://github.com/etcd-v3.1.12.tar.gz',

templates/containerd/config.toml.erb renamed to templates/containerd/config.toml.epp

Lines changed: 49 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ required_plugins = []
77
oom_score = 0
88

99
[grpc]
10-
address = "<%= @containerd_socket -%>"
10+
address = "<%= $containerd_socket -%>"
1111
tcp_address = ""
1212
tcp_tls_cert = ""
1313
tcp_tls_key = ""
@@ -54,7 +54,7 @@ oom_score = 0
5454
stream_idle_timeout = "4h0m0s"
5555
enable_selinux = false
5656
selinux_category_range = 1024
57-
sandbox_image = "<%= @containerd_sandbox_image %>"
57+
sandbox_image = "<%= $containerd_sandbox_image %>"
5858
stats_collect_period = 10
5959
systemd_cgroup = false
6060
enable_tls_streaming = false
@@ -70,7 +70,7 @@ oom_score = 0
7070
ignore_image_defined_volumes = false
7171
[plugins."io.containerd.grpc.v1.cri".containerd]
7272
snapshotter = "overlayfs"
73-
default_runtime_name = "<%= @containerd_default_runtime_name %>"
73+
default_runtime_name = "<%= $containerd_default_runtime_name %>"
7474
no_pivot = false
7575
disable_snapshot_annotations = true
7676
discard_unpacked_layers = false
@@ -94,10 +94,10 @@ oom_score = 0
9494
privileged_without_host_devices = false
9595
base_runtime_spec = ""
9696
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
97-
<%- if @docker_cgroup_driver == 'systemd' -%>
97+
<% if $docker_cgroup_driver == 'systemd' { -%>
9898
SystemdCgroup = true
99-
<%- end -%>
100-
<%- if @containerd_default_runtime_name == 'nvidia' -%>
99+
<% } -%>
100+
<% if $containerd_default_runtime_name == 'nvidia' { -%>
101101
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia]
102102
runtime_type = "io.containerd.runc.v2"
103103
runtime_engine = ""
@@ -106,57 +106,57 @@ oom_score = 0
106106
base_runtime_spec = ""
107107
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia.options]
108108
BinaryName = "/usr/bin/nvidia-container-runtime"
109-
<%- end -%>
109+
<% } -%>
110110
[plugins."io.containerd.grpc.v1.cri".cni]
111111
bin_dir = "/opt/cni/bin"
112112
conf_dir = "/etc/cni/net.d"
113113
max_conf_num = 1
114114
conf_template = ""
115115
[plugins."io.containerd.grpc.v1.cri".registry]
116116
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
117-
<%- @containerd_plugins_registry.each do |registry, sections| -%>
118-
<%- if sections['mirrors'] and not sections['mirrors'].empty? -%>
119-
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."<%= registry %>"]
120-
<%- if sections['mirrors']['endpoint'] -%>
121-
endpoint = ["<%= sections['mirrors']['endpoint'] %>"]
122-
<%- end -%>
123-
<%- end -%>
124-
<%- end -%>
117+
<% $containerd_plugins_registry.map |Any $registry, Any $sections| { -%>
118+
<% if $sections['mirrors'] and !$sections['mirrors'].empty { -%>
119+
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."<%= $registry %>"]
120+
<% if $sections['mirrors']['endpoint'] { -%>
121+
endpoint = ["<%= $sections['mirrors']['endpoint'] %>"]
122+
<% } -%>
123+
<% } -%>
124+
<% } -%>
125125
[plugins."io.containerd.grpc.v1.cri".registry.configs]
126-
<%- @containerd_plugins_registry.each do |registry, sections| -%>
127-
<%- if sections['auth'] and not sections['auth'].empty? -%>
128-
[plugins."io.containerd.grpc.v1.cri".registry.configs."<%= registry %>".auth]
129-
<%- if sections['auth']['username'] -%>
130-
username = "<%= sections['auth']['username'] %>"
131-
<%- end -%>
132-
<%- if sections['auth']['password'] -%>
133-
password = "<%= sections['auth']['password'] %>"
134-
<%- end -%>
135-
<%- if sections['auth']['auth'] -%>
136-
auth = "<%= sections['auth']['auth'] %>"
137-
<%- end -%>
138-
<%- if sections['auth']['identitytoken'] -%>
139-
identitytoken = "<%= sections['auth']['identitytoken'] %>"
140-
<%- end -%>
141-
<%- end -%>
142-
<%- end -%>
143-
<%- @containerd_plugins_registry.each do |registry, sections| -%>
144-
<%- if sections['tls'] and not sections['tls'].empty? -%>
145-
[plugins."io.containerd.grpc.v1.cri".registry.configs."<%= registry %>".tls]
146-
<%- if sections['tls']['ca_file'] -%>
147-
ca_file = "<%= sections['tls']['ca_file'] %>"
148-
<%- end -%>
149-
<%- if sections['tls']['cert_file'] -%>
150-
cert_file = "<%= sections['tls']['cert_file'] %>"
151-
<%- end -%>
152-
<%- if sections['tls']['key_file'] -%>
153-
key_file = "<%= sections['tls']['key_file'] %>"
154-
<%- end -%>
155-
<%- if sections['tls']['insecure_skip_verify'] -%>
156-
insecure_skip_verify = <%= sections['tls']['insecure_skip_verify'] %>
157-
<%- end -%>
158-
<%- end -%>
159-
<%- end -%>
126+
<% $containerd_plugins_registry.map |Any $registry, Any $sections| { -%>
127+
<% if $sections['auth'] and !$sections['auth'].empty { -%>
128+
[plugins."io.containerd.grpc.v1.cri".registry.configs."<%= $registry %>".auth]
129+
<% if $sections['auth']['username'] { -%>
130+
username = "<%= $sections['auth']['username'] %>"
131+
<% } -%>
132+
<% if $sections['auth']['password'] { -%>
133+
password = "<%= $sections['auth']['password'] %>"
134+
<% } -%>
135+
<% if $sections['auth']['auth'] { -%>
136+
auth = "<%= $sections['auth']['auth'] %>"
137+
<% } -%>
138+
<% if $sections['auth']['identitytoken'] { -%>
139+
identitytoken = "<%= $sections['auth']['identitytoken'] %>"
140+
<% } -%>
141+
<% } -%>
142+
<% } -%>
143+
<% $containerd_plugins_registry.map |Any $registry, Any $sections| { -%>
144+
<% if $sections['tls'] and !$sections['tls'].empty { -%>
145+
[plugins."io.containerd.grpc.v1.cri".registry.configs."<%= $registry %>".tls]
146+
<% if $sections['tls']['ca_file'] { -%>
147+
ca_file = "<%= $sections['tls']['ca_file'] %>"
148+
<% } -%>
149+
<% if $sections['tls']['cert_file'] { -%>
150+
cert_file = "<%= $sections['tls']['cert_file'] %>"
151+
<% } -%>
152+
<% if $sections['tls']['key_file'] { -%>
153+
key_file = "<%= $sections['tls']['key_file'] %>"
154+
<% } -%>
155+
<% if $sections['tls']['insecure_skip_verify'] { -%>
156+
insecure_skip_verify = <%= $sections['tls']['insecure_skip_verify'] %>
157+
<% } -%>
158+
<% } -%>
159+
<% } -%>
160160
[plugins."io.containerd.grpc.v1.cri".image_decryption]
161161
key_model = ""
162162
[plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming]

0 commit comments

Comments
 (0)