部署时运行一次脚本

时间:2011-07-12 15:31:57

标签: php deployment phing

我们目前正在使用Phing进行部署,并使用dbdeploy来应用任何数据库更改。但是,我们希望在部署期间进行更改,这些更改可以通过我们的对象模型更好地处理,因此我们编写一次使用PHP脚本,我们在部署后手动运行。

是否存在类似于dbdeploy的现有解决方案,它们将处理正在运行的脚本,更重要的是,跟踪哪些已运行,以便每个脚本只运行一次?

3 个答案:

答案 0 :(得分:1)

我认为这也可能对其他人有用。如果您无法想到其他解决方案,我认为最好的方法是查看实现DBDeploy task的文件,将其复制到自定义任务中,重用数据库检查功能,而不是生成SQL脚本执行你需要的脚本。

如果您对此感到满意,您也可以考虑将其贡献给Phing。我相信他们会很乐意加入它(见Phing-How To Contribute)。

答案 1 :(得分:0)

怎么样:

  1. 将脚本放在文件夹中。
  2. 循环浏览文件夹并执行脚本。
  3. 删除/移动脚本文件一旦执行。
  4. 听起来像是一个黑客,但这是简单的方式imo。

答案 2 :(得分:-1)

我可以想象的最简单的方法是使用 Phing ExecTask ,同时查看Phing User Guide (stable)