From a97666174483a351d7015271b86cc47fb844576a Mon Sep 17 00:00:00 2001 From: Marc LeBlanc <7050295+marcleblanc2@users.noreply.github.com> Date: Wed, 21 Oct 2026 15:04:06 -0600 Subject: [PATCH] Add migrator to the outbound HTTP proxy example migrator's drift, upgrade, and downgrade commands call releaseregistry.sourcegraph.com and storage.googleapis.com before touching the databases. Route them through the proxy alongside frontend and worker. --- charts/sourcegraph/CHANGELOG.md | 2 +- .../sourcegraph/examples/outbound-http-proxy/override.yaml | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/charts/sourcegraph/CHANGELOG.md b/charts/sourcegraph/CHANGELOG.md index 6dd54121..11acb065 100644 --- a/charts/sourcegraph/CHANGELOG.md +++ b/charts/sourcegraph/CHANGELOG.md @@ -8,7 +8,7 @@ Use `**BREAKING**:` to denote a breaking change ## Unreleased -- Added an `outbound-http-proxy` example, which routes outbound traffic from frontend and worker through an HTTP proxy with `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` +- Added an `outbound-http-proxy` example, which routes outbound traffic from frontend, worker, and migrator through an HTTP proxy with `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` - Fixed the `codeintel-db` PersistentVolumeClaim being renamed by `codeIntelDB.name`, which left the StatefulSet pointing at a `codeintel-db` claim that no longer existed and stuck the pod in `Pending`. The PVC is now always named `codeintel-db`, matching the other components and the documented behaviour of `*.name`. If you worked around this by creating a `codeintel-db` PVC by hand, label it `app.kubernetes.io/managed-by: Helm` and annotate it with `meta.helm.sh/release-name` and `meta.helm.sh/release-namespace` before upgrading so Helm can adopt it. [#612](https://github.com/sourcegraph/deploy-sourcegraph-helm/issues/612) - Added opt-in Redis config management through `redisCache.config.enabled` and `redisStore.config.enabled` (both default to `false`). Default deployments retain their image configs, custom mounts, authentication, and memory settings. When enabled, the chart mounts `/etc/redis/redis.conf` and supports `existingConfig`, `maxmemory`, `maxmemoryRatio`, `maxmemoryPolicy`, and `additionalConfig`. See [Enabling Redis config management](README.md#enabling-redis-config-management) before opting in, especially when using custom images or Secret-mounted configs. - With Redis config management enabled, the chart sizes `maxmemory` at 75% of `resources.limits.memory` to leave room for overhead; this reduces, but does not eliminate, OOM risk. Ratios must be greater than 0 and less than 1. Auto-sizing is skipped in local development mode or when the limit is absent or unrecognised. At the default 7Gi limit, opting in lowers the effective cap from 6GiB to 5.25GiB: `redis-cache` evicts earlier, but `redis-store` uses `noeviction`, so its write-error ceiling drops too. Set `redisStore.config.maxmemory: 6gb` to keep the old ceiling if the pod has sufficient memory. diff --git a/charts/sourcegraph/examples/outbound-http-proxy/override.yaml b/charts/sourcegraph/examples/outbound-http-proxy/override.yaml index 612846eb..d512ed3c 100644 --- a/charts/sourcegraph/examples/outbound-http-proxy/override.yaml +++ b/charts/sourcegraph/examples/outbound-http-proxy/override.yaml @@ -50,6 +50,13 @@ frontend: # env: # <<: *proxy-env-vars +# The default `up` command makes no outbound connections +# `drift`, `upgrade`, and `downgrade` check releaseregistry.sourcegraph.com for a newer migrator version, +# and storage.googleapis.com for schema descriptions +migrator: + env: + <<: *proxy-env-vars + worker: env: <<: *proxy-env-vars