class Physique::OctopusTasksBuilder
Public Instance Methods
build_tasks()
click to toggle source
# File lib/physique/task_builders/octopus.rb, line 77 def build_tasks @options = solution.octopus return if @options.nil? return if @options.apps.blank? namespace :octo do add_octopus_package_tasks add_octopus_publish_tasks end if @options.alias_tasks add_task_aliases end end
Private Instance Methods
add_octopus_package_tasks()
click to toggle source
# File lib/physique/task_builders/octopus.rb, line 94 def add_octopus_package_tasks @options.apps.each do |a| namespace a.name do desc "Package #{a.project} for Octopus deployment" octopus_pack :package => [:versionizer, :test] do |o| ensure_output_location solution.nuget.build_location o.project_file = a.project_file o.type = a.type o.configuration = solution.compile.configuration o.exe = solution.nuget.exe o.out = solution.nuget.build_location o.metadata = a.metadata end end end desc 'Package all applications' task :package => all_octopus_app_tasks('package') end
add_octopus_publish_tasks()
click to toggle source
# File lib/physique/task_builders/octopus.rb, line 115 def add_octopus_publish_tasks nuget = solution.nuget @options.apps.each do |a| project = Albacore::Project.new a.project_file namespace a.name do desc "Publish #{a.project} app to Octopus Server" task :publish => [ "#{a.name}:package" ] do package_location = Albacore::Paths.normalise_slashes "#{nuget.build_location}/#{project.name}.#{a.metadata.version}.nupkg" sh "#{nuget.exe} push #{package_location} -ApiKey #{@options.api_key} -Source #{@options.server}" end end end desc 'Publish all apps to Octopus Server' task :publish => all_octopus_app_tasks('publish') end
add_task_aliases()
click to toggle source
# File lib/physique/task_builders/octopus.rb, line 138 def add_task_aliases desc 'Package all applications' task :package => [ 'octo:package' ] desc 'Publish apps to Octopus Server' task :publish => [ 'octo:publish' ] end
all_octopus_app_tasks(task)
click to toggle source
# File lib/physique/task_builders/octopus.rb, line 134 def all_octopus_app_tasks(task) @options.apps.map { |a| "#{a.name}:#{task}" } end