l5m-tools 0.0.2.beta → 0.0.2.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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"