【问题标题】:Deploying a test web app for each GitHub pull request为每个 GitHub 拉取请求部署一个测试 Web 应用程序
【发布时间】:2016-05-12 00:37:57
【问题描述】:

GitHub 是否可以在提交拉取请求时触发新的测试部署?我希望它在服务器上创建一个新文件夹(首选 Azure),以便生成我们可以在拉取请求中引用的测试 URL(例如 http://testserver.com/PR602/)。

这将允许任何人测试拉取请求,而无需克隆存储库、签出分支并在本地构建它。

在我最初的研究中,我发现 Travis CI 可以deploy all branches,但我不清楚这是如何触发的。我是否必须编写由pull request web hooks 触发的自定义应用程序?我希望有人发现了一种更简单的方法。

【问题讨论】:

  • 检查this document。这是可能的,而且很容易设置。
  • 谢谢,@JackZeng。除非我遗漏了某些东西,否则所有说明都是针对部署特定分支的。我想自动将每个拉取请求部署到一个新文件夹,无论它来自哪个分支。
  • 哦,我明白了。您希望每个拉取请求都有一个唯一的 URL,以便每个用户都可以单独测试他/她的提交。对不起,我误会你了。这是一个有趣的问题。我会做一些挖掘,看看我能做些什么。
  • @MikeWheaton 你找到解决方案了吗?我也有兴趣部署每个 PR。谢谢

标签: azure github azure-web-app-service continuous-deployment


【解决方案1】:

我是否必须编写由拉取请求网络挂钩触发的自定义应用程序?

是的,或者找其他恰好编写了您需要的 webhook 处理程序的人。

编写 webhook 处理程序并不是很多工作。如果您不想将其与您当前的应用程序集成,您可以使用像 Flask 这样的微框架,只需几行代码即可完成此操作。

【讨论】:

  • 我正在尝试使用 Bamboo 构建计划运行 PR 验证检查。有什么例子可以指点我吗?
  • Bamboo 已经设置了 webhook 处理程序;你只需要connect GitHub to them
  • 谢谢,但我不清楚如何将其与 GitHub 集成以进行 PR 验证检查。 Bamboo 如何创建特定于触发它的 GitHub 提交的构建分支? Bamboo 如何将构建状态(待定、失败、通过)发送回 GitHub?看来我需要一个网络应用程序...
  • 我不知道 Bamboo“创建构建分支”是什么意思——它应该测试现有分支。无论您让 Bamboo 运行什么脚本来测试事物,都应该包括对 GitHub 状态 API 的调用。但是,这与这个问题的主题相去甚远,因此您可能应该打开自己的一个。
猜你喜欢
  • 2018-05-01
  • 1970-01-01
  • 2017-12-01
  • 2020-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-04
相关资源
最近更新 更多