Ruby_SVN打包脚本-创新互联
根据SVN相关目录中的 .f 文件里面的内容来打包,并ci到另一个SVN,然后再发邮件给指定人员。
创新互联专注于源城企业网站建设,成都响应式网站建设公司,成都做商城网站。源城网站建设公司,为源城等地区提供建站服务。全流程按需开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务脚本如下:
#!/usr/bin/ruby require 'net/smtp' require 'fileutils' require 'find' svn_server = "http://192.168.1.5/svn/TEST" to_mail = "/home/test/maillist.txt" #mail address list svn_tmp_dir = "/tmp/tmp." + rand(99999).to_s def mailer(mailadd,modules,comment,version,tar_name,size,ci_time) File.open(mailadd,'r').each {|dst| msgstr = <To: #{dst.chomp} Subject: SVN_Release Module: #{modules} Comment: #{comment} Version: #{version} TarName: #{tar_name} TarSize: #{size} CiTime: #{ci_time} END_OF_MESSAGE acct = 'sync.svn@163.com' domain = "163.com" pass = '123123' Net::SMTP.start('smtp.163.com', 25, domain, acct, pass, :login) { |smtp| smtp.send_message msgstr,'sync.svn@163.com',dst.chomp } #Net::SMTP.start(server, port, domain, acct, passwd, authtype) } end def usage help=< &1` if result.match(/not under/) `svn add #{tar_name}` result = `svn ci #{tar_name} -m "#{ARGV[3]}"` end mailer(to_mail,path,ARGV[3],result.split[-1][0..-2],tar_name,File.size(tar_name),Time.now.strftime("%Y/%m/%d %H:%M")) FileUtils.rm tar_name, :force => true FileUtils.remove_dir(svn_tmp_dir) else usage end
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
文章标题:Ruby_SVN打包脚本-创新互联
文章地址:http://cdiso.cn/article/jspop.html