【发布时间】:2011-04-05 18:01:36
【问题描述】:
我发布了一个部分问题,部分漫无边际,希望它能引起讨论并回答我的问题,如果我诚实的话,这更像是一系列要求。
在我的工作场所,构建是非常劳动密集型的。这是因为我们的团队非常小,并且怀疑自动化将不可避免地出错,因为我们团队中没有专业知识来正确地完成它。我认为这是一个合理但有缺陷的论点。我身边确实有一位中层经理,他似乎很喜欢自动化的概念,并且非常成功地使用了许多小型自动化功能。
我的目标是将某种自动化构建环境与我们的发布系统结合起来,这需要管理人员制作各种文档。这是 TickIT 认证的要求,不可协商。我想象做的是产生一个(Windows)工作流——我们为此设置了 IT 基础架构并且在公司范围内都很熟悉——它提示管理人员提供必须提交的文档,以便进行构建和发布。我们不是软件公司,我们是销售软件的公司,所以这些功能需要在非技术方面进行宣传。
因此,总而言之,我们的用例如下所示:
- 经理审核任务跟踪器并根据当前状态授权发布
- 工作流程开始,缓存了当前的 SVN 修订版
- 工作流程要求项目经理提供大量pdf文档等需要内置到安装包中
- 工作流会在 CruiseControl 等集成管理器上启动先前缓存的 SVN 修订版上的构建过程(我将持续集成所做的所有事情都包括在内,包括单元测试)
- 已完成的安装包会自动安装在各种虚拟机上(支持的完整操作系统和语言集),并且可供 QA 使用
- 从 QA 处完成签核后,安装包将发布到网络
当然,由于没有任何东西可以正常工作,因此应该包括“中断”工作流程并随时手动进行的能力,因为我们不希望发布被一台无法完成工作的愚蠢机器拖住一点常识也可以。
有没有人有任何可以被认为是这种过程的案例研究,或者任何关于它可能是多么简单或具有挑战性,或者它是多么合适?
【问题讨论】:
-
你认为呢?如果我要更具体一点,我可能会将其命名为“我如何将 Windows 工作流编程为……”或“我如何让 CCNet 做……”。我想我的问题含糊不清。
-
这有点悬而未决,这就是我没有投票关闭的原因。通常 SO 更适合特定的编程问题(带有代码示例)
标签: workflow continuous-integration cruisecontrol.net build-automation nant