Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KEP: 3rd party content in documentation #1327
KEP: 3rd party content in documentation #1327
Changes from 10 commits
0d1a6af
cfa6792
3580763
38c454f
bea19b9
237154b
fe4dcfd
7b6a543
31e58ea
81ccf29
9fd3f96
c65972b
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kubernetes-sigs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm torn. I agree moving very vendor-ish stuff out is a good idea. Elastic and Kibana, while commercially backed, are also very popular OSS projects, and that integration is valuable to our project's users.
That said, I have NO IDEA if that doc is good and complete or total trash. I am not equipped to know. So what is the principle we want?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@thockin
We have language that talks about linking versus hosting in order to avoid exactly this scenario, where no one knows whether a doc is fresh. However, linking is no guarantee of freshness: links break, redirect unhelpfully, and go stale too. We need to future proof and stale proof our content as best we're able. Drawing boundaries at third party content seems like the best way to do that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The principle here is that third party docs should only be included where absolutely necessary. The E+K doc says it is specific to GCE and is out of date from what I can tell (and therefore would be eligible for removal unless it was updated, or better linked externally). If we are only using this as an example to highlight the principle though, maybe something more black and white like Logging Using Stackdriver would be better. Again, this doesn't change the principle or intent, but is a more clear example without having to read the linked document. Swapping the link would be sufficient.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's -> it is ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"It's" is grammatically correct here; is it just a preference to avoid contractions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we please explicitly say that we will do this "notify" step to all existing content that is on the chopping block?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The doc upto this point did not mention anything about
CNCF
it seems jarring that we refer toCNCF
all of a sudden here ... can we switch toin-project
language here?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does
third-party
include open source projects AND vendor specific? or just vendor specific? A definition like thein-project
would be useful hereThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@dims
Ideally we'd be leaving this to the discretion of the relevant SIGs. In practice, allowing vendor-specific content created the race for inclusion we see now.
Specifically, I don't want to deal with more angry Slack messages from vendors who can't get a mention in the same page as their competitor because their competitor has a contributor in the SIG and they don't.
Unless you have a better solution, let's limit third-party content to OSS projects that are necessary to run Kubernetes. To stem inevitable what-aboutism re:Docker, can we acknowledge that Docker is an edge case without having to specifically say that Docker is the sole exception?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you also please bunch up these removals and post to kubernetes-sig-docs mailing list as well? (since github notifications are busted for a bunch of folks)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sentence seems incomplete?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"relevant SIG to review changes and notify stake holders" right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Network policy is an interesting one. I can understand pushing back on this particular doc which describes a specific third-party implementation, but would we keep a doc like this page with it's list of supported providers? https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/
I think there's some grey area here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree - there is no "built-in" implementation. But there's an implication that things listed here are "real" or "supported by the project", which is not necessarily true. It also becomes an objective for new implementation - get listed or remain unknown.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To clarify: A plain list of external implementations, where in-tree code doesn't provide the full story for a working cluster, is permissible. A link to external docs for any external implementation that has docs is also fine.
Including those docs within the Kubernetes website itself would usually not be OK, and there would need to be clear grounds for an exception from the general policy.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an interesting one from my perspective.
It's the only other project on this list officially under the CNCF hood. All other CNCF projects explicitly call out and document their compatibility with Kubernetes. For example, Vitess calls out "Run Vitess on Kubernetes" as a top-level menu item in docs. Moreover, there are other CNCF projects like etcd which are almost required for running a cluster and mentioned heavily throughout the k8s documentation.
So I think there's two questions we need to think about. One is "What do we do with third party content?" and the second is "Do other CNCF projects count as third party?"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, Falco is CNCF incubating. It seems to me like it's in a similar position.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That seems worth answering. The PR as it stands sees things outside Kubernetes as third party. That's definitely open to revision.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@celestehorgan
If it's necessary to run in project, keep it. If not, remove it.
They count as removable third party content unless they're necessary for Kubernetes to run in project.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sftim
Respectfully, I'd like to limit further revision to comments from this KEP's approvers. Five months is more than enough time for review. In the case of how we define third party content, the current language is two months old, which also seems like an adequate review period.