logstash-plugins/logstash-output-elasticsearch

TASK: update ECS template vendoring scripts

yaauie opened this issue · 0 comments

We currently provide pre-release ECS v8 support for Elasticsearch 8 by transforming the ECS-provided "legacy" templates generated for Elasticsearch 7 into the Elasticsearch 8 format.

With elastic/ecs#1700 ECS now only generates ECS 8 templates targeted at Elasticsearch 8, so we need to provide a reverse of that transformation to vendor templates targeted for Elasticsearch 7.

Additionally, with ECS becoming stack-aligned, the file structure of the generated artifacts in ECS 8 is changing

  • from generated/elasticsearch/${elasticsearch_major}/template.json, where elasticsearch_major is either 6 or 7
  • to generated/elasticsearch/legacy/template.json, where "legacy" refers the template not being the composable template format, but the artifact is targeted for same-version Elasticsearch (e.g., this file on the 8.3 branch will target Elasticsearch 8.3).

When complete, our vendoring scripts should:

  • vendor frozen ECS 8.0.0 template for targeting Elasticsearch 7.x (avoid providing new 8.x features that will not be supported on Elasticsearch 7.x)
  • vendor tracked ECS 8.last template for targeting Elasticsearch 8.x
  • vendor latest ECS 1.? for Elasticsearch 6, 7, and transformed-7-as-8

This change does not block ECS from back-porting elastic/ecs#1700 to 8.0 branch, as our current vendoring strategy for ECS v8 support relies on a pinned git commit, and our ECS v1 support relies on 1.x branches.