• @jessiecm 就这几天啊。 @laofo, 为了保证端午节前收到奖品,我们下周 3 以前投票截止然后抽奖如何?

  • 大家踊跃投票啊!

  • 论坛升级到 3.1 at 2014年04月02日

    赞!辛苦了!

  • 嗯,去年有杯子的可以选择书!:)

  • 初步考虑上半年!

  • 不错哦,已经有 39 个朋友投票。:) 欢迎推荐给其他还不认识 SCMROAD 的 scmer,投票人数越多参考性越强!

  • 谢谢 “笑哈哈” SCMer 不太多,若是在分成几个地区投票,那么每个区域人数就更少了。参考性降低不少!

  • 转:http://www.juvenxu.com/2011/05/18/hudson-email-ext/

    根据帮助文档,我们可以了解到一些公共属性,下面我解释一下常用的属性。 属性详解:

    1. Override Global Settings 如果不选,该插件将使用默认的 E-mail Notification 通知选项。反之,您可以通过指定不同于 ( 默认选项) 的设置来进行覆盖。
    2. Default Content Type 指定构建后发送邮件内容的类型,有 Text 和 HTML 两种.
    3. Use List-ID Email Header 为所有的邮件设置一个 List-ID 的邮件信头,这样你就可以在邮件客户端使用过滤。它也能阻止邮件发件人大部分的自动回复 (诸如离开办公室、休假等 等)。你可以使用你习惯的任何名称或者 ID 号,但是他们必须符合如下其中一种格式 (真实的 ID 必须要包含在<和>标记里): Build Notifications “Build Notifications” 关于更详细的 List-ID 说明请参阅 RFC-2919.
    4. Default Subject 自定义邮件通知的默认主题名称。该插件能在邮件的主题字段中替换一些令牌,这样你就可以从构建中包含指定的输出信息。
    5. Default Content 自定义邮件通知的默认内容主体。该插件能在邮件的内容主体中替换一些令牌,这样你就可以从构建中包含指定的输出信息。
    6. Content Token Reference[公共配置] 所有的参数都是可选的,每个令牌的参数可以如下表示,字符串类型使用 name=“value”,而布尔型和数字型使用 name=value。如果{和}标记里面没有参数,则不会被解析。 示例:$TOKEN, ${TOKEN}, ${TOKEN, count=100}, ${ENV, var=” PATH”} 可用令牌 • ${BUILD_LOG, maxLines, escapeHtml} -显示最终构建日志。 o maxLines – 显示该日志最多显示的行数,默认 250 行。 o escapeHtml -如果为 true,格式化 HTML。默认 false。 • ${BUILD_LOG_REGEX, regex, linesBefore, linesAfter, maxMatches, showTruncatedLines, substText, escapeHtml, matchedLineHtmlStyle} -按正则表达式匹配显示构建日志的行数。 o 匹配符合该正则表达式的行数。参阅 java.util.regex.Pattern,默认 “(?i)\b(error|exception|fatal|fail(ed|ure)|un(defined|resolved))\b”。 o linesBefore -包含在匹配行之前的行编号。行数会与当前的另一个行匹配或者 linesAfter 重叠,默认 0。 o linesAfter -包含在匹配行之后的行编号。行数会与当前的另一个行匹配或者 linesBefore 重叠,默认 0。 o maxMatches -匹配的最大数量,如果为 0,则包含所有匹配。默认为 0。 o showTruncatedLines -如果为 true,包含 [...truncated ### lines...] 行。默认为 true。 o substText -如果非空,把这部分文字插入该邮件,而不是整行。默认为空。 o escapeHtml -如果为 true,格式化 HTML。默认 false。 o matchedLineHtmlStyle -如果非空,输出 HTML。匹配的行数将变为 html escaped matched line 格式。默认为空。 • ${BUILD_NUMBER} -显示当前构建的编号。 • ${BUILD_STATUS} -显示当前构建的状态 (失败、成功等等) • ${BUILD_URL} -显示当前构建的 URL 地址。 • ${CHANGES, showPaths, format, pathFormat} -显示上一次构建之后的变化。 o showPaths – 如果为 true,显示提交修改后的地址。默认 false。 o format – 遍历提交信息,一个包含%X 的字符串,其中%a 表示作者,%d 表示日期,%m 表示消息,%p 表示路径,%r 表示版本。注意,并不是所有的版本系统都支持%d 和%r。如果指定 showPaths 将被忽略。默认 “[%a] %m\n”。 o pathFormat -一个包含 “%p” 的字符串,用来标示怎么打印字符串。 • ${CHANGES_SINCE_LAST_SUCCESS, reverse, format, showPaths, changesFormat, pathFormat} -显示上一次成功构建之后的变化。 o reverse -在顶部标示新近的构建。默认 false。 o format -遍历构建信息,一个包含%X 的字符串,其中%c 为所有的改变,%n 为构建编号。默认” Changes for Build #%n\n%c\n”。 o showPaths, changesFormat, pathFormat – 分别定义如 ${CHANGES}的 showPaths、format 和 pathFormat 参数。 • ${CHANGES_SINCE_LAST_UNSTABLE, reverse, format, showPaths, changesFormat, pathFormat} -显示显示上一次不稳固或者成功的构建之后的变化。 o reverse -在顶部标示新近的构建。默认 false。 o format -遍历构建信息,一个包含%X 的字符串,其中%c 为所有的改变,%n 为构建编号。默认” Changes for Build #%n\n%c\n”。 o showPaths, changesFormat, pathFormat -分别定义如 ${CHANGES}的 showPaths、format 和 pathFormat 参数。 • ${ENV, var} – 显示一个环境变量。 o var – 显示该环境变量的名称。如果为空,显示所有,默认为空。 • ${FAILED_TESTS} -如果有失败的测试,显示这些失败的单元测试信息。 • ${JENKINS_URL} -显示 Jenkins 服务器的地址。(你能在 “系统配置” 页改变它)。 • ${HUDSON_URL} -不推荐,请使用 $JENKINS_URL • ${PROJECT_NAME} -显示项目的名称。 • ${PROJECT_URL} -显示项目的 URL。 • ${SVN_REVISION} -显示 SVN 的版本号。 • ${CAUSE} -显示谁、通过什么渠道触发这次构建。 • ${JELLY_SCRIPT, template} -从一个 Jelly 脚本模板中自定义消息内容。有两种模板可供配置:HTML 和 TEXT。你可以在 $JENKINS_HOME/email-templates 下自定义替换它。当使用自动义模板时,” template” 参数的名称不包含 “.jelly”。 o template -模板名称,默认” html”。 • ${FILE, path} -包含一个指定文件的内容 o path -文件路径,注意,是工作区目录的相对路径。 • ${TEST_COUNTS, var} -显示测试的数量。 o var – 默认 “total”。  total -所有测试的数量。  fail -失败测试的数量。  skip -跳过测试的数量。
  • 你可以使用 template 来做。内容部分只需要如下: ${JELLY_SCRIPT, template="dailybuild"} 然后在 JENKINS_HOME 下建一个 email-templates 目录,下面建一个文件 dailybuild.jelly 所有的 elly 脚本都放到这个文件中

  • Jenkins 的 Poll SCM at 2014年02月18日
  • jenkins Poll SCM 与 Build periodically 区别 poll scm:到了设定时间 是去检查 SCM 代码变化,若是 SVN 做 source code 存储,就检查 svn 有无变化,若有,就执行,若没有就不执行。 Build periodically:到了设定时间,就执行,也就是:不管是否代码变化都执行。

    • * * * * 一到五位分别代表: 分钟 (0-59) 小時 (0-23) 日期 (1-31) 月份 (1-12) 星期 (0-6)//0 代表星期天

    除了数字还有几个个特殊的符号就是""、"/"和"-"、",",代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每 5 个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。以下举几个例子说明问题:

    每天早上 6 点 0 6 * * * 每两个小时 0 */2 * * * 晚上 11 点到早上 8 点之间每两个小时,早上八点 0 23-7/2,8 * * *

    每个月的 4 号和每个礼拜的礼拜一到礼拜三的早上 11 点 0 11 4 * 1-3 1 月 1 日早上 4 点 0 4 1 1 *

  • (^o^)/~ 要常联系啊

  • 阿里金融 or 支付宝 ?

  • 跳不起啊!简历惨已不忍睹了,3~5 年之内应该不会动了!

  • 好久没有看到过杭州有如此高质量的坑了!伙伴们加油!

  • IBM-Senior SCM Developer-Ningbo at 2013年10月25日

    match me ,but ......

  • :)

  • 经历中。。。。。。 it's bad thing or good thing for Nokia? Only let time tell us!

  • 锤子科技 配置工程师 (CM) at 2013年08月22日

    薪水几何!

  • 哈哈,那我就有两本了。我买的已经到货了,再送一本我就送给公司的人吧!

  • 眼睛圆睁的测试经理 at 2013年08月09日

    很好的 case!35 岁左右的人若是还没有确定一下自已的发展方向,这是个大危机!

  • @laofo,不是正合你意么?

  • Git - 简易指南 at 2013年08月02日

    谢谢收下了。

  • jenkins 中权限管理 at 2013年07月30日

    使用项目级的权限管理。

  • 自已开发,有实力哦! :)