You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the new documentation system, we document features in a centralized place, regardless of the software version or deployment type it applies to.
7
-
For example, we might document the serverless and v9 implementations of a feature on a single page, and then use content patterns to highlight where prerequisites, options, or behaviors differ between these implementations.
8
-
9
-
This approach improves our documentation in several ways:
10
-
11
-
* When a user arrives in our documentation from an outside source, they'll be likelier to land on a page or section that applies to them.
12
-
* There is a single "source of truth" for each feature, which helps us to maintain consistency, accuracy, and maintainability of our documentation over time, and avoids "drift" between multiple similar sets of documentation.
13
-
* Comparing and contrasting differences helps users to understand what is available to them, and improves awareness of the ways certain offerings might improve their experience.
14
-
15
-
::::{note}
16
-
This page documents the first version of our approach to documenting differences in versions and deployment types, using our current technologies.
17
-
Our approach might change as additional documentation features become available.
18
-
::::
19
-
20
-
## Basic concepts and principles
21
-
22
-
:::{dropdown} Versioning facets
23
-
There are multiple facets to versioning that we need to consider:
24
-
25
-
***Elasticsearch / Kibana flavor:** The feature base used for basic functionality. Either **Serverless** (sometimes "Elastic Stack Serverless") or **Stack <version>**
26
-
27
-
% TODO: Final term for "Stack"
28
-
***Deployment type:** The way Elastic is deployed. Either **Serverless** (sometimes "Elastic Stack Serverless"), **Elastic Cloud Hosted**, **Elastic Cloud on Kubernetes**, **Elastic Cloud Enterprise**, or **Self-managed**.
29
-
30
-
All deployment types other than **Serverless** use the **Stack <version>** flavor of Elasticsearch / Kibana.
31
-
32
-
% TODO: Final term for "Self-managed"
33
-
34
-
***Project type:** The Serverless project types where a feature can be used.
35
-
36
-
***Other versioning schemes:** Elastic products or tools with a versioned component, where stack versioning is not followed.
37
-
38
-
E.g. clients, Elastic Common Schema
39
-
40
-
**How many facets do I need to use?**
41
-
42
-
The role of these labels is providing a trust signal that the reader is viewing content that’s applicable to them. This means that the relevant labels should appear on all pages. However, we can choose to expose only one versioning plane on pages where only one plane is relevant:
43
-
44
-
* Depending on what you're documenting, you might need to include information from multiple facets. For example, when relevant features exist at both the stack and the deployment level, both of these groups might be used together (e.g. security, user management, trust).
45
-
46
-
* In some sections, such as **Explore and analyze**, features generally only differ by Elasticsearch flavor. In these cases, you can choose to include only this facet on the page.
47
-
:::
48
-
49
-
:::{dropdown} Defaults and hierarchy
50
-
51
-
You should not assume a default deployment type or Elasticsearch / Kibana flavor.
52
-
53
-
Treat all flavors and deployment types equally. Don't treat one as the "base" and the other as the "exception".
54
-
55
-
However, we should all display our flavors and versions in the same order for consistency. This order reflects organizational priorities.
56
-
57
-
**Flavors:**
58
-
59
-
1. Serverless
60
-
2. Stack
61
-
62
-
**Deployment types:**
63
-
64
-
1. Serverless
65
-
2. Elastic Cloud Hosted
66
-
3. Elastic Cloud on Kubernetes
67
-
4. Elastic Cloud Enterprise
68
-
5. Self-managed
69
-
70
-
When it comes to hierarchy of versions, always put the newest version first.
71
-
:::
72
-
73
-
:::{dropdown} Versions and lifecycle states
74
-
75
-
In the V3 docs system, we currently document only our latest major versions (Stack 9.0+, ECE 4.0+, ECK 3.0+).
76
-
77
-
Add version labels only when a feature was added as part of the major version release, or added in subsequent dot releases. Do not add version information to features added before these releases. For example, features added in 8.16 don't need an 8.16 label or a 9.0 label, but features added in 9.0 need a 9.0 label.
78
-
79
-
From the latest major onward, the entire feature lifecycle should be represented. This means that you need to add separate labels for the following states:
80
-
81
-
* beta or technical preview
82
-
* GA
83
-
* deprecated
84
-
* removed
85
-
86
-
We hope to simplify or consolidate these lifecycle labels in future.
87
-
88
-
::::{warning}
89
-
This feature doesn't currently work - currently, only one label will appear.
90
-
::::
91
-
92
-
:::
93
-
94
-
95
-
## Content patterns
4
+
# Version content patterns
96
5
97
6
Depending on what you're trying to communicate, you can use the following patterns to represent version and deployment type differences in your docs.
98
7
@@ -109,7 +18,7 @@ Choose from:
109
18
*[Prose (explanatory paragraphs and sections)](#prose-explanatory-paragraphs-and-sections)
110
19
*[Sibling pages](#sibling-pages)
111
20
112
-
###Page-level `applies` tags
21
+
## Page-level `applies` tags
113
22
114
23
**Use case:** Provide signals that a page applies to the reader
115
24
@@ -121,7 +30,7 @@ Add tags for all **versioning facets** relevant to the page.
121
30
122
31
See **Versions and lifecycle states** to learn when to specify versions in these tags.
123
32
124
-
####Example
33
+
### Example
125
34
[Manage your Cloud organization](https://docs-v3-preview.elastic.dev/elastic/docs-content/tree/main/deploy-manage/cloud-organization.html)
126
35
127
36
### Section/heading-level `applies` tags
@@ -142,7 +51,7 @@ See **Versions and lifecycle states** to learn when to specify versions in these
142
51
**Example**
143
52
See above
144
53
145
-
###Inline `applies` tags
54
+
## Inline `applies` tags
146
55
147
56
::::{warning}
148
57
This feature doesn't currently work - we're working around it by using prose.
@@ -159,7 +68,7 @@ Currently, we don't have inline `applies` tags. Instead, append the information
159
68
160
69
Because this approach is less clear, consider using words like `only` to help people to understand that this information indicates the applicability of a feature.
161
70
162
-
####Example
71
+
### Example
163
72
164
73
Spaces let you organize your content and users according to your needs.
165
74
@@ -189,7 +98,7 @@ Spaces let you organize your content and users according to your needs.
189
98
::::
190
99
191
100
192
-
###Tabs
101
+
## Tabs
193
102
194
103
**Use case:** When one or more steps in a process differs, put the steps into tabs - one for each process.
195
104
@@ -207,7 +116,7 @@ Try not to include information surrounding a procedure in the tabs. Make the tab
207
116
208
117
Consider breaking up procedures into sets of procedures if only one section differs between contexts.
209
118
210
-
####Example
119
+
### Example
211
120
212
121
To create a space:
213
122
@@ -252,21 +161,21 @@ To create a space:
252
161
253
162
You can edit all of the space settings you just defined at any time, except for the URL identifier.
254
163
255
-
###Sibling bullets
164
+
## Sibling bullets
256
165
257
166
**Use case:** Requirements, limits, other simple, mirrored facts.
258
167
259
168
**Number to use:** Ideal is one per option (e.g. one per deployment type). You might consider nested bullets in limited cases.
260
169
261
-
####Examples
170
+
### Examples
262
171
263
172
::::{tab-set}
264
173
:group: one-two
265
174
266
175
:::{tab-item} One
267
176
:sync: one
268
177
269
-
#####Required permissions
178
+
#### Required permissions
270
179
271
180
***Serverless**: `Admin` or equivalent
272
181
***Stack v9**: `kibana_admin` or equivalent
@@ -275,7 +184,7 @@ You can edit all of the space settings you just defined at any time, except for
275
184
:::{tab-item} Two
276
185
:sync: two
277
186
278
-
#####Create a space
187
+
#### Create a space
279
188
280
189
The maximum number of spaces that you can have differs by [what do we call this]:
281
190
@@ -284,7 +193,7 @@ The maximum number of spaces that you can have differs by [what do we call this]
284
193
:::
285
194
::::
286
195
287
-
###Prose (inline)
196
+
## Prose (inline)
288
197
289
198
**Use case:** Clarifying or secondary information
290
199
@@ -294,22 +203,22 @@ The maximum number of spaces that you can have differs by [what do we call this]
294
203
295
204
Sometimes, you can just preface a paragraph with version info.
296
205
297
-
####Example
206
+
### Example
298
207
299
208
If you're managing a Stack v9 deployment, then you can also assign roles and define permissions for a space from the **Permissions** tab of the space settings.
300
209
301
210
When a role is assigned to *All Spaces*, you can’t remove its access from the space settings. You must instead edit the role to give it more granular access to individual spaces.
302
211
303
212
304
-
###Callouts
213
+
## Callouts
305
214
306
215
**Use case:** Happy differences, clarifications
307
216
308
217
Some sections don’t apply to, say, Serverless, because we manage the headache for you. Help people to feel like they’re not getting shortchanged with a callout.
309
218
310
219
If there’s a terminology change or other minor change (especially where x equates with y), consider handling as a note for simplicity.
311
220
312
-
####Examples
221
+
### Examples
313
222
314
223
**In **Manage TLS certificates** section*:
315
224
@@ -322,7 +231,7 @@ If there’s a terminology change or other minor change (especially where x equa
322
231
:::{note}
323
232
In Stack versions 9.0 and lower, **Spaces** are referred to as **Places**.
324
233
325
-
###Prose (explanatory paragraphs and sections)
234
+
## Prose (explanatory paragraphs and sections)
326
235
327
236
**Use case**: Differences with a "why"
328
237
@@ -332,7 +241,7 @@ Sometimes, a close explanation of the differences between things helps people to
332
241
333
242
You also might do this to compare approaches between deployment types, when [sibling bullets](#sibling-bullets) aren't enough.
334
243
335
-
####Example
244
+
### Example
336
245
337
246
::::{tab-set}
338
247
:group: one-two
@@ -370,7 +279,7 @@ You can augment Elastic Cloud security features in the following ways:
370
279
371
280
You also might do this to compare approaches between deployment types, when [sibling bullets](#sibling-bullets) aren't enough.
372
281
373
-
###Sibling pages
282
+
## Sibling pages
374
283
375
284
**Use case:**
376
285
@@ -387,20 +296,10 @@ When version differences are just too large to be handled with any of our other
387
296
388
297
% Down the line, if we need to, we could easily convert version-sensitive sibling pages into “picker” pages
0 commit comments