Skip to content

Commit bfa62f4

Browse files
authored
Merge pull request #8145 from guettli/patch-2
🌱 📖 move.md: Warning: Status get lost
2 parents 4e6a72b + 46f2022 commit bfa62f4

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

docs/book/src/clusterctl/commands/move.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,16 @@ make it clear those operation have the same limitations of the move command.
5858

5959
</aside>
6060

61+
<aside class="note warning">
62+
63+
<h1> Warning: Status subresource is never restored </h1>
64+
65+
Every object's `Status` subresource, including every nested field (e.g. `Status.Conditions`), is never restored during a `move` operation. A `Status` subresource should never contain fields that cannot be recreated or derived from information in spec, metadata, or external systems.
66+
Provider implementers should not store non-ephemeral data in the `Status`.
67+
`Status` should be able to be fully rebuilt by controllers by observing the current state of resources.
68+
69+
</aside>
70+
6171
## Pivot
6272

6373
Pivoting is a process for moving the provider components and declared Cluster API resources from a source management

docs/book/src/clusterctl/provider-contract.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,19 @@ exact move sequence to be executed by the user.
466466
Additionally, provider authors should be aware that `clusterctl move` assumes all the provider's Controllers respect the
467467
`Cluster.Spec.Paused` field introduced in the v1alpha3 Cluster API specification.
468468

469+
<aside class="note warning">
470+
471+
<h1> Warning: Status subresource is never restored </h1>
472+
473+
Every object's `Status` subresource, including every nested field (e.g. `Status.Conditions`), is never
474+
restored during a `move` operation. A `Status` subresource should never contain fields that cannot
475+
be recreated or derived from information in spec, metadata, or external systems.
476+
477+
Provider implementers should not store non-ephemeral data in the `Status`.
478+
`Status` should be able to be fully rebuilt by controllers by observing the current state of resources.
479+
480+
</aside>
481+
469482
<!--LINKS-->
470483
[drone-envsubst]: https://github.com/drone/envsubst
471484
[issue 3418]: https://github.com/kubernetes-sigs/cluster-api/issues/3418

0 commit comments

Comments
 (0)