From 26969cb94cda9bdf7e0e45e98be1d6f9a4d26b38 Mon Sep 17 00:00:00 2001 From: Anton Chuchkalov Date: Fri, 4 Mar 2016 13:00:17 +0300 Subject: [PATCH] remove chef client options --- devops-client/lib/devops-client/handler/deploy.rb | 1 - .../lib/devops-client/options/deploy_options.rb | 1 - devops-client/locales/en.yml | 1 - devops-service/app/api2/handlers/deploy.rb | 11 ----------- devops-service/app/api2/routes/deploy.rb | 1 - .../db/mongo/models/deploy_env/deploy_env_base.rb | 7 +------ devops-service/lib/executors/server_executor.rb | 4 +--- .../spec/executors/server_executor_spec.rb | 12 ------------ .../models/deploy_env/shared_deploy_env_specs.rb | 1 - 9 files changed, 2 insertions(+), 37 deletions(-) diff --git a/devops-client/lib/devops-client/handler/deploy.rb b/devops-client/lib/devops-client/handler/deploy.rb index d8860ae..4a9c46f 100644 --- a/devops-client/lib/devops-client/handler/deploy.rb +++ b/devops-client/lib/devops-client/handler/deploy.rb @@ -28,7 +28,6 @@ class Deploy < Handler job_ids = post("/deploy", names: names, tags: options[:tags], - chef_client_options: options[:chef_client_options], named_task: options[:named_task] ) reports_urls(job_ids) diff --git a/devops-client/lib/devops-client/options/deploy_options.rb b/devops-client/lib/devops-client/options/deploy_options.rb index aee6340..27faff1 100644 --- a/devops-client/lib/devops-client/options/deploy_options.rb +++ b/devops-client/lib/devops-client/options/deploy_options.rb @@ -18,7 +18,6 @@ class DeployOptions < CommonOptions parser.recognize_option_value(:tag, variable: 'TAG1,TAG2...') do |tags| options[:tags] = tags.split(",") end - parser.recognize_option_value(:chef_client_options) parser.recognize_option_value(:named_task) end end diff --git a/devops-client/locales/en.yml b/devops-client/locales/en.yml index 20f390b..2c216c3 100644 --- a/devops-client/locales/en.yml +++ b/devops-client/locales/en.yml @@ -314,7 +314,6 @@ en: descriptions: deploy: tag: 'Tag names, comma separated list' - chef_client_options: 'String like "-o role[foo]"' named_task: Name of task to run image: provider: Image provider diff --git a/devops-service/app/api2/handlers/deploy.rb b/devops-service/app/api2/handlers/deploy.rb index 71b6059..204d35d 100644 --- a/devops-service/app/api2/handlers/deploy.rb +++ b/devops-service/app/api2/handlers/deploy.rb @@ -33,7 +33,6 @@ module Devops begin deploy_info = create_deploy_info(s, project, body["build_number"]) deploy_info["run_list"] = run_list if run_list - set_chef_client_options(deploy_info, s, project, body['chef_client_options']) deploy_info["named_task"] = body["named_task"] jid = Worker.start_async(DeployWorker, @@ -120,16 +119,6 @@ module Devops end end - private - - # env's chef client options may be nil or empty string; it's OK. - def set_chef_client_options(deploy_info, server, project, single_run_options) - if single_run_options - deploy_info['chef_client_options'] = single_run_options - else - deploy_info['chef_client_options'] = project.deploy_env(server.deploy_env).chef_client_options - end - end end end end diff --git a/devops-service/app/api2/routes/deploy.rb b/devops-service/app/api2/routes/deploy.rb index c42a69b..7a2a208 100644 --- a/devops-service/app/api2/routes/deploy.rb +++ b/devops-service/app/api2/routes/deploy.rb @@ -18,7 +18,6 @@ module Devops # "tags": [], -> array of tags to apply on each server before running chef-client # "build_number": "", -> string, build number to deploy # "run_list": [], -> array of strings to set run_list for chef-client - # "chef_client_options": "", String, optional. May be used to redefine run_list # } # # * *Returns* : text stream diff --git a/devops-service/db/mongo/models/deploy_env/deploy_env_base.rb b/devops-service/db/mongo/models/deploy_env/deploy_env_base.rb index f2885da..d95d71c 100644 --- a/devops-service/db/mongo/models/deploy_env/deploy_env_base.rb +++ b/devops-service/db/mongo/models/deploy_env/deploy_env_base.rb @@ -30,9 +30,6 @@ module Devops ::Validators::FieldValidator::FieldType::String, ::Validators::FieldValidator::Expires] - set_field_validators :chef_client_options, [::Validators::FieldValidator::Nil, - ::Validators::FieldValidator::FieldType::String] - def initialize d={} self.identifier = d["identifier"] set_provider(d) @@ -41,7 +38,6 @@ module Devops self.expires = d["expires"] b = d["users"] || [] self.users = b.uniq - self.chef_client_options = d["chef_client_options"] end def to_hash @@ -49,8 +45,7 @@ module Devops "identifier" => self.identifier, "run_list" => self.run_list, "expires" => self.expires, - "users" => self.users, - "chef_client_options" => self.chef_client_options + "users" => self.users }.merge(provider_hash) end diff --git a/devops-service/lib/executors/server_executor.rb b/devops-service/lib/executors/server_executor.rb index 297e0d4..01b2afe 100644 --- a/devops-service/lib/executors/server_executor.rb +++ b/devops-service/lib/executors/server_executor.rb @@ -397,9 +397,7 @@ module Devops @out.flush cmd << " -j http://#{DevopsConfig.config[:address]}:#{DevopsConfig.config[:port]}/#{DevopsConfig.config[:url_prefix]}/v2.0/deploy/data/#{file}" else - if deploy_info['chef_client_options'].present? - cmd << " #{deploy_info['chef_client_options']}" - elsif deploy_info['named_task'].present? + if deploy_info['named_task'].present? named_task = @project.named_tasks.detect {|task| task['name'] == deploy_info['named_task']} raise "Named task #{deploy_info['named_task']} doesn't exist." unless named_task puts_and_flush "Using named task #{deploy_info['named_task']}." diff --git a/devops-service/spec/executors/server_executor_spec.rb b/devops-service/spec/executors/server_executor_spec.rb index 1372bd7..36bac6f 100644 --- a/devops-service/spec/executors/server_executor_spec.rb +++ b/devops-service/spec/executors/server_executor_spec.rb @@ -576,18 +576,6 @@ RSpec.describe Devops::Executor::ServerExecutor, type: :executor, stubbed_connec deploy_server end - it "uses chef_client_options from deploy_info if it is set" do - deploy_info['chef_client_options'] = '-r role' - expect(stubbed_knife).to receive(:ssh_stream).with(anything, 'chef-client --no-color -r role', any_args) - deploy_server - end - - it "doesn't use chef_client_options from deploy_info if it's blank string" do - deploy_info['chef_client_options'] = '' - expect(stubbed_knife).to receive(:ssh_stream).with(anything, 'chef-client --no-color', any_args) - deploy_server - end - it "uses run list from named_task if it's set" do project.named_tasks = [{'name' => 'foo', 'run_list' => ['role[backend]', 'role[frontend]']}] deploy_info['named_task'] = 'foo' diff --git a/devops-service/spec/models/deploy_env/shared_deploy_env_specs.rb b/devops-service/spec/models/deploy_env/shared_deploy_env_specs.rb index ffdd708..538f838 100644 --- a/devops-service/spec/models/deploy_env/shared_deploy_env_specs.rb +++ b/devops-service/spec/models/deploy_env/shared_deploy_env_specs.rb @@ -10,7 +10,6 @@ RSpec.shared_examples 'deploy env' do include_examples 'field type validation', :run_list, :not_nil, :maybe_empty_array, :run_list, :field_validator include_examples 'field type validation', :users, :not_nil, :maybe_empty_array, :field_validator include_examples 'field type validation', :expires, :maybe_nil, :non_empty_string, :field_validator - include_examples 'field type validation', :chef_client_options, :maybe_nil, :maybe_empty_string, :field_validator it 'should be valid only with all users available' do expect(build(validated_model_name, users: ['root'])).to be_valid