我的团队使用编译器指令为不同阶段(调试、测试、发布)创建不同版本的产品,但现在我们想要移动 CI/CD 策略,我们正在讨论使用编译器指令是否是一个好主意,因为为一种配置生成的工件不能用于另一种配置,例如,我们的 CI 服务器使用测试配置运行构建过程,并且构建过程的所有阶段都通过了,包括 UI 自动化测试,在此过程中创建的工件不能用于部署到生产环境,因为对于生产环境,应用程序需要使用发行版进行编译配置,从而创建一组新的未经测试的工件来部署生产环境,在我看来,这使得在前一个阶段执行的工作已经过时,因为您可能希望针对新创建的工件运行测试。
有没有人遇到过类似的情况,如果有,您是如何与您的团队一起解决的。当您想要迁移到 CI/CD 策略时,使用 c# 编译器指令是个好主意吗?