为Qooxdoo项目构建配方。
mdvorak.recipe.qooxdoo的Python项目详细描述
构建配方,运行qooxdoo生成器脚本。它需要qooxdoo sdk才能运行。
它支持两个配方,默认(脚本)和运行。默认情况下,会在bin目录中生成脚本,因此您可以手动运行生成器。run在构建处理时运行命令,完全自动化该过程。
参数
- script-已写入脚本的名称。默认为零件名称。仅适用于默认(脚本)配方。被运行配方忽略。
- 命令-生成器执行的命令。它必须由项目配置导出。如果为空,将使用命令行参数或来自config.json的默认命令。
- config-项目配置文件的路径,或包含config.jsonfile的目录。
- qooxdoo sdk-qooxdoo sdk的路径。回退到${buildout:qooxdoo-sdk}变量。SDK必须存在。对应于QOOXDOO_PATH宏。
- cache-qooxdoo缓存路径。如果为空,${buildout:cache-directory}将被使用。如果两者都未指定,则将使用qooxdoo默认值。它对应于CACHE宏。
- let-qooxdoo环境变量,如config.json中的"let"关键字下。它应该是key:value格式,因为qooxdoo生成器需要它。它可能包含多对。可选。
- remove dirs-脚本执行时应删除的目录。路径是相对于构建根的。这也可以删除文件。可选。
- create dirs-应该在脚本执行时创建的目录。路径是相对于构建根的。有用的工作需要一些路径存在。可选。
- clean dirs-执行脚本时应删除的目录。路径是相对于构建根的。有用的工作需要一些路径存在,但你希望他们的内容,每次重现(如图像创建)。可选。
选项commands和config可以包含多个条目。然后为每个项目顺序构建项目,每个命令作为独立进程执行。
当省略commnads并将命令行参数用作命令时,它们也将被拆分并按顺序执行。因此,您可以一次性运行例如translate lint build,而生成器本身不支持该操作。
示例
buildout.cfg示例:
[buildout] parts = qooxdoo-sdk translate qx info qooxdoo-sdk = ${qooxdoo-sdk:destination} cache-directory = cache [qooxdoo-sdk] recipe = hexagonit.recipe.download url = http://downloads.sourceforge.net/project/qooxdoo/qooxdoo-current/2.1/qooxdoo-2.1-sdk.zip destination = qooxdoo-sdk strip-top-level-dir = true [translate] recipe = mdvorak.recipe.qooxdoo commands = translation config = src/config.json [qx] recipe = mdvorak.recipe.qooxdoo config = src/config.json [info] recipe = mdvorak.recipe.qooxdoo:run commands = info config = src/config.json
然后可以使用./bin/translate或使用./bin/qx的任何命令执行翻译作业。尝试./bin/qx info查看QooxDoo是如何配置的。 除此之外,信息部分在构建执行期间运行,立即显示qooxdoo配置。这不是很有用,只是一个例子。
为任何需要的作业(和作业序列)创建脚本。