Class: Publish

Inherits:
Array show all
Defined in:
lib/tasks/publish.rb

Instance Method Summary collapse

Methods inherited from Array

#add, #execute, #to_html

Instance Method Details

#updateObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/tasks/publish.rb', line 7

def update

       FileUtils.mkdir_p("#{Environment.dev_root}/publish") if !File.exists?("#{Environment.dev_root}/publish")
  if(File.exists?('.git') && defined?(VERSION))
    add "<%Git.tag('#{Rake.application.original_dir}','#{VERSION}')%>"
  end

  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

  puts 'publish glob, checking...' if defined? DEBUG
  Dir.glob("#{Rake.application.original_dir}/**/*.{nupkg,msi,gem}").each{|publish_file|
    puts "checking #{publish_file}" if defined? DEBUG
    dest="#{Environment.dev_root}/publish/#{File.basename(publish_file)}"
    FileUtils.mkdir_p("#{Environment.dev_root}/publish") if !File.exists?("#{Environment.dev_root}/publish")
    add "<%FileUtils.cp('#{publish_file}','#{dest}')%>" if(!File.exists?(dest))
  }
end