Skip to content

Commit a78511e

Browse files
cottitheletterfflorent-leborgneshainaraskascolleenmcginnis
authored
Product Configuration (#1865)
* Introduce products.yml as the central resource to catalogue primary product metadata, and substitution support for them * Adjust legacy URL mapping to use Product metadata * Refactor legacy-url-mappings.yml, update values on versions.yml and products.yml * Fix merge * Refactor location of Product * Fix property definition * Refactor loading Product and LegacyUrlMapping data * Add documentation * Fix legacy version lists with 9.0+ entries * Standardize with underscores * Update docs/configure/site/products.md Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> * Update docs/configure/site/products.md Fabrizio with the save. Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> * Revert to kebab-case product definition and allow compatibility with frontmatter definitions * Fix lint * Standardize on underscores as it is more widely used by writers * Update config/products.yml Co-authored-by: florent-leborgne <[email protected]> * Remove obsolete EqualityComparer * Adjust product listing * Minor clean-ups * Adding non-product entries back * Remove duplicate version entries between versions.yml and the legacy url mappings * FIx tests and ecctl definition * Use a static deserializer through the same assembly * Adjust product id for ecctl and fix flexibility rules * Support underscores and dashes in substitutions * Adjust configuration files * Fix cloud_terraform versioning * Apply suggestions from code review Co-authored-by: shainaraskas <[email protected]> * Update product label * Fix remaining items on legacy mapping * Update config/products.yml Co-authored-by: shainaraskas <[email protected]> * Update config/products.yml Co-authored-by: Colleen McGinnis <[email protected]> * Update config/products.yml Co-authored-by: Colleen McGinnis <[email protected]> * Update config/products.yml Co-authored-by: Colleen McGinnis <[email protected]> * Update config/products.yml Co-authored-by: Colleen McGinnis <[email protected]> * Update docs/configure/site/products.md Co-authored-by: Colleen McGinnis <[email protected]> * Update docs/syntax/substitutions.md Co-authored-by: Colleen McGinnis <[email protected]> * Update config/products.yml Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> * Update config/products.yml Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> * Update config/products.yml Co-authored-by: Colleen McGinnis <[email protected]> * Remove APM Agent Android and iOS, moved to EDOT * Drop versions from search-ui and apm-agent-dotnet * Remove skipping * Fix merge mishaps and add suggested changes * Update config/versions.yml Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> * Use hyphens for all configurations. * Add versioning system for ecs * Standardize on kebab-casing * Versioning defaults to product id if omitted. --------- Co-authored-by: Fabrizio Ferri-Benedetti <[email protected]> Co-authored-by: florent-leborgne <[email protected]> Co-authored-by: shainaraskas <[email protected]> Co-authored-by: Colleen McGinnis <[email protected]>
1 parent bfc3d39 commit a78511e

File tree

58 files changed

+1085
-412
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1085
-412
lines changed

config/legacy-url-mappings.yml

Lines changed: 221 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,228 @@
11
#############################################
22
# This file defines the legacy URL mappings for the documentation site.
33
# It maps current documentation pages to older versions to ensure users can find the content they need.
4-
# TODO: Refactor the model, for now we just use the first element as current version
4+
# Upon creation of version selection dropdowns, this data is combined with the current version of its product.
55
#############################################
66

7-
stack: &stack [ '9.0+', '8.19', '8.18', '8.17', '8.16', '8.15', '8.14', '8.13', '8.12', '8.11', '8.10', '8.9', '8.8', '8.7', '8.6', '8.5', '8.4', '8.3', '8.2', '8.1', '8.0', '7.17' ]
7+
stack: &stack [ '8.19', '8.18', '8.17', '8.16', '8.15', '8.14', '8.13', '8.12', '8.11', '8.10', '8.9', '8.8', '8.7', '8.6', '8.5', '8.4', '8.3', '8.2', '8.1', '8.0', '7.17' ]
88

99
mappings:
10-
en/apm/agent/android/: [ '1.2.0' , '0.x' ]
11-
en/apm/agent/dotnet/: [ '1.34.0' ]
12-
en/apm/agent/go/: [ '2.7.1', '1.x', '0.5' ]
13-
en/apm/agent/java/: ['1.54.0', '0.7', '0.6']
14-
en/apm/agent/nodejs/: [ '4.x', '3.x', '2.x', '1.x' ]
15-
en/apm/agent/php/: [ '1.15.1', '1.x' ]
16-
en/apm/agent/python/: [ '6.24.0', '5.x', '4.x', '3.x', '2.x', '1.x' ]
17-
en/apm/agent/ruby/: [ '4.8.0', '3.x', '2.x', '1.x' ]
18-
en/apm/agent/rum-js/: [ '5.17.0', '4.x', '3.x', '2.x', '1.x', '0.x' ]
19-
en/apm/agent/swift/: [ '1.2.1', '0.x' ]
20-
en/apm/attacher/: [ '1.1.3' ]
21-
en/apm/lambda/: [ '1.6.0' ]
22-
en/beats/auditbeat/: *stack
23-
en/beats/devguide/: *stack
24-
en/beats/filebeat/: *stack
25-
en/beats/functionbeat/: *stack
26-
en/beats/heartbeat/: *stack
27-
en/beats/journalbeat/: *stack
28-
en/beats/libbeat/: *stack
29-
en/beats/loggingplugin/: *stack
30-
en/beats/metricbeat/: *stack
31-
en/beats/packetbeat/: *stack
32-
en/beats/topbeat/: *stack
33-
en/beats/winlogbeat/: *stack
34-
en/cloud-heroku/: []
35-
en/cloud-on-k8s/: [ '3.0+', '2.16', '2.15', '2.14', '2.13', '2.12', '2.11', '2.10', '2.9', '2.8', '2.7', '2.6', '2.5', '2.4', '2.3', '2.2', '2.1', '2.0', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
36-
en/cloud/: []
37-
en/cloud-enterprise/: [ '4.0', '3.8', '3.7', '3.6', '3.5', '3.4', '3.3', '3.2', '3.1', '3.0', '2.13', '2.12', '2.11', '2.10', '2.9', '2.8', '2.7', '2.6', '2.5', '2.4', '2.3', '2.2', '2.1', '2.0', '1.1', '1.0' ]
38-
en/ecctl/: [ '1.14+', '1.13', '1.12', '1.11', '1.10', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
39-
en/ecs-logging/: []
40-
en/ecs-logging/dotnet/: [ '8.18.1' ]
41-
en/ecs-logging/go-logrus/: [ '1.0.0' ]
42-
en/ecs-logging/go-zap/: [ '1.0.3' ]
43-
en/ecs-logging/go-zerolog/: [ '0.2.0' ]
44-
en/ecs-logging/java/: [ '1.7.0', '0.x' ]
45-
en/ecs-logging/nodejs/: [ '1.5.3' ]
46-
en/ecs-logging/overview/: []
47-
en/ecs-logging/php/: [ '2.0.0' ]
48-
en/ecs-logging/python/: [ '2.2.0' ]
49-
en/ecs-logging/ruby/: ['1.0.0']
50-
en/ecs/: [ '9.0+', '8.18', '8.17', '8.16', '8.15', '8.14', '8.13', '8.12', '8.11', '8.10', '8.9', '8.8', '8.7', '8.6', '8.5', '8.4', '8.3', '8.2', '8.1', '8.0', '1.12', '1.11', '1.10', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
51-
en/elastic-stack-glossary/: []
52-
en/elastic-stack/: *stack
53-
en/elasticsearch/client/curator/: [ '8.0.21', '7.0', '6.0', '5.8', '5.7', '5.6', '5.5', '5.4', '5.3', '5.2', '5.1', '5.0', '4.3', '4.2', '4.1', '4.0', '3.5', '3.4', '3.3' ]
54-
en/elasticsearch/client/eland/: [ '9.0.1' ]
55-
en/elasticsearch/client/go-api/: *stack
56-
en/elasticsearch/client/java-api-client/: *stack
57-
en/elasticsearch/client/javascript-api/: *stack
58-
en/elasticsearch/client/net-api/: *stack
59-
en/elasticsearch/client/php-api/: *stack
60-
en/elasticsearch/client/python-api/: *stack
61-
en/elasticsearch/client/ruby-api/: *stack
62-
en/elasticsearch/client/rust-api/: *stack
63-
en/elasticsearch/hadoop/: *stack
64-
en/elasticsearch/painless/: *stack
65-
en/elasticsearch/plugins/: *stack
66-
en/elasticsearch/reference/: *stack
67-
en/esf/: ['1.20.1']
68-
en/fleet/: *stack
69-
en/ingest-overview/: []
70-
en/ingest/: *stack
71-
en/integrations-developer/: []
72-
en/integrations/: []
73-
en/kibana/: *stack
74-
en/logstash-versioned-plugins/: []
75-
en/logstash/: *stack
76-
en/machine-learning/: *stack
77-
en/observability/: *stack
78-
en/reference-architectures/: []
79-
en/search-ui/: ['1.24.0']
80-
en/security/: *stack
81-
en/serverless/: []
82-
en/starting-with-the-elasticsearch-platform-and-its-solutions/: *stack
10+
en/apm/agent/android/:
11+
product: edot-android
12+
legacy_versions: [ '0.x' ]
13+
en/apm/agent/dotnet/:
14+
product: apm-agent-dotnet
15+
legacy_versions: []
16+
en/apm/agent/go/:
17+
product: apm-agent-go
18+
legacy_versions: [ '1.x', '0.5' ]
19+
en/apm/agent/java/:
20+
product: apm-agent-java
21+
legacy_versions: [ '0.7', '0.6']
22+
en/apm/agent/nodejs/:
23+
product: apm-agent-node
24+
legacy_versions: [ '3.x', '2.x', '1.x' ]
25+
en/apm/agent/php/:
26+
product: apm-agent-php
27+
legacy_versions: []
28+
en/apm/agent/python/:
29+
product: apm-agent-python
30+
legacy_versions: [ '5.x', '4.x', '3.x', '2.x', '1.x' ]
31+
en/apm/agent/ruby/:
32+
product: apm-agent-ruby
33+
legacy_versions: [ '3.x', '2.x', '1.x' ]
34+
en/apm/agent/rum-js/:
35+
product: apm-agent-rum-js
36+
legacy_versions: [ '4.x', '3.x', '2.x', '1.x', '0.x' ]
37+
en/apm/agent/swift/:
38+
product: edot-ios
39+
legacy_versions: [ '0.x' ]
40+
en/apm/attacher/:
41+
product: apm-k8s-attacher
42+
legacy_versions: []
43+
en/apm/lambda/:
44+
product: apm-aws-lambda
45+
legacy_versions: []
46+
en/beats/auditbeat/:
47+
product: auditbeat
48+
legacy_versions: *stack
49+
en/beats/devguide/:
50+
product: beats
51+
legacy_versions: *stack
52+
en/beats/filebeat/:
53+
product: filebeat
54+
legacy_versions: *stack
55+
en/beats/functionbeat/:
56+
product: beats
57+
legacy_versions: *stack
58+
en/beats/heartbeat/:
59+
product: heartbeat
60+
legacy_versions: *stack
61+
en/beats/journalbeat/:
62+
product: beats
63+
legacy_versions: *stack
64+
en/beats/libbeat/:
65+
product: beats
66+
legacy_versions: *stack
67+
en/beats/loggingplugin/:
68+
product: beats
69+
legacy_versions: *stack
70+
en/beats/metricbeat/:
71+
product: metricbeat
72+
legacy_versions: *stack
73+
en/beats/packetbeat/:
74+
product: packetbeat
75+
legacy_versions: *stack
76+
en/beats/topbeat/:
77+
product: beats
78+
legacy_versions: *stack
79+
en/beats/winlogbeat/:
80+
product: winlogbeat
81+
legacy_versions: *stack
82+
en/cloud-heroku/:
83+
product: cloud-hosted
84+
legacy_versions: []
85+
en/cloud-on-k8s/:
86+
product: cloud-kubernetes
87+
legacy_versions: [ '2.16', '2.15', '2.14', '2.13', '2.12', '2.11', '2.10', '2.9', '2.8', '2.7', '2.6', '2.5', '2.4', '2.3', '2.2', '2.1', '2.0', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
88+
en/cloud/:
89+
product: cloud-hosted
90+
legacy_versions: []
91+
en/cloud-enterprise/:
92+
product: cloud-enterprise
93+
legacy_versions: [ '3.8', '3.7', '3.6', '3.5', '3.4', '3.3', '3.2', '3.1', '3.0', '2.13', '2.12', '2.11', '2.10', '2.9', '2.8', '2.7', '2.6', '2.5', '2.4', '2.3', '2.2', '2.1', '2.0', '1.1', '1.0' ]
94+
en/ecctl/:
95+
product: cloud-control-ecctl
96+
legacy_versions: [ '1.13', '1.12', '1.11', '1.10', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
97+
en/ecs-logging/:
98+
product: ecs-logging
99+
legacy_versions: []
100+
en/ecs-logging/dotnet/:
101+
product: ecs-dotnet
102+
legacy_versions: []
103+
en/ecs-logging/go-logrus/:
104+
product: ecs-logging-go-logrus
105+
legacy_versions: []
106+
en/ecs-logging/go-zap/:
107+
product: ecs-logging-go-zap
108+
legacy_versions: []
109+
en/ecs-logging/go-zerolog/:
110+
product: ecs-logging-go-zerolog
111+
legacy_versions: []
112+
en/ecs-logging/java/:
113+
product: ecs-logging-java
114+
legacy_versions: ['0.x']
115+
en/ecs-logging/nodejs/:
116+
product: ecs-logging-nodejs
117+
legacy_versions: []
118+
en/ecs-logging/overview/:
119+
product: ecs-logging
120+
legacy_versions: []
121+
en/ecs-logging/php/:
122+
product: ecs-logging-php
123+
legacy_versions: []
124+
en/ecs-logging/python/:
125+
product: ecs-logging-python
126+
legacy_versions: []
127+
en/ecs-logging/ruby/:
128+
product: ecs-logging-ruby
129+
legacy_versions: []
130+
en/ecs/:
131+
product: ecs
132+
legacy_versions: [ '8.18', '8.17', '8.16', '8.15', '8.14', '8.13', '8.12', '8.11', '8.10', '8.9', '8.8', '8.7', '8.6', '8.5', '8.4', '8.3', '8.2', '8.1', '8.0', '1.12', '1.11', '1.10', '1.9', '1.8', '1.7', '1.6', '1.5', '1.4', '1.3', '1.2', '1.1', '1.0' ]
133+
en/elastic-stack-glossary/:
134+
product: elastic-stack
135+
legacy_versions: []
136+
en/elastic-stack/:
137+
product: elastic-stack
138+
legacy_versions: *stack
139+
en/elasticsearch/client/curator/:
140+
product: curator
141+
legacy_versions: [ '7.0', '6.0', '5.8', '5.7', '5.6', '5.5', '5.4', '5.3', '5.2', '5.1', '5.0', '4.3', '4.2', '4.1', '4.0', '3.5', '3.4', '3.3' ]
142+
en/elasticsearch/client/eland/:
143+
product: eland
144+
legacy_versions: []
145+
en/elasticsearch/client/go-api/:
146+
product: elasticsearch
147+
legacy_versions: *stack
148+
en/elasticsearch/client/java-api-client/:
149+
product: elasticsearch
150+
legacy_versions: *stack
151+
en/elasticsearch/client/javascript-api/:
152+
product: elasticsearch
153+
legacy_versions: *stack
154+
en/elasticsearch/client/net-api/:
155+
product: elasticsearch
156+
legacy_versions: *stack
157+
en/elasticsearch/client/php-api/:
158+
product: elasticsearch
159+
legacy_versions: *stack
160+
en/elasticsearch/client/python-api/:
161+
product: elasticsearch
162+
legacy_versions: *stack
163+
en/elasticsearch/client/ruby-api/:
164+
product: elasticsearch
165+
legacy_versions: *stack
166+
en/elasticsearch/client/rust-api/:
167+
product: elasticsearch
168+
legacy_versions: *stack
169+
en/elasticsearch/hadoop/:
170+
product: elasticsearch
171+
legacy_versions: *stack
172+
en/elasticsearch/painless/:
173+
product: elasticsearch
174+
legacy_versions: *stack
175+
en/elasticsearch/plugins/:
176+
product: elasticsearch
177+
legacy_versions: *stack
178+
en/elasticsearch/reference/:
179+
product: elasticsearch
180+
legacy_versions: *stack
181+
en/esf/:
182+
product: elastic-serverless-forwarder
183+
legacy_versions: []
184+
en/fleet/:
185+
product: elastic-agent
186+
legacy_versions: *stack
187+
en/ingest-overview/:
188+
product: elastic-stack
189+
legacy_versions: []
190+
en/ingest/:
191+
product: elastic-stack
192+
legacy_versions: *stack
193+
en/integrations-developer/:
194+
product: integrations
195+
legacy_versions: []
196+
en/integrations/:
197+
product: integrations
198+
legacy_versions: []
199+
en/kibana/:
200+
product: kibana
201+
legacy_versions: *stack
202+
en/logstash-versioned-plugins/:
203+
product: logstash
204+
legacy_versions: []
205+
en/logstash/:
206+
product: logstash
207+
legacy_versions: *stack
208+
en/machine-learning/:
209+
product: elasticsearch
210+
legacy_versions: *stack
211+
en/observability/:
212+
product: observability
213+
legacy_versions: *stack
214+
en/reference-architectures/:
215+
product: elasticsearch
216+
legacy_versions: []
217+
en/search-ui/:
218+
product: search-ui
219+
legacy_versions: []
220+
en/security/:
221+
product: security
222+
legacy_versions: *stack
223+
en/serverless/:
224+
product: cloud-serverless
225+
legacy_versions: []
226+
en/starting-with-the-elasticsearch-platform-and-its-solutions/:
227+
product: elastic-stack
228+
legacy_versions: *stack

0 commit comments

Comments
 (0)