浏览代码

[DOCS] Add "version" to template and pipeline docs (#20407)

* [DOCS] Add "version" to template and pipeline docs

This adds details about the "version" to both the template and pipeline pages.
Chris Earle 9 年之前
父节点
当前提交
9cf7214380

+ 1 - 0
docs/reference/api-conventions.asciidoc

@@ -219,6 +219,7 @@ Some examples are:
 `2015-01-01||+1M/d`::   `2015-01-01` plus one month, rounded down to the nearest day.
 `2015-01-01||+1M/d`::   `2015-01-01` plus one month, rounded down to the nearest day.
 
 
 [float]
 [float]
+[[common-options-response-filtering]]
 === Response Filtering
 === Response Filtering
 
 
 All REST APIs accept a `filter_path` parameter that can be used to reduce
 All REST APIs accept a `filter_path` parameter that can be used to reduce

+ 46 - 0
docs/reference/indices/templates.asciidoc

@@ -181,3 +181,49 @@ for indices of that start with `te*`, source will still be enabled.
 Note, for mappings, the merging is "deep", meaning that specific
 Note, for mappings, the merging is "deep", meaning that specific
 object/property based mappings can easily be added/overridden on higher
 object/property based mappings can easily be added/overridden on higher
 order templates, with lower order templates providing the basis.
 order templates, with lower order templates providing the basis.
+
+[float]
+[[versioning-templates]]
+=== Template Versioning
+
+Templates can optionally add a `version` number, which can be any integer value,
+in order to simplify template management by external systems. The `version`
+field is completely optional and it is meant solely for external management of
+templates. To unset a `version`, simply replace the template without specifying
+one.
+
+[source,js]
+--------------------------------------------------
+PUT /_template/template_1
+{
+    "template" : "*",
+    "order" : 0,
+    "settings" : {
+        "number_of_shards" : 1
+    },
+    "version": 123
+}
+--------------------------------------------------
+// CONSOLE
+
+To check for the `version`, you can
+<<common-options-response-filtering, filter responses>>
+using `filter_path` to limit the response to just the `version`:
+
+[source,js]
+--------------------------------------------------
+GET /_template/template_1?filter_path=*.version
+--------------------------------------------------
+// TEST[continued]
+
+This should give a small response that makes it both easy and inexpensive to parse:
+
+[source,js]
+--------------------------------------------------
+{
+  "template_1" : {
+    "version" : 123
+  }
+}
+--------------------------------------------------
+// TESTRESPONSE

+ 51 - 1
docs/reference/ingest/ingest-node.asciidoc

@@ -90,6 +90,56 @@ For each returned pipeline, the source and the version are returned.
 The version is useful for knowing which version of the pipeline the node has.
 The version is useful for knowing which version of the pipeline the node has.
 You can specify multiple IDs to return more than one pipeline. Wildcards are also supported.
 You can specify multiple IDs to return more than one pipeline. Wildcards are also supported.
 
 
+[float]
+[[versioning-pipelines]]
+==== Pipeline Versioning
+
+Pipelines can optionally add a `version` number, which can be any integer value,
+in order to simplify pipeline management by external systems. The `version`
+field is completely optional and it is meant solely for external management of
+pipelines. To unset a `version`, simply replace the pipeline without specifying
+one.
+
+[source,js]
+--------------------------------------------------
+PUT _ingest/pipeline/my-pipeline-id
+{
+  "description" : "describe pipeline",
+  "version" : 123,
+  "processors" : [
+    {
+      "set" : {
+        "field": "foo",
+        "value": "bar"
+      }
+    }
+  ]
+}
+--------------------------------------------------
+// CONSOLE
+
+To check for the `version`, you can
+<<common-options-response-filtering, filter responses>>
+using `filter_path` to limit the response to just the `version`:
+
+[source,js]
+--------------------------------------------------
+GET /_ingest/pipeline/my-pipeline-id?filter_path=*.version
+--------------------------------------------------
+// TEST[continued]
+
+This should give a small response that makes it both easy and inexpensive to parse:
+
+[source,js]
+--------------------------------------------------
+{
+  "my-pipeline-id" : {
+    "version" : 123
+  }
+}
+--------------------------------------------------
+// TESTRESPONSE
+
 [[delete-pipeline-api]]
 [[delete-pipeline-api]]
 === Delete Pipeline API
 === Delete Pipeline API
 
 
@@ -1639,4 +1689,4 @@ pipeline should be used:
 --------------------------------------------------
 --------------------------------------------------
 
 
 The reason for this is that Ingest doesn't know how to automatically cast
 The reason for this is that Ingest doesn't know how to automatically cast
-a scalar field to an object field.
+a scalar field to an object field.