DefaultServices.updateInstance() rejects plan updates despites plan is updateable.
还没有人认领这个 Issue。
评估
调研方向
从 cloudfoundry-operations/src/main/java/org/cloudfoundry/operations/services/DefaultServices.java 第 515-517 行开始,将服务定义和服务计划的可更新性字段与链接的 OSB 和 Cloud Foundry API 定义进行比较。检查现有的服务实例更新流程及其测试(如果存在)。当有效的计划更新不再仅仅因为服务定义不可更新而被拒绝时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
The OSB API states regarding a service offering metadata that its updateable flag can be overriden in plans.
https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-offering-object
Response Field Type Description [...] plan_updateable boolean Whether the Service Offering supports upgrade/downgrade for Service Plans by default. Service Plans can override this field (see Service Plan). Please note that the misspelling of the attribute plan_updatable as plan_updateable was done by mistake. We have opted to keep that misspelling instead of fixing it and thus breaking backward compatibility. Defaults to false.
https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-plan-object
Response Field Type Description [...] plan_updateable boolean Whether the Plan supports upgrade/downgrade/sidegrade to another version. This field is OPTIONAL. If specificed, this takes precedence over the Service Offering's plan_updateable field. If not specified, the default is derived from the Service Offering. Please note that the attribute is intentionally misspelled as plan_updateable for legacy reasons.
Unfortunately the CC API reuses the two fields, but isn't precise enough to state that plan.updateable override serviceoffering.plan_updateable
https://apidocs.cloudfoundry.org/12.42.0/services/retrieve_a_particular_service.html
Name Description Default Valid Values Example Values plan_updateable A boolean describing that an instance of this service can be updated to a different plan false
https://apidocs.cloudfoundry.org/12.42.0/service_plans/retrieve_a_particular_service_plan.html
"plan_updateable": true,
As a result, cf-java-client refuses service instance updates unless the service definition is updateable, regardless than the service plan is updateable.
Given that CloudFoundry itself likely performs the checks, is there any reason to also perform the check client-side ?
If there is a good reason, then the logic should be fixed to only reject when both serviceplan.plan_updateable=false and servicedefinition.plan_updateable=false
- 主要语言
- Java
- 星标
- 334
- 派生
- 318
- 平均合并
- 10 天 8 小时
- 30 天内合并 PR
- 2
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
cloudfoundry/cf-java-client 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
cloudfoundry/cf-java-client#1374 ·
-
Integration tests fail: test-service-broker.jar incompatible with java-buildpack v5 (JDK 17 default)未关闭
难度 2/5 半天 新手友好度 74/100
cloudfoundry/cf-java-client#1344 · 1 条评论 ·
-
Execute integration tests in Github Actions可能已有人在做 @ZPascal 于 4 天前认领。 未关闭
cloudfoundry/cf-java-client#1380 · 1 个 reaction · 已指派 2 人 ·
-
难度 5/5 一周以上 新手友好度 15/100
cloudfoundry/cf-java-client#1373 ·
-
难度 3/5 1-2 天 新手友好度 55/100
cloudfoundry/cf-java-client#1370 ·
查看 cloudfoundry/cf-java-client 的全部 Issue
相似的 Issue
-
[destination-snowflake] Custom domains rejected unlike source connections可能已有人在做 @kuza55 今天认领。 未关闭autoteam community connectors/destination/snowflake team/use
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
area-dashboard
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
component/operate kind/feature-request
难度 2/5 1-3 小时 新手友好度 85/100
维护者通常 1 天内回复
-
Forge coverage prompts carry text the agent cannot act on可能已有人在做 @graalvmbot 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 85/100
oracle/graalvm-reachability-metadata#10572 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
IBM/sample-app-mod#55 ·