Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@ All notable changes to this project will be documented in this file.
- opensearch-dashboards: Add `3.8.0` ([#1675]).
- nifi: Ship `QueryNiFiReportingTask` with the image ([#1676]).
- nifi: Add `2.12.0` ([#1667]).
- vector: Add `0.58.0` ([#1680]).
- vector: Add `0.58.0` ([#1680], [#1693]).
- vector: Add the wrapper script `/stackable/bin/vector-with-env-var-interpolation` which enables
the interpolation of environment variables in the Vector configuration files ([#1693]).
- trino: Add `483` ([#1690]).
- trino-cli: Add `483` ([#1690]).
- opa: Add 1.20.2 ([#1697]).
Expand Down Expand Up @@ -137,6 +139,7 @@ All notable changes to this project will be documented in this file.
[#1686]: https://github.com/stackabletech/docker-images/pull/1686
[#1689]: https://github.com/stackabletech/docker-images/pull/1689
[#1690]: https://github.com/stackabletech/docker-images/pull/1690
[#1693]: https://github.com/stackabletech/docker-images/pull/1693
[#1697]: https://github.com/stackabletech/docker-images/pull/1697

## [26.7.0] - 2026-07-21
Expand Down
5 changes: 3 additions & 2 deletions vector/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,10 @@ tar -czf /stackable/vector-${NEW_VERSION}-src.tar.gz .
# - console/blackhole: Useful for debugging and are "cheap"
# Other:
# - api: Needed for /health checks (or /graphql queries)
# - unix: Enables jemalloc allocator on Linux for better performance
# - tikv-jemallocator: Enables jemalloc allocator on Linux for better performance
Comment thread
siegfriedweber marked this conversation as resolved.
# cargo-cyclonedx does not split the feature list on newlines, so it has to be a single line
# to be usable for both the build and the SBOM generation below.
VECTOR_FEATURES="sources-file,sources-internal_logs,transforms-remap,transforms-filter,transforms-route,sinks-vector,sinks-opentelemetry,sinks-console,sinks-blackhole,api,unix"
VECTOR_FEATURES="sources-file,sources-internal_logs,transforms-remap,transforms-filter,transforms-route,sinks-vector,sinks-opentelemetry,sinks-console,sinks-blackhole,api,tikv-jemallocator"

# --locked makes the build fail instead of silently updating Cargo.lock. Without it a
# dependency could resolve to a newer version than the one upstream locked, which would
Expand Down Expand Up @@ -126,6 +126,7 @@ ARG STACKABLE_USER_UID
LABEL maintainer="Stackable GmbH"

COPY --chown=${STACKABLE_USER_UID}:0 vector/licenses /licenses
COPY --chown=${STACKABLE_USER_UID}:0 vector/stackable/bin /stackable/bin
COPY --from=vector-builder --chown=${STACKABLE_USER_UID}:0 /app/* /usr/local/bin/

# Init Jobs/Pods often start a Vector Sidecar Container which collects the logs.
Expand Down
22 changes: 22 additions & 0 deletions vector/stackable/bin/vector-with-env-var-interpolation
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/usr/bin/env bash
#
# Usage: vector-with-env-var-interpolation <vector-options>
#
# Starts Vector with the interpolation of environment variables in the
# configuration files enabled. All arguments are forwarded to Vector unchanged.
#
# Only use this script in a controlled environment where the configuration
# files and the environment variables are trusted. Start the `vector` binary
# directly otherwise.

set -euo pipefail

# Vector disabled the interpolation of environment variables in configuration
# files by default and considers it dangerous because it allows a configuration
# file to read arbitrary environment variables, like secrets which were meant
# for another process. The Stackable Data Platform relies on this interpolation
# to inject deployment-specific values into the Vector configuration, like log
# directories and file names, log levels, information about the role group the
# pod belongs to, and the address of the Vector aggregator. It also generates
# the configuration files itself, so the option can safely be enabled here.
exec /usr/local/bin/vector --dangerously-allow-env-var-interpolation "$@"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

What just crossed my mind: I think we let config-utils run on most config files already (some we didn't get to yet). It offers a consistent way of injection env vars and file contents across the platform.
Could we use that instead of using --dangerously-allow-env-var-interpolation?

@siegfriedweber siegfriedweber Oct 15, 2026 •

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

We need to add YAML support to config-utils. Ideally, config-utils would parse the file first and only then interpolate the environment variables, so that environment variable values cannot alter the document structure (see also vectordotdev/vector#26475).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Yeah, YAML sadly looks like more effort than XML and properties

2 changes: 1 addition & 1 deletion vector/stackable/patches/0.58.0/patchable.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
mirror = "https://github.com/stackabletech/vector.git"
base = "cf8de830c6060629092397fd2334fc0f0219363a"
base = "2bcad9bbb84e201dcfd58c22b1f779290101b728"
Loading