in chef/cookbooks/cpe_environment/resources/cpe_environment_zsh.rb [38:91]
def configure
cpe_zsh_config = node['cpe_environment']['config'].to_h.reject do |_k, v|
v.nil? || v.empty?
end
zsh_config_set = true
zsh_config = CPE::Environment.read_config(zsh_config_file)
if cpe_zsh_config.nil? || cpe_zsh_config.empty?
Chef::Log.warn('config is not populated, skipping configuration')
zsh_config_set = false
end
if zsh_config_set && !CPE::Environment.zsh_chef_managed?(zsh_config_file, cpe_config_file)
zsh_config += CPE::Environment.zsh_config_lines(cpe_config_file)
elsif !zsh_config_set
remove_zsh_source(zsh_config)
file cpe_config_file do
action :delete
end
end
file zsh_config_file do
owner root_owner
group node['root_group']
mode '0644'
content zsh_config.join
end
directory cpe_zsh_dir do
owner root_owner
group node['root_group']
end
template cpe_config_file do
only_if { zsh_config_set }
source 'zsh_cpe.erb'
owner root_owner
group node['root_group']
mode '0644'
variables(
'config' => cpe_zsh_config,
)
end
end