surangapg/phing-property-bundle

辅助工具,使得将整个配置目录加载到 phing 属性中变得更加容易。

0.0.3 2018-01-08 21:31 UTC

This package is not auto-updated.

Last update: 2024-09-25 01:09:58 UTC


README

包含将目录中的所有文件加载的task。这使得phing可以在不特别冗长或繁琐的情况下加载一系列文件。例如,指向一个包含8个yml文件的/properties文件夹将自动将所有8个文件加载到属性中(以文件名为前缀)。

使用场景

假设你有一个项目,其中包含大量属性和各种阶段、环境等,但仍想自动化构建过程。你可以将所有内容放入一个非常大的build.properties文件中。但使用此task,你可以将其制作成基于目录的结构。

例如,文件系统看起来如下:

properties/ dist/ project.yml behat.yml githook.yml env/ githook.yml stage/ db.yml

使用task

在所有任务可用之前,你需要通过build.xml加载它们。

    
    <includepath classpath="${project.basedir}/vendor/surangapg/phing-property-bundle/src" />
    <taskdef classname="PropertyDirWriteTask" name="property-dir-write" />
    <taskdef classname="PropertyDirLoadTask" name="property-dir" />

编写所有属性

这将把一组综合属性写入/properties目录。

    <taskdef classname="PropertyDirLoadTask" name="property-dir-load" />
    <property-dir-load originDir="${project.basedir}/properties"
                   subLevels="dist,env,stage"
                   outputDir="${project.basedir}/properties"
                   order="project,dir,bin,behat"
                   override="true"
                   outputFull="true"
    />

编写和读取属性目录

读取新目录中的所有综合数据。

    <property-dir propertyDir="${project.basedir}/properties"/>