From 5da4d1c11e61ad675158604b6ef27f4c04729eb1 Mon Sep 17 00:00:00 2001 From: Matias Date: Tue, 21 Jul 2026 14:03:09 -0300 Subject: [PATCH 1/2] feat(agent): expose initContainers, volumes and volumeMounts passthrough MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The underlying Helm chart already supports initContainers/volumes/volumeMounts (e.g. the githubTokenInit pattern), but this module rendered a fixed values.yaml with no way to reach them. This blocks any sidecar/init-container use case that needs to run before the agent starts, such as installing a kubelogin exec plugin wrapper for AAD/OIDC-enabled Kubernetes clusters — currently the only way to do that is a manual kubectl patch that gets wiped on every helm upgrade. --- nullplatform/agent/README.md | 3 +++ nullplatform/agent/locals.tf | 3 +++ .../nullplatform_agent_values.tmpl.yaml | 15 +++++++++++++ nullplatform/agent/variables.tf | 21 +++++++++++++++++++ 4 files changed, 42 insertions(+) diff --git a/nullplatform/agent/README.md b/nullplatform/agent/README.md index dfe1afb9..be6a3b2b 100644 --- a/nullplatform/agent/README.md +++ b/nullplatform/agent/README.md @@ -156,6 +156,7 @@ resource "example_resource" "this" { | [image\_pull\_secrets](#input\_image\_pull\_secrets) | Image pull secrets configuration | `string` | `""` | no | | [image\_repository](#input\_image\_repository) | Container image repository for the agent. Defaults to the official nullplatform image. | `string` | `""` | no | | [image\_tag](#input\_image\_tag) | Image tag for the agent container image | `string` | n/a | yes | +| [init\_containers](#input\_init\_containers) | Additional init containers to run before the main agent container (raw Kubernetes container spec, passed through to the Helm chart's initContainers value) | `list(any)` | `[]` | no | | [init\_scripts](#input\_init\_scripts) | List of initialization scripts to execute during agent startup | `list(string)` | `[]` | no | | [initial\_ingress\_path](#input\_initial\_ingress\_path) | Defines the initial ingress path used when deploying the application for the first time. | `string` | `""` | no | | [namespace](#input\_namespace) | Kubernetes namespace where the nullplatform agent will run | `string` | `"nullplatform-tools"` | no | @@ -170,6 +171,8 @@ resource "example_resource" "this" { | [service\_template](#input\_service\_template) | Specifies the name or reference of the scope service template to be used for deployment. | `string` | `""` | no | | [tags\_selectors](#input\_tags\_selectors) | Map of tags used to select and filter channels and agents | `map(string)` | n/a | yes | | [use\_account\_slug](#input\_use\_account\_slug) | Flag to determine whether to use account slug in resource naming | `string` | `""` | no | +| [volume\_mounts](#input\_volume\_mounts) | Additional volumeMounts to add to the main agent container (raw Kubernetes volumeMount spec, passed through to the Helm chart's volumeMounts value) | `list(any)` | `[]` | no | +| [volumes](#input\_volumes) | Additional volumes to add to the agent pod (raw Kubernetes volume spec, passed through to the Helm chart's volumes value) | `list(any)` | `[]` | no |