Sha256: 117f0d5bd21c0c57f13d067da4b1a787b7d5fb83f0cee01cb6218372d67ace7a
Contents?: true
Size: 1.54 KB
Versions: 1
Compression:
Stored size: 1.54 KB
Contents
require 'albacore/albacoremodel' require 'albacore/config/sqlcmdconfig' class SQLCmd include AlbacoreModel include RunCommand include Configuration::SQLCmd attr_accessor :server, :database, :username, :password attr_array :scripts attr_hash :variables def initialize @require_valid_command = false @scripts=[] @variables={} super() update_attributes sqlcmd.to_hash end def run return unless check_command cmd_params=[] cmd_params << build_parameter("S", @server) unless @server.nil? cmd_params << build_parameter("d", @database) unless @database.nil? cmd_params << build_parameter("U", @username) unless @username.nil? cmd_params << build_parameter("P", @password) unless @password.nil? cmd_params << build_variable_list if @variables.length > 0 cmd_params << build_script_list if @scripts.length > 0 result = run_command "SQLCmd", cmd_params.join(" ") failure_msg = 'SQLCmd Failed. See Build Log For Detail.' fail_with_message failure_msg if !result end def check_command return true if (!@command.nil?) fail_with_message 'SQLCmd.command cannot be nil.' return false end def build_script_list @scripts.map{|s| "-i \"#{s}\""}.join(" ") end def build_parameter(param_name, param_value) "-#{param_name} \"#{param_value}\"" end def build_variable_list vars = [] @variables.each do |k,v| vars << "-v #{k}=#{v}" end vars.join(" ") end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
albacore-0.2.0.preview1 | lib/albacore/sqlcmd.rb |