class Albacore::Asmver::MultipleFilesConfig

Attributes

files[W]

list of xxproj files to iterate over

Public Class Methods

new() click to toggle source
# File lib/albacore/task_types/asmver.rb, line 21
def initialize
  @usings = []
end

Public Instance Methods

attributes(attrs) click to toggle source
# File lib/albacore/task_types/asmver.rb, line 25
def attributes attrs
  @attributes = attrs
end
configurations() click to toggle source
# File lib/albacore/task_types/asmver.rb, line 40
def configurations
  @files ||= FileList['**/*.{fsproj,csproj,vbproj}']

  debug { "generating config for files: #{@files}" }

  @files.map { |proj|
      proj =~ /(\w\w)proj$/
      [ $1, Project.new(proj) ]
    }.map { |ext, proj|
      attrs = @attributes.clone
      attrs[:assembly_title] = proj.name
      file_path = "#{proj.proj_path_base}/AssemblyVersionInfo.#{ext}"
      cfg = Albacore::Asmver::Config.new file_path, proj.asmname, attrs
      cfg = @handle_config.call(proj, cfg) if @handle_config
      cfg.usings = @usings.clone
      cfg
    }
end
handle_config(&block) click to toggle source

block should have signature: Project -> AsmVer::Config -> AsmVer::Config because you can use this block to change the configuration generated

# File lib/albacore/task_types/asmver.rb, line 36
def handle_config &block
  @handle_config = block
end
using(ns) click to toggle source
# File lib/albacore/task_types/asmver.rb, line 29
def using ns
  debug { "adding namespace #{ns} [Asmver::MultipleFilesConfig using]" }
  @usings << ns
end