class Albacore::NugetsPack::Cmd

Public Class Methods

new(config) click to toggle source
# File lib/albacore/task_types/nugets_pack.rb, line 80
def initialize config
  @executable = config.exe
  @config = config
end

Public Instance Methods

execute() click to toggle source
# File lib/albacore/task_types/nugets_pack.rb, line 85
def execute
  @config.validate
  @config.fallbacks!
  invocations(@config).each do |parameters|
    system @executable, parameters, clr_command: true
  end
end

Private Instance Methods

defaults(config) click to toggle source
# File lib/albacore/task_types/nugets_pack.rb, line 94
def defaults config
  parameters = []
  parameters = %w|pack|
  parameters << config.output unless config.output.nil?
  parameters << '--version' unless config.version.nil?
  parameters << config.version unless config.version.nil?
  parameters << '--build-config'
  parameters << config.configuration
  parameters << '--include-referenced-projects' if config.transitive?
  parameters << '--symbols' if config.symbols?
  parameters << '--project-url' if config.project_url
  parameters << config.project_url if config.project_url
  parameters
end
invocations(config) click to toggle source
# File lib/albacore/task_types/nugets_pack.rb, line 109
def invocations config
  if config.files.empty?
    [ defaults(config) ]
  else
    config.files.map do |file|
      proj = Albacore::Project.new file
      package = Albacore::NugetModel::Package.from_xxproj proj,
        configuration: config.configuration,
        metadata: config.metadata

      path = File.join(proj.proj_path_base, "paket.template")

      File.open(path, 'w') do |template|
        contents = package.to_template.join("\n")
        template.write contents
        debug { "Wrote paket.template file:\n#{contents}" }
      end

      parameters = defaults config
      parameters << '--template'
      parameters << path
      [ parameters ]
    end
  end
end