crossplane / crossplane-cli

Tools and commands for managing and developing Crossplane
Apache License 2.0
14 stars 12 forks source link

Consider adding crossdocs functionality to crossplane-cli #38

Closed hasheddan closed 4 years ago

hasheddan commented 4 years ago

Currently, the API docs on crossplane.io are generated using crossdocs. However, this is a cumbersome process that makes it difficult for new contributors to regenerate API docs when they make changes that affect them. It is also not obvious or documented that the tool is how we generate our API docs, nor is it obvious when API docs need to be regenerated (addressed by https://github.com/crossplaneio/crossplane/issues/1166). Furthermore, there are a number of issues with crossdocs currently that cause broken links and poorly formatted documentation (ref: https://github.com/crossplaneio/crossplane/issues/1223).

Moving the crossdocs functionality to crossplane-cli is advantageous for the following reasons:

displague commented 4 years ago

I like the idea of offering all Stack authoring commands from the crossplane-cli.

I feel that there is an awkward experience provided when kubectl is the base command for actions which have nothing to do with Kubernetes (this is already the case for the build, init, and publish commands). This is an observation unrelated to this issue and could be remedied by having the crossplane-cli installation include non kubectl commands. Doing so could complicate distribution if krew becomes the primary installation method.

I think https://github.com/crossplaneio/crossplane-tools might be a better home for crossdocs, but I still agree that the appropriate crossplane-cli subcommand should (Go) import or shell out to crossdocs to offer a complete kubectl crossplane stack build experience.

As an alternative, inclusion of crossdocs in the build process be could also be accomplished with a Makefile change.

hasheddan commented 4 years ago

Closing this as we are migrating to https://doc.crds.dev for provider documentation :+1: