class TestPrj attr :prj_name attr :svn attr :prj_id attr :local_path
def initialize(prj_name,svn,prj_id,local_path) @prj_name,@svn,@prj_id,@local_path = prj_name,svn,prj_id,local_path end
def jar_file "#{@local_path}/#{@prj_name}.jar" end
def self.get_today_uuid_path(prj_name) #"#{File.expand_path(File.dirname(__FILE__))}/test_jar/#{prj_name}/#{Time.now.strftime('%Y-%m-%d') }/#{UUIDTools::UUID.timestamp_create.to_s}" "/home/admin/taiji/test_jar/#{prj_name}/#{Time.now.strftime('%Y-%m-%d') }/#{UUIDTools::UUID.timestamp_create.to_s}" end end
system "svn co #{tp.svn} #{tp.local_path}/src" ($log.error("svn co #{tp.svn} #{tp.local_path}/src");exit(4)) if `echo $?`.chomp != '0' Dir.chdir "#{tp.local_path}/src" system "ls project.jelly project.xml 1>/dev/null 2>&1" ($log.error("project.jelly or project.xml not exit");exit(2)) if `echo $?`.chomp != '0' system "antx compile" $log.error("antx compile") if `echo $?`.chomp != '0'
begin fork do ($log.error("#{tp.local_path}/src/target/classes dir doesn't exist.");exit(6)) unless FileTest.exist?("#{tp.local_path}/src/target/classes") Dir.chdir "#{tp.local_path}/src/target/classes" system "jar cvf #{tp.jar_file} ." ($log.error("jar cvf #{tp.jar_file} .");exit(5)) if `echo $?`.chomp != '0' exit(0) end system("curl -v \"http://#{HOST}/taiji/project/updateProjectJarFile.jsp?projectid=#{tp.prj_id}&jarFile=#{CGI.escape tp.jar_file}\"") ($log.error("couldn't access http://#{HOST}/taiji/project/updateProjectJarFile.jsp?projectid=#{tp.prj_id}&jarFile=#{tp.jar_file}");exit(3)) if `echo $?`.chomp != '0' $log.info("#{tp.local_path}/#{tp.prj_name}.jar saved.") if `echo $?`.chomp == '0' rescue $log.error("Check your TestPrj ID, maybe not exist") $log.error("error:#{$!} at:#{$@}") exit(4) ensure end