Loading

products.yml

The products.yml file specifies metadata regarding the projects in the organization that use the V3 docs system.

products:
  apm-agent-dotnet:
    display: 'APM .NET Agent'
    versioning: 'apm-agent-dotnet'
  edot-collector:
    display: 'Elastic Distribution of OpenTelemetry Collector'
    versioning: 'stack'
    repository: 'elastic-edot-collector'
  docs-builder:
    display: 'Elastic Docs Builder'
    repository: 'docs-builder'
    features:
      public-reference: false
#...
		
products

A YAML mapping where each key is an Elastic product.

  • display: A friendly name for the product.
  • versioning: The versioning system used by the project. The value for this field must match one of the versioning systems defined in versions.yml. Optional for products that only participate in release notes.
  • repository: The repository name for the product. It's optional and primarily intended for handling edge cases where there is a mismatch between the repository name and the product identifier.
  • features: An optional mapping that controls which docs-builder subsystems the product participates in. When omitted, all features are enabled (backward compatible). When present, all features default to true and individual features can be opted out by setting them to false. The available features are:
  • public-reference: The product can be referenced in applies_to blocks, page frontmatter products, and gets {{ product.<id> }} substitutions. This is what "being a documentation product" means today.
  • release-notes: The product participates in the changelog and release notes system.

Products without a features mapping behave exactly as before -- they participate in all subsystems. The features mapping uses opt-out semantics: all features are enabled by default, and you only need to set a feature to false to disable it. For example, internal tools that need release notes but don't have public-facing documentation can set public-reference: false. :::

Writing {{ product.<product-id> }} renders the friendly name of the product in the documentation. Substitutions are generated only for products with the public-reference feature (or no explicit features mapping). For example:

Substitution Result
{{ product.apm-agent-dotnet }} APM .NET Agent
{{ product.edot-collector }} Elastic Distribution of OpenTelemetry Collector

You can also use the shorthand notation {{ .<product_id> }}. For example:

Substitution Result
{{ .apm-agent-dotnet }} APM .NET Agent
{{ .edot-collector }} Elastic Distribution of OpenTelemetry Collector
Note

While the recommended separator is a hyphen (-) to promote cohesion, underscores (_) are also supported, and internally read as hyphens.

versions.yml Legacy URL mappings