l5m-tools 0.0.2.beta → 0.0.2.pre

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -10,6 +10,6 @@ group :development do
10
10
  gem "rdoc", "~> 3.12"
11
11
  gem "bundler", "~> 1.2.0"
12
12
  gem "jeweler", "~> 1.8.4"
13
- #gem "etc"
13
+ gem "etc"
14
14
  #gem "rcov", ">= 0"
15
15
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2.beta
1
+ 0.0.2.pre
data/bin/l5m CHANGED
@@ -1,7 +1,3 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'l5m-tools'
3
- if ARGV[0] == 'svn'
4
- L5MTools.svn.run(*ARGV)
5
- else
6
- L5MTools.application.run(*ARGV)
7
- end
3
+ L5MTools.application.run(*ARGV)
data/bin/set_env.sh CHANGED
@@ -3,17 +3,19 @@ alias svn.log='svn.tool log'
3
3
  alias svn.status='svn.tool status'
4
4
  alias svn.update='svn.tool update'
5
5
  alias update.root='rm -rf $CATALINA_HOME/webapps/ROOT && rm -rf $CATALINA_HOME/webapps/ROOT.war && scp $DEV_HOST:/home/l5m/mytc/webapps/ROOT.war $CATALINA_HOME/webapps'
6
- #export JAVA_HOME="C:/Program Files/Java/jdk1.5.0_14"
6
+ export JAVA_HOME="C:/Program Files/Java/jdk1.5.0_14"
7
7
  function update.28(){
8
8
  ssh 28 "cd ~/project && ./make_wars.sh $@ && ./deploy_on_28.sh $@"
9
9
  }
10
10
  export WEBAPPS='$CATALINA_HOME/webapps'
11
+ #export CLASS_PATH=$(find C:/eclipse/plugins/org.junit4_4.3.1/ "C:/Program Files/Java/jdk1.5.0_14/jre/lib/" "C:/Program Files/Java/jdk1.5.0_14/jre/lib/ext/" C:/Tomcat5.5/common/lib/ C:/Tomcat5.5/common/lib/ C:/Tomcat5.5/shared/lib/ C:/Tomcat5.5/shared/lib/ C:/Tomcat5.5/common/i18n/ -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
12
+ #export CLASSPATH=$CLASS_PATH
11
13
  function sync.package(){
12
14
  svn.tool.rb status $1 | awk '{print $2}' | sed '/^$/d' | sed -e 's/\\/\//g' | while read fi ; do echo $fi && cp $WORKSPACE/$1/src/$fi $WORKSPACE/$2/src/$fi; done
13
15
  }
14
- for i in $CATALINA_HOME/common/lib/ $CATALINA_HOME/common/i18n/
16
+ for d in $ECLIPSE_HOME/plugins/org.junit4_4.3.1/ $JAVA_HOME/jre/lib/ JAVA_HOME/jre/lib/ext/ $CATALINA_HOME/common/lib/ $CATALINA_HOME/common/lib/ $CATALINA_HOME/shared/lib/ $CATALINA_HOME/shared/lib/ $CATALINA_HOME/common/i18n/
15
17
  do
