Skip to content

Conversation

@evgenyfedorov2
Copy link
Member

@evgenyfedorov2 evgenyfedorov2 commented Jan 16, 2026

@dotnetrepoman dotnetrepoman bot added this to the January 2026 milestone Jan 16, 2026
@evgenyfedorov2 evgenyfedorov2 changed the title Initial commit Add AmbientMetadata.Build documentation Jan 16, 2026
@evgenyfedorov2 evgenyfedorov2 self-assigned this Jan 16, 2026
@evgenyfedorov2 evgenyfedorov2 marked this pull request as ready for review January 19, 2026 14:09
@evgenyfedorov2 evgenyfedorov2 requested a review from a team as a code owner January 19, 2026 14:09
Copilot AI review requested due to automatic review settings January 19, 2026 14:09
@evgenyfedorov2 evgenyfedorov2 changed the title Add AmbientMetadata.Build documentation [New article] Add AmbientMetadata.Build documentation Jan 19, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds comprehensive documentation for the Microsoft.Extensions.AmbientMetadata.Build component, which enables .NET applications to capture and access CI/CD build metadata at runtime.

Changes:

  • Adds main documentation page explaining build metadata functionality, configuration options, and CI/CD integration
  • Includes five code snippet examples demonstrating different usage patterns
  • Updates TOC navigation to include the new build metadata documentation

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
docs/navigate/tools-diagnostics/toc.yml Adds navigation entry for the new build metadata documentation
docs/core/enrichment/build-metadata.md Main documentation file covering installation, configuration, usage, and CI/CD integration
docs/core/enrichment/snippets/buildmetadata/* Complete example showing build metadata setup and usage with logging
docs/core/enrichment/snippets/buildmetadata-logging/* Example demonstrating logging integration with build metadata
docs/core/enrichment/snippets/buildmetadata-configure/* Example showing two-step configuration approach
docs/core/enrichment/snippets/buildmetadata-configure-programmatic/* Example of programmatic configuration
docs/core/enrichment/snippets/buildmetadata-access/* Example of accessing build metadata via dependency injection

@evgenyfedorov2 evgenyfedorov2 force-pushed the users/evgenyfedorov2/ambientmetadata_build_doc branch 2 times, most recently from 2247c8f to 8a1ebbf Compare January 19, 2026 15:40
@evgenyfedorov2 evgenyfedorov2 force-pushed the users/evgenyfedorov2/ambientmetadata_build_doc branch from 5a4d2ad to 148ab93 Compare January 20, 2026 09:06
@evgenyfedorov2 evgenyfedorov2 force-pushed the users/evgenyfedorov2/ambientmetadata_build_doc branch from 148ab93 to 5d31733 Compare January 20, 2026 09:14
@evgenyfedorov2
Copy link
Member Author

@gewarren please kindly review

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 16 out of 16 changed files in this pull request and generated 4 comments.

@@ -0,0 +1,140 @@
---
title: Build ambient metadata
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
title: Build ambient metadata
title: Ambient metadata about build

I'm suggesting this wording so as to avoid possible confusion that the article is about building ambient metadata.

ai-usage: ai-assisted
---

# Build ambient metadata
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Build ambient metadata
# Ambient metadata about build


### 2. Use AddBuildMetadata() methods

You can also configure build metadata using the `AddBuildMetadata()` extension methods. These methods do absolutely the same thing as `UseBuildMetadata()` above, but provide more flexibility if, for instance, you configure Host Configuration and Dependency Injection in different places of your source code.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You can also configure build metadata using the `AddBuildMetadata()` extension methods. These methods do absolutely the same thing as `UseBuildMetadata()` above, but provide more flexibility if, for instance, you configure Host Configuration and Dependency Injection in different places of your source code.
You can also configure build metadata using the `AddBuildMetadata()` extension methods. These methods do the same thing as the `UseBuildMetadata()` method described previously, but provide more flexibility if, for instance, you configure Host Configuration and Dependency Injection in different places of your source code.

Comment on lines +125 to +127
In the example above:

- We use `appsettings.json` to configure build metadata properties *manually*. This is for demonstration purposes; in a real CI/CD scenario, these values would be captured automatically from respective environment variables, and you don't need to have them in `appsettings.json`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In the example above:
- We use `appsettings.json` to configure build metadata properties *manually*. This is for demonstration purposes; in a real CI/CD scenario, these values would be captured automatically from respective environment variables, and you don't need to have them in `appsettings.json`.
> [!NOTE]
> This example uses `appsettings.json` to configure build metadata properties *manually*. This is for demonstration purposes; in a real CI/CD scenario, these values would be captured automatically from respective environment variables, and you don't need to have them in `appsettings.json`.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants