我们正计划将我们的 Java Web 应用程序构建环境迁移到 Cloudbees,但目前有一个方面阻碍了我们。我们正在开发一个多租户应用程序。它使用主机子域来识别租户,我们使用通配符 dns 条目在生产中执行此操作(例如:*.example.com)。
在开发过程中,我们在 hosts 文件中硬编码了一些条目来模仿它。这些条目足以运行我们的测试:
...
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 应该设置 hosts 文件,然后在本地使用我们的 Web 容器启动我们的应用程序。然后针对正在运行的 Web 应用程序执行测试套件。
我试图在 Jenkins 项目配置中添加一个预处理步骤来编辑主机文件,但正如预期的那样,Jenkins 作业没有这样做的权限。
有没有办法在我的测试套件运行之前更改主机文件?或者我们可以做些什么来模拟通配符 dns 条目?