puts __FILE__ if defined?(DEBUG) desc 'performs publish commands' task :publish do Tasks.execute_task :publish; end class Publish < Array def update if(Internet.available?) if(File.exists?('.git')) if(`git branch`.include?('* master')) Dir.glob('*.gemspec').each{|gemspec_file| add "gem push #{Gemspec.gemfile(gemspec_file)}" if !Gemspec.published? gemspec_file } end end if(File.exists?('.svn')) if(`svn info`.include?('/trunk')) Dir.glob('*.gemspec').each{|gemspec_file| add "gem push #{Gemspec.gemfile(gemspec_file)}" if !Gemspec.published? gemspec_file } end end end Dir.glob('**/*.nupkg').each{|nupkg| dest="#{Environment.dev_root}/nuget/#{File.basename(nupkg)}" if(!File.exists?(dest)) add "<%FileUtils.cp('#{nupkg}','#{dest}')%>" end } end end