Sha256: b685fc8fe4ee616f0b5ce9efa248530ae917eafd5409f648d95718722c76d880

Contents?: true

Size: 1.39 KB

Versions: 11

Compression:

Stored size: 1.39 KB

Contents

require 'albacore/albacoretask'
require 'albacore/config/nugetpublishconfig'
require 'albacore/support/supportlinux'

class NuGetPublish
  include Albacore::Task
  include Albacore::RunCommand
  include Configuration::NuGetPublish
  include SupportsLinuxEnvironment
  
  attr_accessor  :id,           # Package Id
                 :version,      # Package Version
                 :apikey,
                 :source,
                 :command

  def initialize(command = "NuGet.exe") # users might have put the NuGet.exe in path
    super()
    update_attributes nugetpublish.to_hash
    @command = command
  end

  def execute
  
    fail_with_message 'id must be specified.' if @id.nil?
    fail_with_message 'version must be specified.' if @version.nil?
    # don't validate @apikey as required, coz it might have been set in the config file using 'SetApiKey'
    
    puts @create_only
    params = []
    params << "publish"
    params << "#{@id}"
    params << "#{@version}"
    params << "#{@apikey}" if @apikey
    params << "-Source #{source}" unless @source.nil?
    
    merged_params = params.join(' ')
    
    @logger.debug "Build NuGet publish Command Line: #{merged_params}"

    result = run_command "NuGet", merged_params
    
    failure_message = 'NuGet Publish Failed. See Build Log For Details'
    fail_with_message failure_message if !result
  end
  
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
albacore-0.3.6 lib/albacore/nugetpublish.rb
albacore-1.0.0.rc.2 lib/albacore/nugetpublish.rb
albacore-1.0.0.rc.1 lib/albacore/nugetpublish.rb
albacore-0.3.5 lib/albacore/nugetpublish.rb
albacore-0.3.4 lib/albacore/nugetpublish.rb
albacore-0.3.3 lib/albacore/nugetpublish.rb
albacore-0.3.2 lib/albacore/nugetpublish.rb
albacore-0.3.1 lib/albacore/nugetpublish.rb
albacore-0.3.0 lib/albacore/nugetpublish.rb
albacore-0.2.7 lib/albacore/nugetpublish.rb
albacore-0.2.6 lib/albacore/nugetpublish.rb