我们计划将Java Web应用程序构建环境迁移到CloudBeeS,但目前正在阻止我们的一个方面。我们正在开发一个多租户申请。它使用主机子域来识别租户,我们使用通配符DNS条目在生产中进行那种(例如:* .example.com)。

在开发中,我们在我们的主机文件中硬编码了一些条目以模仿。这些条目足以运行我们的测试:

...
127.0.0.1   test1.app.dev
127.0.0.1   test2.app.dev
127.0.0.1   test3.app.dev
127.0.0.1   test4.app.dev
.

所以基本上,Jenkins应该设置主机文件,然后在本地使用我们的Web容器启动我们的应用程序。然后针对正在运行的Web应用程序执行测试套件。

我试图在jenkins项目配置中添加一个预处理步骤,以编辑主机文件,但正如所预期的那样,jenkins作业没有权限执行此操作。

是否有一种方法可以在运行测试套件之前更改主机文件?或者我们可以做些什么来模拟通配符DNS条目?

有帮助吗?

解决方案

您可以使用37Signals的XIP.IO服务:

http://37signals.com/svn/Posts / 3191-Bullcing-Pow-040-with-xipio-support

因此您的主机名将是

  • test1.127.0.0.1.xip.io
  • test2.127.0.0.1.xip.io
  • test3.127.0.0.1.xip.io
  • test4.127.0.0.1.xip.io

    我亲自尝试并将这些在集中配置的区域中,以防xip.io服务退役,但运行可能相当便宜,因此应该是一定数量的一段时间。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top