From 57f5bf0f2e3e1b8a643f8e42aed5feca951032b5 Mon Sep 17 00:00:00 2001 From: Anton Chuchkalov Date: Fri, 18 Dec 2015 18:35:12 +0400 Subject: [PATCH] Unbootstrap: delete node from chef server only if /etc/chef directory was successfully moved --- devops-service/lib/executors/server_executor.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/devops-service/lib/executors/server_executor.rb b/devops-service/lib/executors/server_executor.rb index 7ff7fdc..a8bda22 100644 --- a/devops-service/lib/executors/server_executor.rb +++ b/devops-service/lib/executors/server_executor.rb @@ -213,7 +213,10 @@ module Devops DevopsLogger.logger.info msg r else - @out << "Can not bootstrap node '#{@server.id}', error code: #{r}" + @out << "Can not bootstrap node '#{@server.id}', error code: #{r}\n" + if r == 256 + @out << "Maybe old chef client configuration still exists?\n" + end @out.flush result_code(:server_bootstrap_fail) end @@ -309,7 +312,7 @@ module Devops k = Devops::Db.connector.key(@server.key) cert_path = k.path i = 0 - res = delete_from_chef_server(@server.chef_node_name) + res = {} begin new_name = "/etc/chef.backup_#{Time.now.strftime("%d-%m-%Y_%H.%M.%S")}" # r = `ssh -i #{cert_path} -q #{@server.remote_user}@#{@server.private_ip} rm -Rf /etc/chef` @@ -329,7 +332,9 @@ module Devops retry unless i == 5 return {error: e.message} end - res + + deleting_chef_node_and_chef_client_result = delete_from_chef_server(@server.chef_node_name) + res.merge!(deleting_chef_node_and_chef_client_result) end def deploy_server_with_tags tags, deploy_info