题
我们计划将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服务退役,但运行可能相当便宜,因此应该是一定数量的一段时间。
不隶属于 StackOverflow