63 lines
1.3 KiB
Ruby

#
# Cookbook Name:: kosmos_strfry
# Recipe:: policies
#
include_recipe "deno"
#
# config
#
ldap_credentials = Chef::EncryptedDataBagItem.load('credentials', 'dirsrv')
env = {
ldap_url: 'ldap://ldap.kosmos.local:389', # requires "ldap_client" role
ldap_bind_dn: ldap_credentials["service_dn"],
ldap_password: ldap_credentials["service_password"],
ldap_search_dn: node["strfry"]["ldap_search_dn"]
}
template "/opt/.env" do
source 'env.erb'
owner node["strfry"]["user"]
group node["strfry"]["group"]
mode 0600
sensitive true
variables config: env
notifies :restart, "service[strfry]", :delayed
end
#
# strfry deno scripts
#
base_url = "https://gitea.kosmos.org/kosmos/akkounts/raw/branch/master/extras/strfry"
remote_file "/opt/strfry-policy.ts" do
source "#{base_url}/strfry-policy.ts"
owner node["strfry"]["user"]
group node["strfry"]["group"]
mode "0755"
notifies :restart, "service[strfry]", :delayed
end
remote_file "/opt/ldap-policy.ts" do
source "#{base_url}/ldap-policy.ts"
owner node["strfry"]["user"]
group node["strfry"]["group"]
mode "0644"
notifies :restart, "service[strfry]", :delayed
end
remote_file "/opt/strfry-sync.ts" do
source "#{base_url}/strfry-sync.ts"
owner node["strfry"]["user"]
group node["strfry"]["group"]
mode "0644"
end
# service "strfry" do
# action :nothing
# end