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