测试 reconcile 的触发情况
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
dongming 27dbabd178
Add branch
2 years ago
api/v1 stable 2 years ago
config stable 2 years ago
controllers stable 2 years ago
hack stable 2 years ago
.dockerignore stable 2 years ago
.gitignore stable 2 years ago
Dockerfile stable 2 years ago
Makefile stable 2 years ago
PROJECT stable 2 years ago
README.md Add branch 2 years ago
go.mod stable 2 years ago
go.sum stable 2 years ago
main.go stable 2 years ago

README.md

Branch:

  • master: 稳定状态
  • resource-update: 无修改资源更新
  • resource-change-update: 有修改资源更新
  • status-update: 无修改status更新
  • status-change-update: 有修改status更新
  • deployment-update: 无修改更新第三方
  • deployment-change-update: 有修改更新第三方

测试各种 update 对 reconcile 的触发

资源清单

  • 资源
  • status
  • 第三方资源deployment

稳定状态

  • 注释掉资源的更新
  • 注释掉资源对象的修改
  • 注释掉status更新
  • 注释掉status对象的修改
  • 注释掉第三方更新
  • 注释掉三方对象的修改

结果

  • 触发 reconcile
  • 没有第三方资源
  • 执行创建第三方资源
  • 结束 reconcile
  • 触发 reconcile
  • 结束 reconcile
  • 触发 reconcile
  • 结束 reconcile
  • 触发 reconcile
  • 结束 reconcile
  • 触发 reconcile
  • 结束 reconcile
  • 触发 reconcile
  • 结束 reconcile
  • 结束

测试用例

以稳定态为标准开始

无修改资源更新

  • 打开资源的更新注释 结果:
  • 触发 reconcile
  • 更新资源
  • 结束 reconcile
  • 触发 reconcile
  • 更新资源
  • 结束 reconcile
  • 结束

有修改资源更新

  • 打开资源对象的修改注释

结果:

  • 触发 reconcile
  • 更新资源
  • 结束 reconcile
  • 触发 reconcile
  • 更新资源
  • 结束 reconcile
  • 死循环不结束

无修改status更新

  • 打开status更新注释

结果:

  • 触发 reconcile
  • 更新 status
  • 结束 reconcile
  • 触发 reconcile
  • 更新 status
  • 结束 reconcile
  • 结束

有修改status更新

  • 打开status对象的修改注释

结果:

  • 触发 reconcile
  • 更新 status
  • 结束 reconcile
  • 触发 reconcile
  • 更新 status
  • 结束 reconcile
  • 死循环不结束

无修改更新第三方

  • 打开第三方更新注释

结果:

  • 触发 reconcile
  • 更新第三方资源
  • 结束 reconcile
  • 结束

有修改更新第三方

结果:

  • 触发 reconcile
  • 更新第三方资源
  • 结束 reconcile
  • 触发 reconcile
  • 更新第三方资源
  • 结束 reconcile
  • 死循环不结束