Я использую композитор и phing для инициализации шаблона, который я сделал. В основном я использую этот пост-созданный проект для вызова моего phing-файла.Композитор пропускает подсказку в скриптах
"scripts": {
"post-create-project-cmd": "bin/phing -f boilerplate.xml"
}
Мой файл Phing выглядит примерно так:
<?xml version="1.0"?>
<project name="boilerplate" default="build">
<target name="build">
<propertyprompt propertyname="APP_NAME" promptcharacter=":" defaultValue="Example">Enter a name for the app</propertyprompt>
<propertyprompt propertyname="APP_NS" promptcharacter=":" defaultValue="Example">Enter a desired namespace for the app</propertyprompt>
<php expression="strtolower('${APP_NAME}');" returnProperty="APP_KEY" />
<php expression="str_replace(' ', '_', '${APP_KEY}');" returnProperty="APP_KEY" />
<php expression="preg_replace('/[^a-z0-9_-]/i', '', '${APP_KEY}');" returnProperty="APP_KEY" />
<php expression="preg_replace('/[_-]/', '', '${APP_KEY}');" returnProperty="APP_KEY_PHING" />
<php expression="str_replace(' ', '', '${APP_NS}');" returnProperty="APP_NS" />
<echo msg="Your chosen app name is '${APP_NAME}'" />
<echo msg="Your generated namespace is '${APP_NS}'" />
<echo msg="Your generated app key is '${APP_KEY}'" />
<echo msg="Your generated phing key is '${APP_KEY_PHING}'" />
<copy file="composer.json.tpl" tofile="composer.json"
overwrite="true">
<filterchain>
<replacetokens begintoken="%%" endtoken="%%">
<token key="APP_NAME" value="${APP_NAME}"/>
<token key="APP_KEY" value="${APP_KEY}"/>
<token key="APP_NS" value="${APP_NS}"/>
</replacetokens>
</filterchain>
</copy>
<delete>
<fileset dir=".">
<include name="composer.json.tpl" />
</fileset>
</delete>
<reflexive>
<fileset dir=".">
<include pattern="*.*" />
<include pattern="build/**/*" />
<include pattern="app/**/*" />
</fileset>
<filterchain>
<replacetokens begintoken="%%" endtoken="%%">
<token key="APP_NAME" value="${APP_NAME}"/>
<token key="APP_KEY" value="${APP_KEY}"/>
<token key="APP_KEY_PHING" value="${APP_KEY_PHING}"/>
<token key="APP_NS" value="${APP_NS}"/>
</replacetokens>
</filterchain>
</reflexive>
<echo msg="Project successfully prepared." />
</target>
</project>
Когда я просто выполнить свой файл Phing все работает нормально. Когда я выполняю его с помощью композитора, он пропускает свойствоprompts и использует значение по умолчанию.
Как я могу запретить такое поведение?
что пишется в лог-файл Phing? – Xatoo
Нет, он просто пропускает его –