Skip to content

Commit

Permalink
documentation on how to create new Add Data tutorials. (elastic#16257) (
Browse files Browse the repository at this point in the history
elastic#16326)

* tutorial docs

* fixes from ycombinator review

* ElasticSearch -> Elasticsearch

* move out of style guide and into README under server/tutorials

* move to asciidocs

* add new line so list is rendered correctly

* changes from gchaps review
  • Loading branch information
nreese authored Jan 26, 2018
1 parent 0a4f6d0 commit febcb39
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
34 changes: 34 additions & 0 deletions docs/development/add-data-guide.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
[[add-data-guide]]
== Add Data Guide

`Add Data` in the Kibana Home application contains tutorials for setting up data flows in the Elastic stack.

Each tutorial contains three sets of instructions:

* `On Premise.` Set up a data flow when both Kibana and Elasticsearch are running on premise.
* `On Premise Elastic Cloud.` Set up a data flow when Kibana is running on premise and Elasticsearch is running on Elastic Cloud.
* `Elastic Cloud.` Set up a data flow when both Kibana and Elasticsearch are running on Elastic Cloud.

[float]
=== Creating a new tutorial
1. Create a new directory in the link:https://github.com/elastic/kibana/tree/master/src/core_plugins/kibana/server/tutorials[tutorials directory].
2. In the new directory, create a file called `index.js` that exports a function.
The function must return a JavaScript object that conforms to the link:https://github.com/elastic/kibana/blob/master/src/core_plugins/kibana/common/tutorials/tutorial_schema.js[tutorial schema].
3. Register the tutorial in link:https://github.com/elastic/kibana/blob/master/src/core_plugins/kibana/server/tutorials/register.js[register.js] by calling `server.registerTutorial(myFuncImportedFromIndexJs)`.
4. Add image assets to the link:https://github.com/elastic/kibana/tree/master/src/core_plugins/kibana/public/home/tutorial_resources[tutorial_resources directory].
5. Run Kibana locally to preview the tutorial.
6. Create a PR and go through the review process to get the changes approved.

[float]
==== Variables
String values can contain variables that are substituted when rendered. Variables are specified by `{}`.
For example: `{config.docs.version}` is rendered as `6.2` when running the tutorial in Kibana 6.2.

link:https://github.com/elastic/kibana/blob/master/src/core_plugins/kibana/public/home/components/tutorial/replace_template_strings.js#L23[Provided variables]

[float]
==== Markdown
String values can contain limited Markdown syntax.

link:https://github.com/elastic/kibana/blob/master/src/core_plugins/kibana/public/home/components/tutorial/content.js#L8[Enabled Markdown grammars]

5 changes: 4 additions & 1 deletion docs/development/plugin-development.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ The Kibana plugin interfaces are in a state of constant development. We cannot
* <<development-uiexports>>
* <<development-plugin-functional-tests>>
* <<development-visualize-index>>
* <<add-data-guide>>


include::plugin/development-plugin-resources.asciidoc[]
Expand All @@ -18,4 +19,6 @@ include::plugin/development-uiexports.asciidoc[]

include::plugin/development-plugin-functional-tests.asciidoc[]

include::visualize/development-visualize-index.asciidoc[]
include::visualize/development-visualize-index.asciidoc[]

include::add-data-guide.asciidoc[]

0 comments on commit febcb39

Please sign in to comment.