-
Notifications
You must be signed in to change notification settings - Fork 345
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
Update docs #145
Update docs #145
Conversation
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.
small nits, otherwise looks good!
docs/configuration.md
Outdated
@@ -21,7 +21,7 @@ Once the configs are loaded (in either case), Sonobuoy parses them and gathers d | |||
| | Overview|Path on Cluster Node|[STANDALONE]<br>JSON example(s)|[CONTAINERIZED]<br>YAML manifest example(s) | |||
|---|---|---|---|---| | |||
|*Data configuration*| What Sonobuoy records, how, and where. |*ANY of the following*:<br>(1) `config.json` in the directory where `sonobuoy` is executed<br>(2) `/etc/sonobuoy/config.json`<br>(3) `$SONOBUOY_CONFIG`<br><br>|[`config.json`][10]|<br> [`examples/ksonnet/components/10-configmaps.jsonnet`][11]<br><br>*The jsonnet file is basically a wrapper for the `config.json` file, which allows it to be properly mounted onto the cluster's Sonobuoy pod.* <br><br> | |||
|*Plugin configuration*|Settings for each plugin integration.|*ANY of the following*:<br>(1) `/etc/sonobuoy/plugins.d`<br>(2) `$HOME/.sonobuoy/plugins.d`<br>(3) `./plugins.d`<br>(4) `PluginSearchPath` (override from the data configuration) <br><br>| There is a YAML config for each plugin:<br>(1) [`plugins.d/e2e.yaml`][16]<br>(2)[`plugins.d/systemdlogs.yaml`][17]|<br>[`examples/ksonnet/components/10-configmaps.jsonnet`][11]<br><br>*Same comment about the jsonnet file as above.* | |||
|*Plugin configuration*|Settings for each plugin integration.|*ANY of the following*:<br>(1) `/etc/sonobuoy/plugins.d`<br>(2) `$HOME/.sonobuoy/plugins.d`<br>(3) `./plugins.d`<br>(4) `PluginSearchPath` (override from the data configuration) <br><br>| There is a YAML config for each plugin:<br>(1) [`plugins.d/e2e.tmpl`][16]<br>(2) [`plugins.d/systemd_logs.tmpl`][17]<br>(3) [`plugins.d/heptio-e2e.tmpl`][20]|<br>[`examples/ksonnet/components/10-configmaps.jsonnet`][11]<br><br>*Same comment about the jsonnet file as above.* |
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.
s/There is a YAML config/There is a templatized YAML config
docs/plugins.md
Outdated
|
||
*This YAML is defined by the plugin **developer**, and can be taken as a given by the end user.* | ||
|
||
The remainder of this document focuses on **Plugin Definition**. | ||
|
||
## Plugin Definition | ||
|
||
The *plugin definition* is a YAML file (raw or wrapped in a ConfigMap) that describes the core parts of your custom plugin. It should contain the following fields: | ||
The *plugin definition* is a YAML file (raw or wrapped in a ConfigMap) that describes the core parts of your custom plugin. Some of the values in this YAML file are template variables that will be filled in by sonobuoy. The template will have access to several variables: |
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.
Nit: s/several/the following
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.
additional nit: can you make the 2nd sentence a new paragraph for visibility?
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.
Following up on a previous comment, rephrase as follow:
The plugin definition is a YAML file (raw or wrapped in a ConfigMap) that describes the core parts of your custom plugin. This YAML defines a Kubernetes API resource like a Pod.
Some of the values in this YAML file are template variables that will be filled in by Sonobuoy. The template will have access to several variables:
docs/plugins.md
Outdated
| `spec` | The Pod specification (e.g. network settings, container settings, volume definitions, etc.) | See [the parameter spec][4] below for reference. | | ||
| Variable | Description | | ||
| --- | --- | | ||
| `{{.SessionID}}` | SessionID is a generated token used to be able to uniquely identify all pieces of a single sonobuoy run. | |
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.
Nit: remove the <noun> is
portion of each description
docs/plugins.md
Outdated
| `driver` | Sonobuoy implements *plugin drivers* that define different modes of operation.<br><br>(1) **"Job" driver**: The plugin will run on a single node (e.g. master).<br>(2) **"DaemonSet" driver**: The plugin runs on each cluster node.<br><br>You can find the implementations [here][7]. | "Job|DaemonSet" | | ||
| `resultType` | The name of the subdirectory that this plugin's results are saved in. With a `resultType` of "e2e", results are written into `plugins/e2e/...` (within the tarball output).<br><br>This value is typically the same as the plugin `name`. | "e2e" | | ||
| `spec` | The Pod specification (e.g. network settings, container settings, volume definitions, etc.) | See [the parameter spec][4] below for reference. | | ||
| Variable | Description | |
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 make it clearer which template variables are autofilled, could you add an additional column ("Source")?
And have the values be ("Autogenerated by Sonobuoy", "Populated from the PluginNamespace
value in config.json
", "Autogenerated by Sonobuoy")
docs/plugins.md
Outdated
|
||
| Annotation | Description | Example Values | | ||
| --- | --- | --- | | ||
| `sonobuoy-driver` | Sonobuoy implements *plugin drivers* that define different modes of operation.<br><br>(1) **"Job" driver**: The plugin will run on a single node (e.g. master).<br>(2) **"DaemonSet" driver**: The plugin runs on each cluster node.<br><br>You can find the implementations [here][7]. | "Job|DaemonSet" | |
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.
Nit: s/The plugin will run on a single/The plugin runs on a single
docs/plugins.md
Outdated
| Annotation | Description | Example Values | | ||
| --- | --- | --- | | ||
| `sonobuoy-driver` | Sonobuoy implements *plugin drivers* that define different modes of operation.<br><br>(1) **"Job" driver**: The plugin will run on a single node (e.g. master).<br>(2) **"DaemonSet" driver**: The plugin runs on each cluster node.<br><br>You can find the implementations [here][7]. | "Job|DaemonSet" | | ||
| `sonobuoy-plugin` | A name that is used to identify the plugin (e.g. in the Plugin Selection described above). | "e2e", "systemd_logs" | |
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 make "Plugin Selection" a link to "/docs/configuration.md#plugin-configuration"?
docs/plugins.md
Outdated
| --- | --- | --- | | ||
| `sonobuoy-driver` | Sonobuoy implements *plugin drivers* that define different modes of operation.<br><br>(1) **"Job" driver**: The plugin will run on a single node (e.g. master).<br>(2) **"DaemonSet" driver**: The plugin runs on each cluster node.<br><br>You can find the implementations [here][7]. | "Job|DaemonSet" | | ||
| `sonobuoy-plugin` | A name that is used to identify the plugin (e.g. in the Plugin Selection described above). | "e2e", "systemd_logs" | | ||
| `sonobuoy-result-type` | The name of the subdirectory that this plugin's results are saved in. With a `resultType` of "e2e", results are written into `plugins/e2e/...` (within the tarball output).<br><br>This value is typically the same as the plugin `name`. | "e2e" | |
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.
s/the plugin name
/ the sonobuoy-plugin
annotation
docs/plugins.md
Outdated
@@ -19,22 +19,29 @@ There are two main components that specify plugin behavior: | |||
|
|||
*These configs are defined by the **end user**.* | |||
|
|||
1. **Plugin Definition**: A structured YAML definition that describes a plugin's features, method of launch, and other configurations. | |||
1. **Plugin Definition**: A templatized YAML definition that describes a plugin's features, method of launch, and other configurations. |
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, for clarity, can you reword this:
Templatized YAML that defines a Kubernetes API resource like a Pod. Plugin metadata--such as a plugin's features, method of launch, and other configurations--are specified with annotations.
Signed-off-by: Chuck Ha <[email protected]>
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.
Thanks for revising!
Update docs Signed-off-by: Jesse Hamilton [email protected]
Update docs Signed-off-by: Jesse Hamilton [email protected] Signed-off-by: Jesse Hamilton [email protected]
Signed-off-by: Chuck Ha [email protected]