Service Fabric 从以前的部署中部署已弃用的文件
Service fabric deploy deprecated files from previous deployment
在 Service Fabric 上重新部署应用程序时(使用 Publish-UpgradedServiceFabricApplication
),为什么我总是看到以前部署的文件?我的应用程序的某些文件似乎未正确删除或缓存在某处。
例如
APPversionA
包括 fileA
APPversionB
包括 fileB
结果在目标 _VM "SF/_App" 数据目录中:
- 第一次部署
APPversionA
:我得到了AppXX/MyService/Code/fileA
:好的
- 然后当我部署替换
APPversionA
的 APPversionB
时:
- 我得到了
AppYY/MyService/Code/fileA
- 和
AppYY/MyService/Code/fileB
- 失败:预计只有文件 B!
在我的应用程序 ApplicationManifest.xml
中,我将“1.8-SNAPSHOT”作为 ApplicationTypeVersion
属性值。
所以我在多次更新和重新部署这个SNAPSHOT版本时遇到了这个问题。
似乎在这个用例中 - 因为 ApplicationTypeVersion
没有改变 - SF 覆盖或附加以前部署的部署包内容,而不是从头开始重新创建一个新的(对我来说这是一个问题)。
为了修复它,我将构建时间戳添加到 ApplicationTypeVersion
值(例如 1.8-SNAPSHOT-20160128_1113
)。这种情况下,没有更多的ServiceFabric缓存作用。每次部署都会更新版本和部署内容。
在 Service Fabric 上重新部署应用程序时(使用 Publish-UpgradedServiceFabricApplication
),为什么我总是看到以前部署的文件?我的应用程序的某些文件似乎未正确删除或缓存在某处。
例如
APPversionA
包括fileA
APPversionB
包括fileB
结果在目标 _VM "SF/_App" 数据目录中:
- 第一次部署
APPversionA
:我得到了AppXX/MyService/Code/fileA
:好的 - 然后当我部署替换
APPversionA
的APPversionB
时:- 我得到了
AppYY/MyService/Code/fileA
- 和
AppYY/MyService/Code/fileB
- 失败:预计只有文件 B!
- 我得到了
在我的应用程序 ApplicationManifest.xml
中,我将“1.8-SNAPSHOT”作为 ApplicationTypeVersion
属性值。
所以我在多次更新和重新部署这个SNAPSHOT版本时遇到了这个问题。
似乎在这个用例中 - 因为 ApplicationTypeVersion
没有改变 - SF 覆盖或附加以前部署的部署包内容,而不是从头开始重新创建一个新的(对我来说这是一个问题)。
为了修复它,我将构建时间戳添加到 ApplicationTypeVersion
值(例如 1.8-SNAPSHOT-20160128_1113
)。这种情况下,没有更多的ServiceFabric缓存作用。每次部署都会更新版本和部署内容。