lib/salesforcedeploytool/app.rb in salesforce-deploy-tool-0.9.10 vs lib/salesforcedeploytool/app.rb in salesforce-deploy-tool-0.10.1

- old
+ new

@@ -4,24 +4,34 @@ attr_accessor :build_number attr_accessor :test def initialize config - + + # Parameter Normalization + config[:git_dir] = File.expand_path config[:git_dir] + config[:tmp_dir] = File.expand_path config[:tmp_dir] + config[:version_file] = File.expand_path config[:version_file] + config[:deploy_ignore_files] = config[:deploy_ignore_files].map {|f| File.expand_path File.join(config[:git_dir],f)} + + # Defaults @debug = config[:debug] @test = config[:test] - @build_number = 'N/A' + + # Config file validation: ( @git_repo = config[:git_repo] ).nil? and raise "Invalid Config: git_repo not found" ( @git_dir = config[:git_dir] ).nil? and raise "Invalid Config: git_dir not found" ( @sandbox = config[:sandbox] ).nil? and raise "Invalid Config: sandbox not found" ( @password = config[:password] ).nil? and raise "Invalid Config: password not found, please run `sf config`" ( @deploy_ignore_files = config[:deploy_ignore_files] ).nil? and raise "Invalid Config: deploy_ignore_files not found" ( @build_number_pattern = config[:build_number_pattern] ).nil? and raise "Invalid Config: build_number_pattern not found" ( @commit_hash_pattern = config[:commit_hash_pattern] ).nil? and raise "Invalid Config: commit_hash_pattern not found" ( @version_file = config[:version_file] ).nil? and raise "Invalid Config: version_file not found" + + config[:username].nil? and raise "Invalid Config: username not found, please run `sf config`" config[:password].nil? and raise "Invalid Config: password not found, please run `sf config`" @username = @sandbox == 'prod' ? config[:username] : config[:username] + '.' + @sandbox @server_url = @sandbox == 'prod' ? 'https://login.salesforce.com' : 'https://test.salesforce.com' @@ -101,10 +111,16 @@ exec_options[:message] += "\n\n" exec_options[:okmsg] = nil exec_options[:failmsg] = nil end + # Pull the code exit_code = myexec full_cmd, exec_options + + # Delete files to be ignored: + @deploy_ignore_files.each do |file| + FileUtils.rm file if File.exists? file + end exit exit_code if exit_code != 0 end