open-telemetry / semantic-conventions

Defines standards for generating consistent, accessible telemetry across a variety of domains
Apache License 2.0
256 stars 165 forks source link

Automate semconv library codegen for new versions #565

Open lmolkova opened 10 months ago

lmolkova commented 10 months ago

The other thing I think would be really useful is to have a workflow convention so that generation, and ultimately creating maybe a PR, for the new version can be done by the semantic conventions repository to reduce the time that each SIG takes to release the new package. If those are stuck behind in the various languages, we'll get into the same state as we have been around the perception of instability and maturity across languages.

Originally posted by @martinjt in https://github.com/open-telemetry/semantic-conventions/issues/551#issuecomment-1832464574

lmolkova commented 10 months ago

Many SIGs are way behind on semconv version and don't have expertise in jinja/otelsemconv code generation tools.

One way to approach it would be to have a CI pipeline that

  1. is triggered by semconv version release (if possible)
  2. runs in individual language repos
  3. takes the new version and (using language-owned jinja templates and update script) generates new semconvs
  4. sends a PR back to language repo for the review

From what I can tell, everything except step 1 is totally possible today with #550 being the only blocker.