Php 子任务中的Phing override属性
我试图将一个复杂的基于phing的流程拆分为几个较小的步骤,但是在后续任务中,我遇到了访问属性的问题。基本上,我试图实现的是在主构建文件中定义一些属性,如Php 子任务中的Phing override属性,php,phing,Php,Phing,我试图将一个复杂的基于phing的流程拆分为几个较小的步骤,但是在后续任务中,我遇到了访问属性的问题。基本上,我试图实现的是在主构建文件中定义一些属性,如${repositoryUrl},或${clientName},并在后续目标中调整,甚至定义新属性(例如从存储库导出,然后删除一些文件,然后迁移数据库,然后卸载到服务器)。 我尝试了PhingTask、PhingImportTask和PhingCall,所有这些似乎都有自己的本地属性范围。因此,底线是:是否有可能(重新)在Phing中定义不同于
${repositoryUrl}
,或${clientName}
,并在后续目标中调整,甚至定义新属性(例如从存储库导出,然后删除一些文件,然后迁移数据库,然后卸载到服务器)。
我尝试了PhingTask、PhingImportTask和PhingCall,所有这些似乎都有自己的本地属性范围。因此,底线是:是否有可能(重新)在Phing中定义不同于第一个文件的属性,作为paramaeter(默认为build.xml)传递给Phing?因此,我自己找到了答案,我认为值得分享: 为了在以下任务中继承属性,您必须将构建拆分为多个阶段,并拥有一个主文件(例如
build.xml
),其唯一目的是启动所有任务,如下所示:
<target name="buildAll" description="runs build steps, preserves the environment"
depends =
"prepare,
filter,
config,
migrate,
backup,
deploy">
除了前面的答案,我还用Phing靶子做了一个测试,名为