计算属性算术

时间:2017-02-21 12:22:15

标签: jenkins deployment phing

简而言之,我无法根据构建文件中的属性进行计算。

我们说我有:

<property name="basedir" value="${project.basedir}" />&lt; - 当前值73

我如何知道之前的3个版本(72,7170)或者如何计算这些值(基于basedir属性)? < /强>

我试过(忽略添加):

  1. <property name="basedir" value="${project.basedir}+1" />&lt; - 但它汇总了价值:73+1

  2. <property name="basedir" value="${project.basedir+1}" />&lt; - 但这是错误的:build_${env.BUILD_NUMBER+1}

  3. 场景:删除旧版本(在发生回滚的情况下保留一些版本)

    P.S:重复的链接无效,因为这是通过 PHING 而非 ANT

    进行的部署

1 个答案:

答案 0 :(得分:1)

您可以使用adhoc-task

  <?xml version="1.0"?>
  <project default="main" phingVersion="2.11.0">
  <property name="basedir" value = "73"/>
  <adhoc-task name="increment"><![CDATA[
  class increment extends Task {
      private $value;

      function setvalue($value) {
          $this->value = $value;
      }
     function setProperty($property) {
         $this->property = $property;
      }

     function main() {
         $this->project->setProperty($this->property, ((int) $this->value + 1));
      }
  }
  ]]></adhoc-task>
  <target name="main">
  <echo>${basedir}</echo>
  <increment value="${basedir}" property="basedir"/>
  <echo>${basedir}</echo>
  </target>
  </project>