TLS sdc-be-init: truststore & keystore handling
[sdc.git] / catalog-be / sdc-backend-init / chef-repo / cookbooks / sdc-catalog-be-setup / recipes / 2_check_Backend.rb
index ffa1fee..7268611 100644 (file)
@@ -3,6 +3,16 @@ if node['disableHttp']
   protocol = "https"
   https_flag = "--https"
   be_port = node['BE']['https_port']
+  if node['BE-init']['tls_cert'] && node['BE-init']['tls_key']
+    tls_key = "--tls_key " + node['BE-init']['tls_key']
+    tls_cert = "--tls_cert " + node['BE-init']['tls_cert']
+    if node['BE-init']['tls_password']
+      tls_key_pw = "--tls_key_pw " + node['BE-init']['tls_password']
+    end
+  end
+  if node['BE-init']['ca_cert']
+    ca_cert =  "--ca_cert " + node['BE-init']['ca_cert']
+  end
 else
   protocol = "http"
   https_flag = ""
@@ -14,18 +24,14 @@ if node['basic_auth']
   basic_auth_user = node['basic_auth']['user_name']
   basic_auth_pass = node['basic_auth']['user_pass']
   if basic_auth_enabled
-    basic_auth_config = "--header " + Base64.encode64(basic_auth_user + ":" + basic_auth_pass)
+    basic_auth_config = "--header " + Base64.strict_encode64(basic_auth_user + ":" + basic_auth_pass)
   else
     # set default user configuration file
     basic_auth_config = ""
   end
 end
 
-bash "executing-check_backend_health" do
-   code <<-EOH
-     sdccheckbackend -i #{node['Nodes']['BE']} -p #{be_port} #{basic_auth_config} #{https_flag}
-     rc=$?
-     if [[ $rc != 0 ]]; then exit $rc; fi
-   EOH
-   returns [0]
-end
\ No newline at end of file
+execute "executing-check_backend_health" do
+  command "sdccheckbackend -i #{node['Nodes']['BE']} -p #{be_port} #{basic_auth_config} #{https_flag} #{tls_cert} #{tls_key} #{tls_key_pw} #{ca_cert}"
+  action :run
+end