16
- export CLASS_PATH=$CLASS_PATH;(find $i -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
18
+ export CLASS_PATH = $CLASS_PATH;$(find $i -regex ".*\.\(jar\|zip\)" | xargs echo |tr ' ' ';')
17
19
  done
18
20
 
19
21
  export CLASSPATH=$CLASS_PATH
data/bin/svn.tool CHANGED
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env ruby
2
- require 'l5m-tool'
3
- L5MTools.svn.run(*ARGV)
2
+ require 'l5m-tool.rb'
data/l5m-tools.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "l5m-tools"
8
- s.version = "0.0.2.beta"
8
+ s.version = "0.0.2.pre"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["RONGHAI"]
12
- s.date = "2013-02-07"
12
+ s.date = "2013-02-05"
13
13
  s.description = "A tool set for Lake5Media and QingheTech developer"
14
14
  s.email = "ronghai.wei@outlook.com"
15
15
  s.executables = ["duplicate-app", "l5m", "make-app", "set_env.sh", "svn.tool"]
@@ -35,9 +35,7 @@ Gem::Specification.new do |s|
35
35
  "l5m-tools.gemspec",
36
36
  "lib/l5m-tools.rb",
37
37
  "lib/l5m-tools/application.rb",
38
- "lib/l5m-tools/array.rb",
39
38
  "lib/l5m-tools/env.rb",
40
- "lib/l5m-tools/ignore/svn_ingore.yaml",
41
39
  "lib/l5m-tools/l5m-tools-module.rb",
42
40
  "lib/l5m-tools/string.rb",
43
41
  "lib/l5m-tools/svn.rb",
@@ -67,17 +65,20 @@ Gem::Specification.new do |s|
67
65
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
68
66
  s.add_development_dependency(%q<bundler>, ["~> 1.2.0"])
69
67
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
68
+ s.add_development_dependency(%q<etc>, [">= 0"])
70
69
  else
71
70
  s.add_dependency(%q<shoulda>, [">= 0"])
72
71
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
73
72
  s.add_dependency(%q<bundler>, ["~> 1.2.0"])
74
73
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
74
+ s.add_dependency(%q<etc>, [">= 0"])
75
75
  end
76
76
  else
77
77
  s.add_dependency(%q<shoulda>, [">= 0"])
78
78
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
79
79
  s.add_dependency(%q<bundler>, ["~> 1.2.0"])
80
80
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
81
+ s.add_dependency(%q<etc>, [">= 0"])
81
82
  end
82
83
  end
83
84
 
data/lib/l5m-tools/env.rb CHANGED
@@ -3,6 +3,6 @@ module L5MTools
3
3
  raise "no CATALINA_HOME env" unless CATALINA_HOME = ENV["CATALINA_HOME"]
4
4
  raise "no SVN_USER env" unless SVN_USER = ENV["SVN_USER"]
5
5
  raise "no SENDER_EMAIL env" unless SENDER_EMAIL = ENV["SENDER_EMAIL"]
6
- PACKAGES = ENV["PACKAGES"].split(/[,;:]/) if ENV["PACKAGES"]
6
+ PACKAGES = ENV["PACKAGES"].split(',') if ENV["PACKAGES"]
7
7
  DEV_HOST = ENV["DEV_HOST"]
8
8
  end
@@ -1,12 +1,9 @@
1
1
  require 'l5m-tools/application'
2
- require 'l5m-tools/svn'
2
+
3
3
  module L5MTools
4
4
  class << self
5
5
  def application
6
6
  @application ||= L5MTools::Application.new
7
- end
8
- def svn
9
- @svn ||= L5MTools::SVN.new
10
7
  end
11
8
  end
12
9
  end
data/lib/l5m-tools/svn.rb CHANGED
@@ -1,20 +1,5 @@
1
- require 'l5m-tools/env'
2
- require 'pathname'
3
-
4
1
  module L5MTools
5
2
  class SVN
6
- require 'l5m-tools/tools'
7
- include Tools
8
- require 'l5m-tools/array'
9
- require 'yaml'
10
-
11
- class << self
12
- require "fileutils"
13
- include FileUtils
14
- end
15
- copy(Pathname.new(__FILE__).parent + 'ignore/svn_ingore.yaml', File.expand_path('~/svn_ingore.yaml')) unless File.exists? File.expand_path('~/svn_ingore.yaml')
16
- IGNORE_FILES = YAML::load(File.open(File.expand_path('~/svn_ingore.yaml'), 'rb') { |f| f.read } )
17
- SPERATE = "------------------------------------------------------------------------"
18
3
  class << self
19
4
  def method_missing(method_id, *arguments, &block)
20
5
  self.class_eval %{
@@ -25,85 +10,30 @@ module L5MTools
25
10
  end
26
11
  }, __FILE__, __LINE__
27
12
  send(method_id, *arguments, &block)
28
- end
29
- end
30
-
31
- def method_missing(method_id, *arguments, &block)
32
- self.class.class_eval %{
33
- def #{method_id}(packz, options={}, svn_options=[], &b)
34
- rs = ''
35
- packz.each{|pac|
36
- next unless change_to_package_directory(pac)
37
- rs << SVN.#{method_id}(*svn_options)
38
- }
39
- rs
40
- end
41
- }, __FILE__, __LINE__
42
- puts
43
- send(method_id, arguments[0], arguments[1], arguments[2], &block)
44
- end
45
-
46
- def change_to_package_directory package
47
- change_directory "#{WORKSPACE}/#{package}"
13
+ end
48
14
  end
49
-
50
-
51
- def log packages, options={}, svn_options=[]
52
- log = ''
53
- usr = options[:username] || ''
54
- date = options[:date] || Date.today.strftime("%F")
55
- reverse = options[:reverse]
56
- packages.each{|pac|
57
- next unless change_to_package_directory(pac)
58
- commits = SVN.log("-q", "-r", "HEAD:{#{date}}") .split($/).delete_if{|c| c[0] == '-' || (usr != '' && c.split("|")[1].strip != usr)}.collect! {|c| c.split("|")[0].strip[1..-1]}.sort!
59
- commits.reverse! if reverse
60
- commits.each{|c|
61
- log << SVN.log("-v", "-r", c).gsub!(/(#{$/}){2,}/m,$/+$/)
62
- }
63
- }
64
- log.gsub!(/(#{SPERATE}#{$/}#{SPERATE})/m, SPERATE)
65
- log
66
- end
67
15
 
68
- def status packages, options={}, svn_options=[]
69
- status = ''
70
- packages.each{|pac|
71
- innert_dirs =(pac.include?("tag"))?["src", "WebContent"]:["src"];
72
- lines = [];
73
- innert_dirs.each{|d|
74
- next unless change_to_package_directory("#{pac}/#{d}")
75
- lines += (SVN.status).split($/)
76
- }
77
- lines -= IGNORE_FILES[pac] unless IGNORE_FILES[pac].nil?
78
- status << "#{pac} #{$/}" << lines.join($/) << "#{$/}" unless lines.empty?
79
- }
80
- status
81
- end
82
-
83
- def update packages, options={}, svn_options=[]
84
- log = ''
85
- packages.each{|pac|
86
- next unless change_to_package_directory(pac)
87
- log << pac+"...#{$/}"
88
- log << SVN.update
89
- }
90
- log
91
- end
92
- alias :st :status
93
16
  def run(*args, &block)
94
17
  cmd = args.shift
95
- args , svn_args = args[0..(args.index '--')], args[((args.index '--')+1)..-1] if args.index '--'
96
-
97
- options = {username:(args.option! '--user' || SVN_USER), reverse:(args.delete('-r')), date: (args.option!('--date')), mail:(args.delete('-e') || args.delete('--email')) }
98
- options[:sendto] = args.option!('-s') || SENDER_EMAIL
99
- options[:title] = args.option!('--title') || "svn #{cmd} @#{Time.now.strftime("%F %T")}"
100
-
18
+ args = args[0..(args.index '--')] if args.index '--'
19
+ options = {}
20
+ options[:username] = args.option! '--user'
21
+ options[:reverse] = args.delete('-r')
22
+ options[:date] = args.option!('--date')
23
+ options[:mail] = args.delete('-e') || args.delete('--email');
24
+ options[:username] ||= SVN_USER
101
25
  packages = args.empty? ? PACKAGES : args
102
-
103
- result = send cmd, packages, options, svn_args
104
- send_mail(options[:sendto], options[:title] , result) if options[:mail]
105
- block.call(result) if block_given?
106
- result
107
- end
26
+ result = case cmd
27
+ when 'status', 'st' then svn_status(packages)
28
+ when 'update' then svn_update(packages)
29
+ when 'log' then svn_log(packages, options[:date] , options[:username] , options[:reverse])
30
+ else usage
31
+ end
32
+ #send_mail(SEND_TO, "svn #{cmd} @#{Time.now.strftime("%F %T")}" , result) if options[:mail] || (puts result) unless result.nil? || result.empty?
33
+ end
34
+ end
35
+ class Application
36
+
37
+
108
38
  end
109
39
  end
@@ -1,69 +1,62 @@
1
- module L5MTools
2
- module Tools
3
- def send_mail to, subject="", body=""
4
- require 'win32ole'
5
- outlook = WIN32OLE.new('Outlook.Application')
6
- mapi = outlook.GetNameSpace('MAPI')
7
- message = outlook.CreateItem(0)
8
- message.Subject = subject
9
- message.Body = body
10
- message.To = to
11
- message.Save
12
- message.Send
13
- mapi.SyncObjects
14
- end
15
-
16
- require "fileutils"
17
- include FileUtils
18
- require 'pathname'
19
-
20
- def replace(in_file, replacements)
21
- contents = IO.read(in_file)
22
- changed = false
23
- replacements.each do | key, value |
24
- if(contents.gsub!(key, value))
25
- changed = true;
26
- end
27
- end
28
- File.open(in_file, 'w') { | io | io.puts(contents) }
29
- return changed
30
- end
31
- def copy_silently(from, to, replacements)
32
- copy(from, to)
33
- replace(to, replacements)
34
- end
35
- def change_directory(dir, &operation)
36
- return Dir::chdir(dir, &operation) if File.exists? dir
37
- end
38
- def ask(default_answer, *question_lines)
39
- puts question_lines
40
- print "[#{default_answer}] => "
41
- answer = STDIN.readline.strip
42
- answer == '' ? default_answer.to_s : answer.to_s
43
- end
44
-
45
-
46
- def to_file(file, replacements = {})
47
- dirname = File.dirname(file)
48
- basename = File.basename(file)
49
- replacements.each do | key, value |
50
- basename.gsub!(key, value)
51
- end
52
- dirname + File::SEPARATOR + basename;
53
- end
54
-
55
- def duplicate_and_replace(file, replacements = {})
56
- to = to_file(file, replacements)
57
- yield to if block_given?
58
- copy_silently(file, to, replacements)
59
- end
60
-
61
-
62
- def user_home
63
- require 'etc'
64
- Etc.getpwuid.dir
65
- end
66
-
67
- #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
68
- end
69
- end
1
+ module L5MTools
2
+ module Tools
3
+ def send_mail to, subject="", body=""
4
+ outlook = WIN32OLE.new('Outlook.Application')
5
+ mapi = outlook.GetNameSpace('MAPI')
6
+ message = outlook.CreateItem(0)
7
+ message.Subject = subject
8
+ message.Body = body
9
+ message.To = to
10
+ message.Save
11
+ message.Send
12
+ mapi.SyncObjects
13
+ end
14
+
15
+ require "fileutils"
16
+ include FileUtils
17
+ require 'pathname'
18
+
19
+ def replace(in_file, replacements)
20
+ contents = IO.read(in_file)
21
+ changed = false
22
+ replacements.each do | key, value |
23
+ if(contents.gsub!(key, value))
24
+ changed = true;
25
+ end
26
+ end
27
+ File.open(in_file, 'w') { | io | io.puts(contents) }
28
+ return changed
29
+ end
30
+ def copy_silently(from, to, replacements)
31
+ copy(from, to)
32
+ replace(to, replacements)
33
+ end
34
+ def change_directory(dir, &operation)
35
+ return Dir::chdir(dir, &operation) if File.exists?dir
36
+ end
37
+ def ask(default_answer, *question_lines)
38
+ puts question_lines
39
+ print "[#{default_answer}] => "
40
+ answer = STDIN.readline.strip
41
+ answer == '' ? default_answer.to_s : answer.to_s
42
+ end
43
+
44
+
45
+ def to_file(file, replacements = {})
46
+ dirname = File.dirname(file)
47
+ basename = File.basename(file)
48
+ replacements.each do | key, value |
49
+ basename.gsub!(key, value)
50
+ end
51
+ dirname + File::SEPARATOR + basename;
52
+ end
53
+
54
+ def duplicate_and_replace(file, replacements = {})
55
+ to = to_file(file, replacements)
56
+ yield to if block_given?
57
+ copy_silently(file, to, replacements)
58
+ end
59
+
60
+ #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
61
+ end
62
+ end
data/lib/l5m-tools.rb CHANGED
@@ -10,7 +10,7 @@ module L5MTools
10
10
  application = ask("","Please input application name")
11
11
  use_base_worker = ask("true","Use AbstractBaseWorker?").to_boolean
12
12
  old_make_app(package, application, use_base_worker, &block)
13
- end
13
+ end
14
14
  alias :make :make_app
15
15
  alias :dup :duplicate_app
16
16
  def run(*args, &block)
@@ -5,30 +5,11 @@ class TestL5mTools < Test::Unit::TestCase
5
5
  # flunk "hey buddy, you should probably rename this file and start testing for real"
6
6
  # end
7
7
 
8
- #should "duplicate app test" do
9
- # L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
- #end
8
+ should "duplicate app test" do
9
+ L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
+ end
11
11
  #should "make app test" do
12
12
  #L5MTools.application.make_app
13
13
  #end
14
- #should "svn update test" do
15
- # puts L5MTools.svn.run('update', 'rem')
16
- # end
17
- #should "svn info test" do
18
- # puts L5MTools.svn.run('info', '-s' ,'ronghai@me.com', '--title','test case' , '-e' , 'rei')
19
- #end
20
- # should "svn info test" do
21
- # puts L5MTools.svn.run('help', 'rei')
22
- # end
23
- # should "svn info test" do
24
- # puts L5MTools.svn.run('info', 'rei' , '--','--xml')
25
- # end
26
-
27
- # should "svn log test" do
28
- # puts L5MTools.svn.run('log', 'rei')
29
- # end
30
14
 
31
- # should "svn status test" do
32
- # puts L5MTools.svn.run('st', 'rei')
33
- # end
34
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: l5m-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.beta
4
+ version: 0.0.2.pre
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-07 00:00:00.000000000 Z
12
+ date: 2013-02-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &70256627042100 !ruby/object:Gem::Requirement
16
+ requirement: &70309971360060 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70256627042100
24
+ version_requirements: *70309971360060
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &70256627041060 !ruby/object:Gem::Requirement
27
+ requirement: &70309971358780 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.12'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70256627041060
35
+ version_requirements: *70309971358780
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &70256627040220 !ruby/object:Gem::Requirement
38
+ requirement: &70309971358160 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.2.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70256627040220
46
+ version_requirements: *70309971358160
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70256627038780 !ruby/object:Gem::Requirement
49
+ requirement: &70309971357380 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,7 +54,18 @@ dependencies:
54
54
  version: 1.8.4
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70256627038780
57
+ version_requirements: *70309971357380
58
+ - !ruby/object:Gem::Dependency
59
+ name: etc
60
+ requirement: &70309971356700 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *70309971356700
58
69
  description: A tool set for Lake5Media and QingheTech developer
59
70
  email: ronghai.wei@outlook.com
60
71
  executables:
@@ -85,9 +96,7 @@ files:
85
96
  - l5m-tools.gemspec
86
97
  - lib/l5m-tools.rb
87
98
  - lib/l5m-tools/application.rb
88
- - lib/l5m-tools/array.rb
89
99
  - lib/l5m-tools/env.rb
90
- - lib/l5m-tools/ignore/svn_ingore.yaml
91
100
  - lib/l5m-tools/l5m-tools-module.rb
92
101
  - lib/l5m-tools/string.rb
93
102
  - lib/l5m-tools/svn.rb
@@ -117,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
117
126
  version: '0'
118
127
  segments:
119
128
  - 0
120
- hash: 314583582771401735
129
+ hash: 1132866967503484104
121
130
  required_rubygems_version: !ruby/object:Gem::Requirement
122
131
  none: false
123
132
  requirements:
@@ -1,13 +0,0 @@
1
- class Array
2
- ##
3
- # This method will return the argument value.
4
- # = Example
5
- # ["svn", "--email", "ronghai@test.com"].option!('--email)' => "ronghai@test.com"
6
- # And the list will be ["svn"]
7
- # get option index --email index, delete --email, then delete value next to --email
8
- def option!(opt)
9
- if i = self.index(opt)
10
- return self.delete_at(i) && self.delete_at(i)
11
- end
12
- end
13
- end
@@ -1,21 +0,0 @@
1
- ---
2
- customtags:
3
- - M com\l5m\customtags\tags\servlets\ContextInitListener.java
4
- qhtcommon:
5
- - M com\l5m\common\engine\DbHandler.java
6
- - M com\l5m\common\bean\NavigationBean.java
7
- - M com\l5m\common\bean\PackageFileBean.java
8
- - M com\l5m\common\util\BASE64Encoder.java
9
- - M com\l5m\common\util\AppLog.java
10
- common:
11
- - "? javascript\\timespan.js"
12
- - "? javascript\\prototypeV7.js"
13
- - "? javascript\\timespanlite.js"
14
- - "? javascript\\timespanweekly.js"
15
- - D javascript\prototype.js
16
- - M jsp\TimeSpanNew.jsp
17
- - M com\l5m\common\engine\DbHandler.java
18
- - M com\l5m\common\l5m_util\module\DemoModule.java
19
- - M com\l5m\common\util\NavigationAccessUtil.java
20
- - "? com\\l5m\\common\\util\\view"
21
- - "? com\\l5m\\common\\util\\db"