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
3 changes: 3 additions & 0 deletions .trivyignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@ CVE-2026-41568

# go.etcd.io/bbolt v1.4.3 dep, no fix available
CVE-2026-33817

# golang.org/x/crypto/openpgp unmaintained, no fix (indirect, unreachable)
GO-2026-5932
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ Please choose versions by [Semantic Versioning](http://semver.org/).
* MINOR version when you add functionality in a backwards-compatible manner, and
* PATCH version when you make backwards-compatible bug fixes.

## Unreleased

- helm: when `executor.kafkaUser.enabled`, pass the executor's own client-cert + CA secret names to the executor as `JOB_KAFKA_CLIENT_CERT_SECRET` / `JOB_KAFKA_CA_CERT_SECRET` env, so it mounts mTLS Kafka certs into the per-task agent Jobs it spawns (agent-task-executor ≥ v0.4.0). Fixes spawned agent Jobs (pr-reviewer, github-releaser) crashing on `open /client-cert/file: no such file` against mTLS Kafka. Default off (`kafkaUser` disabled) → no env, spawned Jobs unchanged. Chart 0.4.1 → 0.5.0.
- chore: bump Go 1.26.4 → 1.26.5 to clear stdlib advisory GO-2026-5856 (blocks precommit/CI).

## v0.76.1

- helm: harden mTLS cert volume `defaultMode` `420` (0644) → `288` (0440) — drops world-read on the mounted client key while keeping group-read so a non-root pod (`runAsUser`+`fsGroup`) can still read it (`0400` would deny it). Chart 0.4.0 → 0.4.1. Matches the `bborbe/maintainer` chart fix.
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module github.com/bborbe/agent

go 1.26.4
go 1.26.5

require (
github.com/bborbe/collection v1.20.17
Expand Down
2 changes: 1 addition & 1 deletion helm/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: agent
description: bborbe agent framework — event-driven, Kafka-based, K8s-native task platform (controller, executor, and example agents)
type: application
# Chart version — bumped on chart changes, independent of appVersion.
version: 0.4.1
version: 0.5.0
# Default image tag for the framework components when values don't override.
appVersion: "0.3.1"
home: https://github.com/bborbe/agent
Expand Down
12 changes: 12 additions & 0 deletions helm/templates/executor-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,18 @@ spec:
valueFrom:
fieldRef:
fieldPath: metadata.namespace
{{- if .Values.executor.kafkaUser.enabled }}
{{- $ku := .Values.executor.kafkaUser }}
{{- $userName := $ku.userName | default (printf "%s-agent-task-executor" (include "agent.namespace" .)) }}
# mTLS Kafka: the spawned agent Jobs also connect Kafka, so hand the
# executor its own client-cert + CA secret names to mount into each Job
# (agent-task-executor >= v0.4.0 JOB_KAFKA_* support). Empty when kafkaUser
# is disabled → plaintext, spawned Jobs unchanged.
- name: JOB_KAFKA_CLIENT_CERT_SECRET
value: {{ $ku.clientSecret | default $userName | quote }}
- name: JOB_KAFKA_CA_CERT_SECRET
value: {{ $ku.caCertSecret | quote }}
{{- end }}
ports:
- containerPort: 9090
name: http
Expand Down