operator-controller icon indicating copy to clipboard operation
operator-controller copied to clipboard

Publish olmv1 kubectl plugin

Open ankitathomas opened this issue 8 months ago • 4 comments

Publish a new release of the olmv1 kubectl plugin to krew from the operator-controller repo by:

  • Tagging and cutting a new release, and publishing a new tar.gz archive for the kubectl plugin
  • Adding a krew manifest
  • Submit the krew manifest to the krew-index repository

See https://krew.sigs.k8s.io/docs/developer-guide/distributing-with-krew/

ankitathomas avatar Mar 06 '25 20:03 ankitathomas

The entire release and krew index update can heppen automatically: https://github.com/operator-framework/kubectl-operator/blob/main/.github/workflows/release.yml

We need to decide as a community what we want the new name of the plugin to be in the krew index. I expect that to be a semi-contentious topic.

joelanford avatar Mar 06 '25 20:03 joelanford

Also, we should consider the versioning implications of putting this binary in this repository because this repository is now at major version 1.

I know that we have said in our public API docs that the CLIs here are not part of the public API, but the reason that mostly works is because users aren't really expected to interact with the CLIs.

In the case of the kubectl plugin, users are expected to interact with the CLI, which leads to:

  • it being a pretty tough sell to say "the kubectl plugin is not part of the public API of this project"
  • but we're not even close to ready to say "the kubectl plugin CLI is stable"

joelanford avatar Mar 06 '25 20:03 joelanford

The entire release and krew index update can heppen automatically: https://github.com/operator-framework/kubectl-operator/blob/main/.github/workflows/release.yml

I wasn't aware we have a workflow in place for publishing to krew, we should hold off on that at least until we finalize what the cli looks like.

is there also a pipeline that publishes kubectl-operator to opensuse somehow? https://build.opensuse.org/package/show/devel:kubic/kubectl-operator

Apart from that, I don't find too many places directly using kubectl-operator that we may need to get in touch with; just console using it to list operands (which we don't have support for in the olmv1 cli as of now) and a few demos from the github.com/redhat-na-ssa org

There's also the extension_developer_e2e tests like @joelanford mentioned in the demo/docs issue where it makes sense to use the new cli

https://github.com/operator-framework/operator-controller/blob/a6de9f94e085989a086459f2b5325a5cd27424b0/test/extension-developer-e2e/extension_developer_test.go#L40-L199

ankitathomas avatar Mar 06 '25 20:03 ankitathomas

Issues go stale after 90 days of inactivity. If there is no further activity, the issue will be closed in another 30 days.

github-actions[bot] avatar Jun 25 '25 01:06 github-actions[bot]