dev_tasks 0.0.114 → 0.0.115
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/commands.rb +5 -1
- data/lib/dev_tasks.rb +2 -16
- data/lib/environment.rb +23 -0
- data/lib/publish.rb +24 -1
- data/lib/spec.json +1 -1
- data/lib/verify.rb +26 -0
- metadata +2 -1
data/lib/commands.rb
CHANGED
@@ -8,6 +8,7 @@ require_relative './push.rb'
|
|
8
8
|
require_relative './setup.rb'
|
9
9
|
require_relative './upgrade.rb'
|
10
10
|
require_relative './timer.rb'
|
11
|
+
require_relative './verify.rb'
|
11
12
|
|
12
13
|
class Commands < Hash
|
13
14
|
attr_accessor :build
|
@@ -20,13 +21,16 @@ class Commands < Hash
|
|
20
21
|
self[:test] = Test.new
|
21
22
|
self[:add] = Add.new
|
22
23
|
self[:commit] = Commit.new
|
23
|
-
self[:publish] = Publish.new
|
24
24
|
self[:push] = Push.new
|
25
|
+
self[:verify] = Verify.new
|
26
|
+
self[:publish] = Publish.new
|
25
27
|
end
|
26
28
|
|
27
29
|
def update
|
28
30
|
self[:upgrade].update
|
29
31
|
self[:setup].update
|
32
|
+
self[:verify].update
|
33
|
+
self[:publish].update
|
30
34
|
end
|
31
35
|
|
32
36
|
def execute_command command
|
data/lib/dev_tasks.rb
CHANGED
@@ -22,15 +22,14 @@ class DevTasks < Hash
|
|
22
22
|
|
23
23
|
def initialize
|
24
24
|
@timer = Timer.new
|
25
|
-
#hash = JSON.parse File.read("#{File.dirname(__FILE__)}/spec.json")
|
26
|
-
#self[:dev_tasks_gem]=JSON.parse File.read("#{File.dirname(__FILE__)}/spec.json")
|
27
25
|
self[:name]=pwd.split('/').last#Rake.application.original_dir.split('/').last
|
28
26
|
self[:svn_exports]=SvnExports.new
|
29
27
|
self[:scm]=Environment.scm
|
28
|
+
self[:scm_origin]=Environment.scm_origin
|
30
29
|
self[:branch]=Environment.branch
|
31
30
|
self[:src_glob]="**/{*.{rb,feature,spec,cs,c,m,cpp,cxx,h,hpp,i,jam,csproj,vcproj,snk,vcxproj,xcodeproj,plist,xib,sln,filters,xaml,resx,settings,config},Jamfile,.semver,Gemfile,README,LICENSE}"
|
32
31
|
self[:newest_src_file]=Dir.glob(self[:src_glob]).max_by {|f| File.mtime(f)}
|
33
|
-
self[:command_order]=['pull','upgrade','setup','add','build','test','commit','
|
32
|
+
self[:command_order]=['pull','upgrade','setup','add','build','test','commit','push','verify','publish']
|
34
33
|
self[:relative_directory]=Environment.relative_directory
|
35
34
|
self[:working_directory]=Environment.working_directory
|
36
35
|
self[:context]=Environment.context
|
@@ -79,7 +78,6 @@ class DevTasks < Hash
|
|
79
78
|
def execute_task task
|
80
79
|
sym_task = task.to_sym
|
81
80
|
timer=Timer.new
|
82
|
-
#start_time=Time.now
|
83
81
|
Console.announce_task_start task
|
84
82
|
if(!self[:commands].has_key?(sym_task))
|
85
83
|
puts "no commands discovered for task " + task
|
@@ -87,8 +85,6 @@ class DevTasks < Hash
|
|
87
85
|
self[:commands][sym_task].each {|c| self[:commands].execute_command(c) }
|
88
86
|
end
|
89
87
|
elapsed = timer.elapsed
|
90
|
-
#end_time=Time.now
|
91
|
-
#elapsed=end_time-start_time
|
92
88
|
if elapsed > 30
|
93
89
|
elapsed_str="[" + "%.0f" %(elapsed) + "s]"
|
94
90
|
Console.announce_task_end task, elapsed_str
|
@@ -110,16 +106,6 @@ class DevTasks < Hash
|
|
110
106
|
dev_task_defaults << key
|
111
107
|
end
|
112
108
|
end
|
113
|
-
|
114
|
-
#if(!Rake::Task.task_defined?('dev_tasks_default'))
|
115
|
-
# tasklist=""
|
116
|
-
# dev_task_defaults.each{|t|
|
117
|
-
# tasklist = tasklist + "," if tasklist.length > 0
|
118
|
-
# tasklist = tasklist + ":" + t.to_s
|
119
|
-
# }
|
120
|
-
# ruby="desc 'dev_tasks_default task [#{tasklist}]';task :dev_tasks_default => [#{tasklist}] do;puts '[:dev_task_default] completed in ' + DEV_TASKS.timer.elapsed_str;end"
|
121
|
-
# eval(ruby)
|
122
|
-
#end
|
123
109
|
end
|
124
110
|
|
125
111
|
|
data/lib/environment.rb
CHANGED
@@ -10,6 +10,29 @@ class Environment < Hash
|
|
10
10
|
"none"
|
11
11
|
end
|
12
12
|
|
13
|
+
def self.scm_origin
|
14
|
+
if(Dir.exists?(".git"))
|
15
|
+
`git remote show origin`.scan(/Fetch URL: ([\w:\/.-]+)/).each{|m|
|
16
|
+
return m.first.to_s
|
17
|
+
}
|
18
|
+
end
|
19
|
+
if(Dir.exists?(".svn"))
|
20
|
+
`svn info`.scan(/URL: ([\w:\/.-]+)/).each{|m|
|
21
|
+
return m.first.to_s
|
22
|
+
}
|
23
|
+
end
|
24
|
+
""
|
25
|
+
end
|
26
|
+
|
27
|
+
def self.svn_latest_revision
|
28
|
+
if(Dir.exists?(".svn"))
|
29
|
+
`svn info`.scan(/Last Changed Rev: ([\d]+)/).each{|m|
|
30
|
+
return m.first.to_s
|
31
|
+
}
|
32
|
+
end
|
33
|
+
""
|
34
|
+
end
|
35
|
+
|
13
36
|
def self.dev_root
|
14
37
|
["DEV_HOME","DEV_ROOT","USERPROFILE","HOME"].each {|v|
|
15
38
|
return ENV[v].gsub('\\','/') unless ENV[v].nil?
|
data/lib/publish.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require_relative('./environment.rb')
|
2
2
|
require_relative('./artifacts.rb')
|
3
3
|
|
4
|
-
|
5
4
|
class Publish < Array
|
6
5
|
|
7
6
|
def initialize
|
@@ -17,6 +16,30 @@ class Publish < Array
|
|
17
16
|
end
|
18
17
|
end
|
19
18
|
|
19
|
+
def update
|
20
|
+
if(defined?(DEV_TASKS))
|
21
|
+
if(DEV_TASKS).has_key?(:publish_path)
|
22
|
+
if(DEV_TASKS[:publish_path].contains?('svn://'))
|
23
|
+
lastestRev=Environment.svn_latest_revision
|
24
|
+
svn_publish_uri="#{DEV_TASKS[:publish_path]}/#{DEV_TASKS[:relative_path]}@latestRev"
|
25
|
+
local_dir="#{Environment.dev_root}/tmp/#{DEV_TASKS[:relative_path]}@latestRev"
|
26
|
+
FileUtils.mkdir_p(File.dirname(local_dir)) if(!File.exists(File.dirname(local_dir)))
|
27
|
+
dep_dir="#{Environment.dev_root}/dep/#{DEV_TASKS[:relative_directory]}@#{latestRev}@"
|
28
|
+
if(!`svn info #{svn_publish_uri}`.contains?('URL:'))
|
29
|
+
add "svn mkdir #{svn_publish_uri} --parents"
|
30
|
+
add "svn checkout #{svn_publish_uri} #{local_dir}@"
|
31
|
+
DEV_TASKS[:artifacts].each{|a|
|
32
|
+
f="#{Environment.dev_root}/tmp/#{a}"
|
33
|
+
add "<%File.cp('#{dep_dir}/#{a}','#{local_dir}/#{a}'%>"
|
34
|
+
add "svn add #{local_dir}/#{a} --parents"
|
35
|
+
}
|
36
|
+
add "svn commit #{local_dir} -m\"publish\""
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
20
43
|
def add command
|
21
44
|
self << command if(!include?(command))
|
22
45
|
end
|
data/lib/spec.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"dev_tasks","version":"0.0.
|
1
|
+
{"name":"dev_tasks","version":"0.0.115"}
|
data/lib/verify.rb
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
require_relative('./environment.rb')
|
2
|
+
|
3
|
+
class Verify < Array
|
4
|
+
|
5
|
+
def initialize
|
6
|
+
update
|
7
|
+
end
|
8
|
+
|
9
|
+
def update
|
10
|
+
if(defined?(DEV_TASKS))
|
11
|
+
if(Environment.scm=='svn')
|
12
|
+
lastestRev=Environment.svn_latest_revision
|
13
|
+
uri=DEV_TASKS[:scm_origin]+"@"+latestRev
|
14
|
+
dep_dir="#{Environment.dev_root}/dep/#{DEV_TASKS[:relative_directory]}@#{latestRev}@"
|
15
|
+
if(!File.exists?(dep_dir))
|
16
|
+
add "svn export #{uri} #{dep_dir}"
|
17
|
+
add "<%Environment.rake('#{dep_dir}','default',true)%>"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def add command
|
24
|
+
self << command if(!include?(command))
|
25
|
+
end
|
26
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dev_tasks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.115
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -118,6 +118,7 @@ files:
|
|
118
118
|
- lib/text.rb
|
119
119
|
- lib/timer.rb
|
120
120
|
- lib/upgrade.rb
|
121
|
+
- lib/verify.rb
|
121
122
|
- lib/spec.json
|
122
123
|
- spec/dependencies_spec.rb
|
123
124
|
- spec/dev_tasks_spec.rb
|