首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Microsoft Release Management实现持续交付

使用Microsoft Release Management实现持续交付
EN

Stack Overflow用户
提问于 2014-12-12 19:45:02
回答 1查看 282关注 0票数 0

我正在做一个毕业设计,我应该在我工作的公司内自动部署cyclus。他们想要使用的工具是微软的Release Management

然而,当我进一步研究Release Management的特性时,它提出了更多的问题而不是答案。

一些背景信息。

该公司拥有的所有环境都将移至数据中心,并在虚拟机(VMware)上运行。他们可以使用工具vCloud director来创建和管理虚拟机。

为了让事情变得简单,现在有四个环境:1个开发,2个测试和1个接受。这四个环境总是在运行,所以我想Release Management连接到这些服务器是没有问题的,我可以毫无问题地制作发布模板。

现在到了棘手的部分。在部署到开发环境的同时,他们希望创建一个新的虚拟机(使用powershell脚本,开发环境的某种副本),并对此环境执行相同的部署。此脚本需要与第三方工具或主机提供商提供的REST API进行通信。我知道脚本需要在发布模板中的服务器组件中运行。因此,我知道两个已知的解决方法。我可以在部署到开发人员时在我的发布模板中运行此脚本,也可以使用专用服务器来运行所有脚本来创建新的VM。

问题是,我如何部署到这个新的环境,而不是手动告诉发布管理人员有一个新的服务器?这个过程需要完全自动化。

EN

回答 1

Stack Overflow用户

发布于 2014-12-12 21:36:04

一句话: Release Management目前没有一种本机的、简单的方法来配置新的VM并部署到它们。我自己也遇到了这个限制。使用部署器是无法做到这一点的。但是,您可以绕过它。

我采用的方法是使用期望的状态配置,并结合使用"springboard“服务器(rm-dsc-launcher)和我编写的自定义PowerShell脚本。在我的例子中,它是Azure。在您的例子中,它是VMWare。无论如何:

  1. I创建了所需的状态配置脚本以及配置我的环境和安装软件所需的任何自定义DSC资源。这将签入到源代码管理中,并推送到build drop,以便在部署时可用。
  2. 我创建了一个名为“预配环境”的自定义工具/操作,它采用了创建新VM所需的所有参数。
  3. 我创建了一个名为"Execute DSC script“的自定义工具,并在我的应用程序的二进制文件的组件中使用此工具。其中一个参数是部署脚本的路径。您可以通过将值$(PackageLocation)作为参数传递给组件来访问二进制文件/脚本的路径。

它不是世界上最漂亮的解决方案,但它是功能性的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27442984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档