【Azure 应用服务】Azure Function 部署槽交换时,一不小心把预生产槽上的配置参数交换到生产槽上,引发生产错误
问题描述
部署Function代码先到预生产槽中,进行测试后通过交换方式,把预生产槽中的代码交换到生产槽上,因为在预生产槽中的设置参数值与生产槽有不同,但是在交换的时候,没有仔细检查。导致在交换的时候,把预生产的一些设置值交换到生产中,引起生产错误。
那么是否只进行代码交换而不进行设置值的交换呢?
问题解答
完全可以的。在添加配置参数时,可以选择“Deployment slot setting”。当勾选上后,这个设置值就不会跟随槽的交换而变动。
此外,在Azure Funciton门户操作交换槽时,会提示源槽和目标槽的配置变动。如下图:
参考资料
创建部署设置:https://docs.azure.cn/zh-cn/azure-functions/functions-deployment-slots#create-a-deployment-setting
可将设置标记为部署设置,使之具有“粘性”。 粘性设置不会与应用实例一起交换。
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!