[v2] Reintroduce `crossplane beta convert deploymentruntime` and `pipelinecomposition`?
What problem are you facing?
These commands are removed in https://github.com/crossplane/crossplane/pull/6489. This is because they depend on the ControllerConfig and native P&T Go types, which have now been removed.
This means folks running v2 of the crossplane CLI won't be able to use the migration tools. That's a little unfortunate given v2 is the version that finally drops ControllerConfig and native P&T.
How could Crossplane help solve your problem?
I think ideally the entire Crossplane CLI would live in a different repo, and could choose to keep these old API types as a convenience to implement commands like this. That's tracked in https://github.com/crossplane/crossplane/issues/6483.
A smaller change though would be to revert the change that removes these CLI commands and just move the unsupported Go types under cmd/crank/beta/convert/internal.
Alternatively a workaround could be that folks migrating just use a slightly older crossplane binary, e.g. one built from v1.20.
We believe the approach of using a v1.x Crossplane CLI binary to do any necessary migrations of ControllerConfig --> DeploymentRuntimeConfig and classic P&T --> function pipeline is a reasonable trade-off for the benefits to the code base we receive by keeping those obsolete types removed. Closing this specific issue, but any docs effort around migrations to v2 should mention this approach.