README Improvement Proposal: Prevent Silent First-Time Failures
Summary
The current README does not prominently warn new users about two non-obvious issues that frequently cause silent first-time Helm install failures.
These two issues appear to account for a significant share of community reports like: “Why is my Backstage pod crash-looping right after install?”
Issue 1: Demo image is not production-ready and fails without required environment/config setup
The quickstart path references the demo image (backstage/backstage).
That image requires additional runtime configuration (for example database and app config).
Without that configuration, the pod can start and then immediately exit with a non-descriptive failure.
Minimal reproducible example
helm repo add backstage https://backstage.github.io/charts
helm repo update
helm install my-backstage backstage/backstage
Result: pod enters CrashLoopBackOff.
kubectl logs shows application startup failing due to missing/invalid database configuration.
Suggested README improvement
Add a prominent warning near the top of the README:
⚠️ The demo image requires additional configuration and is not intended for production out of the box.
You must supply a valid app-config and database credentials.
See the Backstage getting started docs before proceeding: https://backstage.io/docs/getting-started/
Issue 2: Required values must be nested under backstage.backstage., not backstage.
The chart uses a double-nested values structure.
Backstage application config must go under backstage.backstage..
If values are placed under backstage. instead, Helm still installs successfully, but runtime config is silently ignored.
Minimal reproducible example
Wrong (values silently ignored):
backstage:
appConfig:
app:
baseUrl: https://my-backstage.example.com
Correct:
backstage:
backstage:
appConfig:
app:
baseUrl: https://my-backstage.example.com
Both install without Helm errors. Only the second structure applies config to the Backstage app.
Suggested README improvement
Add a clear note in the Configuration section:
ℹ️ Values nesting: Backstage application config belongs under backstage.backstage.* (double nested).
Values placed at backstage.* apply to the wrapper chart and may not configure the Backstage application itself.
Context
I documented both issues while writing a hands-on Backstage deployment guide:
https://dev.to/sodiqjimoh/nine-ways-backstage-breaks-before-your-developer-portal-works-4eo1
I am happy to submit a README PR if maintainers confirm this approach.
README Improvement Proposal: Prevent Silent First-Time Failures
Summary
The current README does not prominently warn new users about two non-obvious issues that frequently cause silent first-time Helm install failures.
These two issues appear to account for a significant share of community reports like: “Why is my Backstage pod crash-looping right after install?”
Issue 1: Demo image is not production-ready and fails without required environment/config setup
The quickstart path references the demo image (backstage/backstage).
That image requires additional runtime configuration (for example database and app config).
Without that configuration, the pod can start and then immediately exit with a non-descriptive failure.
Minimal reproducible example
Result: pod enters CrashLoopBackOff.
kubectl logs shows application startup failing due to missing/invalid database configuration.
Suggested README improvement
Add a prominent warning near the top of the README:
Issue 2: Required values must be nested under backstage.backstage., not backstage.
The chart uses a double-nested values structure.
Backstage application config must go under backstage.backstage..
If values are placed under backstage. instead, Helm still installs successfully, but runtime config is silently ignored.
Minimal reproducible example
Wrong (values silently ignored):
Correct:
Both install without Helm errors. Only the second structure applies config to the Backstage app.
Suggested README improvement
Add a clear note in the Configuration section:
Context
I documented both issues while writing a hands-on Backstage deployment guide:
https://dev.to/sodiqjimoh/nine-ways-backstage-breaks-before-your-developer-portal-works-4eo1
I am happy to submit a README PR if maintainers confirm this approach.