Skip to content

Set CA_CERT_PATH only when an object storage CA cert is provided - #1325

Merged
ArnobKumarSaha merged 1 commit into
masterfrom
arnob-objstore-ca
Aug 21, 2026
Merged

Set CA_CERT_PATH only when an object storage CA cert is provided#1325
ArnobKumarSaha merged 1 commit into
masterfrom
arnob-objstore-ca

Conversation

@ArnobKumarSaha

@ArnobKumarSaha ArnobKumarSaha commented Aug 21, 2026

Copy link
Copy Markdown
Member

CA_CERT_PATH was emitted unconditionally in the platform config, pointing b3 at /data/credentials/ca.crt whether or not objstore.s3.CA_CERT_DATA was ever set.

That is harmless when the file is absent, but not when it exists and is empty — which is the case on any installation that passed through charts v2026.5–v2026.6. Commit 88effb3 made objstore-cred.yaml always render ca.crt: "", writing an empty key into the secret. 802ccc5 restored the with guard, so the key left the manifest, but Helm cannot delete it: the secret's stored last-applied-configuration is from v2026.4.30 and never contained ca.crt, so it was never in the removal set. The empty key is orphaned in the live object.

b3 then reads a zero-byte file into a non-nil slice and blobfs rejects every bucket operation with failed to parse CA certificate, breaking avatars, attachments, LFS and client-org deletion.

objstore-cred.yaml needs no change — its guard is already correct as of 802ccc5, which is an ancestor of v2026.7.10. Not emitting the path is what makes the orphaned key inert.

Verified with helm template against a live HelmRelease's values:

  • no CA_CERT_DATA → key absent
  • CA_CERT_DATA set → CA_CERT_PATH = /data/credentials/ca.crt
  • provider=gcs, s3=null → key absent, no nil dereference

Companion fix: appscode-cloud/b3#1619.

The path was emitted unconditionally, pointing the platform at
/data/credentials/ca.crt even when no CA_CERT_DATA was configured. Charts
between v2026.5 and v2026.6 always rendered a ca.crt key in the objstore
secret, and Helm cannot drop that key on upgrade, so those installations
mount an empty file at that path and every bucket operation fails.

Signed-off-by: Arnob kumar saha <arnob@appscode.com>
@ArnobKumarSaha
ArnobKumarSaha merged commit b1e3a5a into master Aug 21, 2026
6 of 10 checks passed
@ArnobKumarSaha
ArnobKumarSaha deleted the arnob-objstore-ca branch August 21, 2026 12:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant