dataset/seed/host-systemd-machined/templates/tls-script

48 lines
1.4 KiB
Text
Raw Normal View History

2023-02-14 14:24:16 +01:00
%echo "#!/bin/bash"
set -e
%for %%machine in %%machined.machines
%set %%nor_machine = %%normalize_family(%%machine)
%set tls_dir = %%machined['machine_' + %%nor_machine]['tls_dir_' + %%nor_machine]
%if %%tls_dir
%break
%end if
%end for
%if %%tls_dir
%set %%dst_dir = %%machined['machine_' + %%normalize_family(%%rougail_variable)]['config_dir_' + %%normalize_family(%%rougail_variable)]
%set %%src_dir = %%tls_dir + "/machines/" + %%rougail_variable
%if 'certificates' in %%extra_variables and %%rougail_variable in %%extra_variables['certificates']
if [ -d "%%dst_dir" ] && [ -d "%%src_dir" ]; then
%for %%certificate in %%extra_variables['certificates'][%%rougail_variable]
%set %%files = [%%certificate.name]
%if %%certificate.provider == 'autosigne'
%%files.append(%%certificate.authority)
%end if
%if 'private' in %%certificate
%%files.append(%%certificate.private)
%end if
%for %%file in %%files
src_file="%%{src_dir}%%file"
dst_file="%%{dst_dir}%%file"
dst_dir=$(dirname "$dst_file")
mkdir -p "$dst_dir"
# ne fonctionne pas avec revprox :/
# a=1
# while [ ! -f "$src_file" ]; do
# a=$((a+1));
# if [ $a = 120 ]; then
# break
# fi
# sleep 1
# done
cp -f "$src_file" "$dst_file"
chown root: "$dst_file"
chmod 700 "$dst_file"
%end for
%end for
fi
%end if
%end if
exit 0