mirror of https://github.com/knative/client.git
* Refactor main flow, plugin and configuration handling * The plugin handling has been moved out of the `KnDefaultCommand` constructor where it was executed as a side-effect. The original code from `kubectl` suffers from the same issue that plugin handling is not a top-level concern but was very likely introduced as an after-thought. Instead, the plugin handling is done now by a `PluginManager` which is explicitly called in `main()`. * Configuration and bootstrap option handling is centralized in the package `option`. After the bootstrap happened, the content of the configuration file, as well as any other global configuration, can be obtained from methods on `config.GlobalConfig`. Also, all flag handling is delegated to cobra so that no own parsing is needed. * Many of the logic in `pkg/kn/commands/plugin` for plugin management has been moved up to `pkg/kn/plugin` as this code is not only relevant for `plugin list` but also for the bootstrap process. * fix: invalid subcommands will lead to a proper error message * Update pkg/kn/config/types.go Co-authored-by: Navid Shaikh <nshaikh@redhat.com> * Update pkg/kn/plugin/manager.go Co-authored-by: Navid Shaikh <nshaikh@redhat.com> * Update hack/generate-docs.go Co-authored-by: Navid Shaikh <nshaikh@redhat.com> * Update hack/generate-docs.go Co-authored-by: Navid Shaikh <nshaikh@redhat.com> * chore: Add missing links * chore: recert to shas in links in developer guide for now. Co-authored-by: Navid Shaikh <nshaikh@redhat.com> |
||
|---|---|---|
| .. | ||
| developer-guide.md | ||