From 9a7d334a861450a231b52616ea3dbbda765616f7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 20 Nov 2025 18:50:20 +0000 Subject: [PATCH 1/7] Initial plan From e0cd8ee545e45ce2e4845d59a3215783c3f60926 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 20 Nov 2025 18:55:27 +0000 Subject: [PATCH 2/7] Add telemetry specification for RFC #0131 - Build Observability - Added Telemetry section describing lifecycle and buildpack telemetry files - Documented telemetry file locations under /layers/tracing/ - Specified OpenTelemetry File Exporter format in JSONL - Added context propagation via CNB_OTEL_TRACEPARENT environment variable - Documented telemetry file properties and consumption guidelines - Added Platform-Provided Variables section for CNB_OTEL_TRACEPARENT - Updated table of contents with new sections Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- platform.md | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/platform.md b/platform.md index a8365db..f603f9f 100644 --- a/platform.md +++ b/platform.md @@ -62,6 +62,11 @@ Examples of a platform might include: - [Run Image Resolution](#run-image-resolution) - [Registry Authentication](#registry-authentication) - [Experimental Features](#experimental-features) + - [Telemetry](#telemetry) + - [Telemetry Files](#telemetry-files) + - [Telemetry File Properties](#telemetry-file-properties) + - [Context Propagation](#context-propagation) + - [Telemetry Consumption](#telemetry-consumption) - [Buildpacks](#buildpacks) - [Buildpacks Directory Layout](#buildpacks-directory-layout) - [Image Extensions](#image-extensions) @@ -74,6 +79,7 @@ Examples of a platform might include: - [POSIX Path Variables](#posix-path-variables) - [User-Provided Variables](#user-provided-variables) - [Operator-Defined Variables](#operator-defined-variables) + - [Platform-Provided Variables](#platform-provided-variables) - [Launch Environment](#launch-environment) - [Caching](#caching) - [Build Reproducibility](#build-reproducibility) @@ -1141,6 +1147,65 @@ When an experimental feature is invoked, the lifecycle: - SHALL fail if `CNB_EXPERIMENTAL_MODE=error` - SHALL continue without warning if `CNB_EXPERIMENTAL_MODE=silent` +### Telemetry + +The lifecycle and buildpacks MAY emit telemetry data during build operations to enable observability of build performance and behavior. + +#### Telemetry Files + +Telemetry data MUST be written using the [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) in JSONL format. + +Telemetry files MUST be written to the following locations under `/tracing/`: +- Lifecycle telemetry: `/tracing/lifecycle/.jsonl` + - Where `` is one of: `analyze`, `detect`, `restore`, `extend`, `build`, `export` +- Buildpack telemetry: `/tracing/buildpacks/@-.jsonl` + - Where `` is the buildpack ID, `` is the buildpack version, and `` is either `detect` or `build` +- Extension telemetry: `/tracing/extensions/@-.jsonl` + - Where `` is the extension ID, `` is the extension version, and `` is either `detect` or `generate` + +Example telemetry file hierarchy: +``` + +└── tracing + ├── buildpacks + │ ├── example-buildpack@1.0.0-detect.jsonl + │ └── example-buildpack@1.0.0-build.jsonl + ├── extensions + │ └── example-extension@1.0.0-generate.jsonl + └── lifecycle + ├── analyze.jsonl + ├── detect.jsonl + ├── restore.jsonl + ├── build.jsonl + └── export.jsonl +``` + +#### Telemetry File Properties + +Telemetry files: +- MAY be written at any point during the build to ensure telemetry is persisted in case of failures, process terminations, or crashes +- MUST NOT be truncated or deleted during the build to allow telemetry processing by the platform during or after the build +- MUST NOT be included in the exported app image +- MUST be group-readable to allow analysis by the user and/or platform +- SHOULD only be read and written by the component that created them (lifecycle or individual buildpack/extension) + +#### Context Propagation + +The platform MAY set `CNB_OTEL_TRACEPARENT` in the lifecycle execution environment to enable correlation of lifecycle and buildpack traces with platform traces. + +When `CNB_OTEL_TRACEPARENT` is provided: +- The value MUST conform to the [W3C Trace Context specification for traceparent field values](https://www.w3.org/TR/trace-context/#traceparent-header-field-values) +- The lifecycle and buildpacks SHOULD use the provided `trace-id` and `parent-id` when generating traces + +#### Telemetry Consumption + +The platform MAY read telemetry files during or after the build for observability purposes. + +Telemetry files: +- MUST NOT be used as an API, contract, or communication mechanism between buildpacks or between the lifecycle and buildpacks +- MUST NOT contain personally identifiable information (e.g., usernames, email addresses, IP addresses) +- MUST NOT contain business-sensitive information (e.g., passwords, access keys, image names, URLs, source code repository names) + ## Buildpacks ### Buildpacks Directory Layout @@ -1220,6 +1285,16 @@ however the operator-defined value is always applied after the buildpack-provide The platform SHOULD NOT set operator-provided environment variables directly in the lifecycle execution environment. +##### Platform-Provided Variables + +The platform MAY set the following environment variables in the lifecycle execution environment: + +| Env Variable | Description | +|-------------------------|-------------------------------------------------------------------------------------------------------| +| `CNB_OTEL_TRACEPARENT` | W3C Trace Context traceparent value for correlating lifecycle and buildpack traces with platform traces. See [Telemetry](#telemetry). | + +These variables SHALL be directly inherited by buildpacks without modification. + #### Launch Environment User-provided modifications to the process execution environment SHOULD be set directly in the lifecycle execution environment. From 7dfb4c88dfdb957f69e0eaab28c7f591ad1e0d85 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 20 Nov 2025 18:58:07 +0000 Subject: [PATCH 3/7] Add telemetry outputs and inputs to buildpack specification - Added CNB_OTEL_TRACEPARENT input to detect and build phases - Added telemetry file outputs to detect and build phases - Documented optional telemetry file paths using OpenTelemetry File Exporter format Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- buildpack.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/buildpack.md b/buildpack.md index 022c55c..cb963ae 100644 --- a/buildpack.md +++ b/buildpack.md @@ -191,6 +191,7 @@ Executable: `/bin/detect`, Working Dir: `` | `$CNB_BUILD_PLAN_PATH` | E | Absolute path of the build plan | | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | +| `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -201,6 +202,7 @@ Executable: `/bin/detect`, Working Dir: `` | Standard output | Logs (info) | | Standard error | Logs (warnings, errors) | | `$CNB_BUILD_PLAN_PATH` | Contributions to the the Build Plan (TOML) | +| `$CNB_LAYERS_DIR/tracing/buildpacks/@-detect.jsonl` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Build @@ -213,6 +215,7 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_BP_PLAN_PATH` | ER | Relevant [Buildpack Plan entries](#buildpack-plan-toml) from detection (TOML) | | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | +| `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -240,6 +243,7 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_LAYERS_DIR//env.launch//` | Env vars for launch (after `env`, before `exec.d`) for the launched process | | `$CNB_LAYERS_DIR//env.build/` | Env vars for subsequent buildpacks (after `env`) | | `$CNB_LAYERS_DIR//*` | Other content for launch and/or subsequent buildpacks | +| `$CNB_LAYERS_DIR/tracing/buildpacks/@-build.jsonl` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Exec.d From cf88fca724b2be45f78d19ac2bed86fa6eac7346 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 20 Nov 2025 18:59:29 +0000 Subject: [PATCH 4/7] Add telemetry output to image extension specification - Documented optional telemetry file output for extensions in detect and generate phases - Extensions can write telemetry to /layers/tracing/extensions/ directory Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- image_extension.md | 1 + 1 file changed, 1 insertion(+) diff --git a/image_extension.md b/image_extension.md index 201fb65..6b1ae23 100644 --- a/image_extension.md +++ b/image_extension.md @@ -100,6 +100,7 @@ Correspondingly, each `/bin/generate` executable: - `context.run` - `context.build` - MAY write key-value pairs to `/extend-config.toml` that are provided as build args to build.Dockerfile when extending the build image. +- MAY write telemetry data to `/tracing/extensions/@-detect.jsonl` or `/tracing/extensions/@-generate.jsonl` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/). - MUST NOT write SBOM (Software-Bill-of-Materials) files as described in the [Software-Bill-of-Materials](#software-bill-of-materials) section. #### Context Folders From a75f3f3be745fb83965b17be36a5225790661710 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:24:38 +0000 Subject: [PATCH 5/7] Use CNB_OTEL_LOG_PATH instead of hardcoded telemetry paths - Add CNB_OTEL_LOG_PATH as input to buildpack detect and build phases - Add CNB_OTEL_LOG_PATH as input for image extensions - Replace hardcoded telemetry output paths with CNB_OTEL_LOG_PATH - Document CNB_OTEL_LOG_PATH in platform spec as platform-provided variable - Update telemetry section to describe platform provides path to buildpacks/extensions Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- buildpack.md | 6 ++++-- image_extension.md | 2 +- platform.md | 9 ++++----- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/buildpack.md b/buildpack.md index cb963ae..8a40827 100644 --- a/buildpack.md +++ b/buildpack.md @@ -192,6 +192,7 @@ Executable: `/bin/detect`, Working Dir: `` | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | | `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | +| `$CNB_OTEL_LOG_PATH` | AR | Path to write telemetry data in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -202,7 +203,7 @@ Executable: `/bin/detect`, Working Dir: `` | Standard output | Logs (info) | | Standard error | Logs (warnings, errors) | | `$CNB_BUILD_PLAN_PATH` | Contributions to the the Build Plan (TOML) | -| `$CNB_LAYERS_DIR/tracing/buildpacks/@-detect.jsonl` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | +| `$CNB_OTEL_LOG_PATH` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Build @@ -216,6 +217,7 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | | `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | +| `$CNB_OTEL_LOG_PATH` | AR | Path to write telemetry data in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -243,7 +245,7 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_LAYERS_DIR//env.launch//` | Env vars for launch (after `env`, before `exec.d`) for the launched process | | `$CNB_LAYERS_DIR//env.build/` | Env vars for subsequent buildpacks (after `env`) | | `$CNB_LAYERS_DIR//*` | Other content for launch and/or subsequent buildpacks | -| `$CNB_LAYERS_DIR/tracing/buildpacks/@-build.jsonl` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | +| `$CNB_OTEL_LOG_PATH` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Exec.d diff --git a/image_extension.md b/image_extension.md index 6b1ae23..fe17256 100644 --- a/image_extension.md +++ b/image_extension.md @@ -100,7 +100,7 @@ Correspondingly, each `/bin/generate` executable: - `context.run` - `context.build` - MAY write key-value pairs to `/extend-config.toml` that are provided as build args to build.Dockerfile when extending the build image. -- MAY write telemetry data to `/tracing/extensions/@-detect.jsonl` or `/tracing/extensions/@-generate.jsonl` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/). +- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MUST NOT write SBOM (Software-Bill-of-Materials) files as described in the [Software-Bill-of-Materials](#software-bill-of-materials) section. #### Context Folders diff --git a/platform.md b/platform.md index f603f9f..33df32c 100644 --- a/platform.md +++ b/platform.md @@ -1155,13 +1155,11 @@ The lifecycle and buildpacks MAY emit telemetry data during build operations to Telemetry data MUST be written using the [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) in JSONL format. -Telemetry files MUST be written to the following locations under `/tracing/`: +The platform MUST provide `CNB_OTEL_LOG_PATH` to buildpacks and extensions when telemetry collection is desired. The value SHOULD point to a location under `/tracing/buildpacks/` for buildpacks or `/tracing/extensions/` for extensions. + +Lifecycle telemetry files SHOULD be written to the following locations: - Lifecycle telemetry: `/tracing/lifecycle/.jsonl` - Where `` is one of: `analyze`, `detect`, `restore`, `extend`, `build`, `export` -- Buildpack telemetry: `/tracing/buildpacks/@-.jsonl` - - Where `` is the buildpack ID, `` is the buildpack version, and `` is either `detect` or `build` -- Extension telemetry: `/tracing/extensions/@-.jsonl` - - Where `` is the extension ID, `` is the extension version, and `` is either `detect` or `generate` Example telemetry file hierarchy: ``` @@ -1292,6 +1290,7 @@ The platform MAY set the following environment variables in the lifecycle execut | Env Variable | Description | |-------------------------|-------------------------------------------------------------------------------------------------------| | `CNB_OTEL_TRACEPARENT` | W3C Trace Context traceparent value for correlating lifecycle and buildpack traces with platform traces. See [Telemetry](#telemetry). | +| `CNB_OTEL_LOG_PATH` | Path where buildpacks and extensions should write telemetry data. When provided, it SHOULD point to a location under `/tracing/buildpacks/`. See [Telemetry](#telemetry). | These variables SHALL be directly inherited by buildpacks without modification. From 5ac3690892dec7d5f2b48c144c82afe858e5b809 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:31:26 +0000 Subject: [PATCH 6/7] Add MAY write telemetry clause to detect and build phases - Added "MAY write telemetry data to CNB_OTEL_LOG_PATH" to detect phase - Added "MAY write telemetry data to CNB_OTEL_LOG_PATH" to build phase - Matches the format used in image extension spec Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- buildpack.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/buildpack.md b/buildpack.md index 8a40827..5a51d12 100644 --- a/buildpack.md +++ b/buildpack.md @@ -410,6 +410,7 @@ The `/bin/detect` executable in each extension or buildpack, when executed: - MAY read the app directory. - MAY emit error, warning, or debug messages to `stderr`. - MAY augment the Build Plan by writing TOML to ``. +- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MUST set an exit status code as described in the [Buildpack Interface](#buildpack-interface) section. In order to make contributions to the Build Plan, a `/bin/detect` executable MUST write entries to `` in two sections: `requires` and `provides`. @@ -615,6 +616,7 @@ Correspondingly, each `/bin/build` executable: - SHOULD write launch SBOM entries to `/launch.sbom.` describing any contributions to the application not associated with a layer. - SHOULD write build SBOM entries to `/build.sbom.` describing any contributions to the build environment not associated with a layer. - MAY write values that should persist to subsequent builds in `/store.toml`. +- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MAY modify or delete any existing `/` directories. - MAY modify or delete any existing `/.toml` files. - MAY modify or delete any existing `/.sbom.` files. From 17e6edc23d8aa72efb78a340f3321ee266a72015 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 19 Dec 2025 18:14:39 +0000 Subject: [PATCH 7/7] Revert buildpack.md and image_extension.md changes This PR now only contains platform.md changes and will target platform/0.16. buildpack.md and image_extension.md changes will be moved to a separate PR targeting buildpack/0.13. Co-authored-by: jabrown85 <790999+jabrown85@users.noreply.github.com> --- buildpack.md | 8 -------- image_extension.md | 1 - 2 files changed, 9 deletions(-) diff --git a/buildpack.md b/buildpack.md index 5a51d12..022c55c 100644 --- a/buildpack.md +++ b/buildpack.md @@ -191,8 +191,6 @@ Executable: `/bin/detect`, Working Dir: `` | `$CNB_BUILD_PLAN_PATH` | E | Absolute path of the build plan | | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | -| `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | -| `$CNB_OTEL_LOG_PATH` | AR | Path to write telemetry data in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -203,7 +201,6 @@ Executable: `/bin/detect`, Working Dir: `` | Standard output | Logs (info) | | Standard error | Logs (warnings, errors) | | `$CNB_BUILD_PLAN_PATH` | Contributions to the the Build Plan (TOML) | -| `$CNB_OTEL_LOG_PATH` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Build @@ -216,8 +213,6 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_BP_PLAN_PATH` | ER | Relevant [Buildpack Plan entries](#buildpack-plan-toml) from detection (TOML) | | `$CNB_BUILDPACK_DIR` | ER | Absolute path of the buildpack root directory | | `$CNB_EXEC_ENV` | AR | Target execution environment ("production", "test", "development") | -| `$CNB_OTEL_TRACEPARENT` | AR | W3C Trace Context traceparent for trace correlation (optional) | -| `$CNB_OTEL_LOG_PATH` | AR | Path to write telemetry data in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | | `$CNB_PLATFORM_DIR` | AR | Absolute path of the platform directory | | `$CNB_PLATFORM_DIR/env/` | AR | User-provided environment variables for build | | `$CNB_PLATFORM_DIR/#` | AR | Platform-specific extensions | @@ -245,7 +240,6 @@ Executable: `/bin/build`, Working Dir: `` | `$CNB_LAYERS_DIR//env.launch//` | Env vars for launch (after `env`, before `exec.d`) for the launched process | | `$CNB_LAYERS_DIR//env.build/` | Env vars for subsequent buildpacks (after `env`) | | `$CNB_LAYERS_DIR//*` | Other content for launch and/or subsequent buildpacks | -| `$CNB_OTEL_LOG_PATH` | Buildpack telemetry in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) (optional) | ### Exec.d @@ -410,7 +404,6 @@ The `/bin/detect` executable in each extension or buildpack, when executed: - MAY read the app directory. - MAY emit error, warning, or debug messages to `stderr`. - MAY augment the Build Plan by writing TOML to ``. -- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MUST set an exit status code as described in the [Buildpack Interface](#buildpack-interface) section. In order to make contributions to the Build Plan, a `/bin/detect` executable MUST write entries to `` in two sections: `requires` and `provides`. @@ -616,7 +609,6 @@ Correspondingly, each `/bin/build` executable: - SHOULD write launch SBOM entries to `/launch.sbom.` describing any contributions to the application not associated with a layer. - SHOULD write build SBOM entries to `/build.sbom.` describing any contributions to the build environment not associated with a layer. - MAY write values that should persist to subsequent builds in `/store.toml`. -- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MAY modify or delete any existing `/` directories. - MAY modify or delete any existing `/.toml` files. - MAY modify or delete any existing `/.sbom.` files. diff --git a/image_extension.md b/image_extension.md index fe17256..201fb65 100644 --- a/image_extension.md +++ b/image_extension.md @@ -100,7 +100,6 @@ Correspondingly, each `/bin/generate` executable: - `context.run` - `context.build` - MAY write key-value pairs to `/extend-config.toml` that are provided as build args to build.Dockerfile when extending the build image. -- MAY write telemetry data to `$CNB_OTEL_LOG_PATH` in [OpenTelemetry File Exporter format](https://opentelemetry.io/docs/specs/otel/protocol/file-exporter/) when provided. - MUST NOT write SBOM (Software-Bill-of-Materials) files as described in the [Software-Bill-of-Materials](#software-bill-of-materials) section. #### Context Folders