<@U04S8PLJWMT>, I get error `spec.containers{airby...
# replication-ask-ai
d
@kapa.ai, I get error
spec.containers{airbyte-bootloader-container}: Error: couldn't find key CONFIG_DATABASE_REPLICA_USER in Secret airbyte/airbyte-config-secrets
in the
airbyte-bootloader
pod when upgrading from 2.0.19 to 2.1.0. I know I can patch the secret like this:
Copy code
kubectl patch secret airbyte-config-secrets -n airbyte-abctl \
  --type merge \
  -p '{"stringData": {"CONFIG_DATABASE_REPLICA_USER": "dummy"}}'
but is there any other ways?
k
I'm sorry, but the knowledge sources do not contain specific information about a
CONFIG_DATABASE_REPLICA_USER
key error when upgrading from Helm chart 2.0.19 to 2.1.0. However, based on a very similar issue documented in the knowledge sources — where
AIRBYTE_DUMMY_SECRET
was missing from
airbyte-config-secrets
— the pattern and fix are the same: the Helm chart expects a key to exist in your
airbyte-config-secrets
Kubernetes secret, and if it doesn't, pods fail to start. [GitHub Issue] You can resolve this by patching the secret to add the missing key:
Copy code
kubectl patch secret airbyte-config-secrets -n airbyte \
  --type merge \
  -p '{"stringData": {"CONFIG_DATABASE_REPLICA_USER": "dummy"}}'
Or by recreating/updating the secret with the key included:
Copy code
kubectl create secret generic airbyte-config-secrets \
  --from-literal=CONFIG_DATABASE_REPLICA_USER='dummy' \
  --namespace airbyte \
  --dry-run=client -o yaml | kubectl apply -f -
It's also worth noting that the 2.1.0 chart has a known issue where duplicate
DATAPLANE_CLIENT_*
keys were reintroduced, so there may be other similar regressions in that release. [GitHub Issue] I'd recommend checking the Airbyte Community Slack or filing a GitHub issue if the problem persists, as this appears to be a chart-level bug introduced in 2.1.0 rather than a configuration error on your end. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, I know this, but can I also somehow include this in the values.yaml ?
k
The knowledge sources do not explicitly mention a
values.yaml
option to set the value of
CONFIG_DATABASE_REPLICA_USER
or to suppress this key lookup. However, based on the pattern documented for the similar
AIRBYTE_DUMMY_SECRET
issue, there is a
global.dummySecretSecretKey
value in
values.yaml
that lets you point to an existing key in your secret rather than requiring a specific key name. [GitHub Issue] There is no documented equivalent for
CONFIG_DATABASE_REPLICA_USER
in the knowledge sources — it's not listed in the Helm chart V2
values.yaml
reference. The knowledge sources only document patching the Kubernetes secret directly as the workaround. For the most accurate answer, I'd recommend: 1. Checking the Helm chart's
values.yaml
defaults directly (e.g., via
helm show values airbyte/airbyte --version 2.1.0
) to see if a corresponding key exists. 2. Filing or checking a GitHub issue, as this appears to be an undocumented requirement introduced in 2.1.0. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, helm show values airbyte/airbyte --version 2.1.0 | grep -i CONFIG_DATABASE_REPLICA_USER || echo "Not found" Not found
k
Based on the output you've shared and the knowledge sources available,
CONFIG_DATABASE_REPLICA_USER
does not appear in the Helm chart's
values.yaml
at all — meaning there is no supported way to configure or suppress this key lookup via
values.yaml
. The knowledge sources do not contain enough information to explain why this key was introduced in 2.1.0 or whether there is any
values.yaml
workaround for it. [GitHub Issue] At this point, the only confirmed workaround is patching the Kubernetes secret directly:
Copy code
kubectl patch secret airbyte-config-secrets -n airbyte \
  --type merge \
  -p '{"stringData": {"CONFIG_DATABASE_REPLICA_USER": "dummy"}}'
I'd strongly recommend opening a GitHub issue against the Airbyte platform repository, as this appears to be an undocumented breaking change in the 2.1.0 chart — similar to the
AIRBYTE_DUMMY_SECRET
issue that was also not documented anywhere. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, isn't there a way to include it in values.yaml without patching the secret?
k
The knowledge sources do not contain enough information to confirm a way to set or inject
CONFIG_DATABASE_REPLICA_USER
directly through
values.yaml
without patching the Kubernetes secret. The only
values.yaml
-based approach documented in the knowledge sources is for a different key — using
global.dummySecretSecretKey
to point to an already-existing key in your secret. [GitHub Issue] This doesn't avoid the need to have the key present in the secret itself. In general, Airbyte's Helm chart design requires sensitive values to be pre-configured in the Kubernetes secret before installation, and
values.yaml
is used to reference keys within that secret — not to define their values. [Preconfiguring Secrets] So unfortunately, based on the available knowledge sources, patching the secret directly remains the only confirmed workaround for this specific key. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, can I use:
Copy code
airbyteBootloader:
  extraEnv:
    - name: CONFIG_DATABASE_REPLICA_USER
      value: "some-plain-text-value"
k
The knowledge sources do confirm that
extraEnv
is a supported way to inject additional environment variables into Airbyte components, including the bootloader. [Helm chart V2 docs] However, the knowledge sources do not explicitly confirm whether setting
CONFIG_DATABASE_REPLICA_USER
via
extraEnv
on the bootloader would override or satisfy the secret key lookup that is causing your error. The error occurs because the chart tries to mount the key from the Kubernetes secret — an
extraEnv
plain-text value may not override that mounted secret reference. That said, it is worth trying:
Copy code
airbyteBootloader:
  extraEnv:
    - name: CONFIG_DATABASE_REPLICA_USER
      value: "some-plain-text-value"
But I cannot confirm with certainty that this will resolve the issue based on the available knowledge sources. If the chart template unconditionally mounts
CONFIG_DATABASE_REPLICA_USER
from
airbyte-config-secrets
regardless of
extraEnv
, the pod will still fail to start. In that case, patching the secret remains the only confirmed workaround. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, what is the difference between global.database.user and global.database.userSecretKey ?
k
Based on the knowledge sources, the difference is: •
global.database.user
— Set the database username directly as a plain-text value in
values.yaml
. •
global.database.userSecretKey
— Instead of a plain-text value, specify the key name within your Kubernetes secret (referenced by
global.database.secretName
) where the username is stored. You should use one or the other, but not both. [Helm chart V2 docs] For example:
Copy code
# Option 1: plain-text directly in values.yaml
global:
  database:
    user: "airbyte"

# Option 2: reference a key inside your Kubernetes secret
global:
  database:
    secretName: "airbyte-config-secrets"
    userSecretKey: "database-user"  # key inside the secret
For production deployments, using
userSecretKey
(referencing a Kubernetes secret) is the recommended approach as it avoids storing credentials in plain text in your
values.yaml
. [External Database] šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, I see in the docs that I should not use both, but what if both user and userSecretKey have the same value?
k
The knowledge sources do not contain enough information to confirm what happens when both
global.database.user
and
global.database.userSecretKey
are set simultaneously, even if they resolve to the same value. The documentation only states to use either one or the other, but not both — it does not describe the behavior when both are set. [Helm chart V2 docs] To know which one takes precedence, you would need to inspect the Helm chart templates directly, for example:
Copy code
helm show templates airbyte/airbyte --version 2.1.0
or check the source at the airbyte-platform GitHub repository. To be safe, I'd recommend sticking to the documented guidance and using only one of the two options. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
d
@kapa.ai, If I want to configure database.replica, how to configure it ?
k
The knowledge sources do not contain enough information about a
global.database.replica
configuration option in Airbyte's Helm chart. This is not documented in any of the available knowledge sources, including the Helm chart V2
values.yaml
reference or the external database integration docs. [External Database] [Helm chart V2 docs] Given that the error you encountered earlier (
couldn't find key CONFIG_DATABASE_REPLICA_USER in Secret
) suggests this is a new and possibly undocumented feature introduced in 2.1.0, I'd recommend: 1. Inspecting the chart templates directly to understand what keys are expected:helm template airbyte/airbyte --version 2.1.0 | grep -i replica 2. Checking the full
values.yaml
for any replica-related keys:helm show values airbyte/airbyte --version 2.1.0 | grep -i replica 3. Checking the airbyte-platform GitHub repository or filing a GitHub issue, as this appears to be an undocumented breaking change in 2.1.0. šŸ‘ 0 button šŸ‘Ž 0 button ā„¹ļø Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.