我需要从SVN部署网站到不同的服务器,这些服务器都在我们自己的网络中。目前代码尚未编译,但将来可能会编译。
首先,需要将网站部署到开发服务器进行开发人员测试。
一旦开发人员确认无误,就会将其部署到测试服务器供测试人员测试。
最终确认后,将部署到服务器集群中的两个生产服务器。
每个服务器在web.config文件中有一些不同的设置(当然除了两个生产服务器)。我想使用模板,就像Ruby on Rails世界所做的那样。这似乎是处理多个web.config文件的优雅解决方案。
我还需要创建一个文件列表/报告,列出自上次部署以来更改的文件和更改内容。
我正在考虑编写一个脚本,将执行以下操作: 1. 获取要部署到的服务器和修订版本的参数
2. 使用
3. 删除web.config文件
4. 使用ttree(一个模板工具http://template-toolkit.org/)创建正确的web.config文件
5. 使用
6. 存储网站的
我的问题是这似乎不是最优雅的解决方案。它可能会变得难以维护,而我更喜欢使用已经可用的工具,而不是重新发明轮子。不幸的是,我认为MSDeploy不能做我需要的事情,但如果它能做到我需要的事情,我很乐意使用它或任何其他工具。有人知道任何适合此任务的工具吗?还是脚本是唯一的选择?
首先,需要将网站部署到开发服务器进行开发人员测试。
一旦开发人员确认无误,就会将其部署到测试服务器供测试人员测试。
最终确认后,将部署到服务器集群中的两个生产服务器。
每个服务器在web.config文件中有一些不同的设置(当然除了两个生产服务器)。我想使用模板,就像Ruby on Rails世界所做的那样。这似乎是处理多个web.config文件的优雅解决方案。
我还需要创建一个文件列表/报告,列出自上次部署以来更改的文件和更改内容。
我正在考虑编写一个脚本,将执行以下操作: 1. 获取要部署到的服务器和修订版本的参数
2. 使用
svn export -r <deploy revision>
将源代码导出到目录中3. 删除web.config文件
4. 使用ttree(一个模板工具http://template-toolkit.org/)创建正确的web.config文件
5. 使用
svn list -r <deploy revision>:<current server revision>
创建文件更改列表6. 存储网站的
<current server revision>
以便下次运行脚本时使用我的问题是这似乎不是最优雅的解决方案。它可能会变得难以维护,而我更喜欢使用已经可用的工具,而不是重新发明轮子。不幸的是,我认为MSDeploy不能做我需要的事情,但如果它能做到我需要的事情,我很乐意使用它或任何其他工具。有人知道任何适合此任务的工具吗?还是脚本是唯一的选择?