Fixes #26775: stabilize QuickStart OIDC_CUSTOM_PARAMS default#27360
Fixes #26775: stabilize QuickStart OIDC_CUSTOM_PARAMS default#27360harishkotra wants to merge 2 commits intoopen-metadata:mainfrom
Conversation
|
Hi there 👋 Thanks for your contribution! The OpenMetadata team will review the PR shortly! Once it has been labeled as Let us know if you need any help! |
There was a problem hiding this comment.
Pull request overview
Adjusts QuickStart Docker Compose configuration to avoid fragile ${VAR:-{}} interpolation for OIDC_CUSTOM_PARAMS, aiming to prevent malformed YAML in some Compose runtimes.
Changes:
- Replaced
${OIDC_CUSTOM_PARAMS:-{}}with a literal"{}"value forOIDC_CUSTOM_PARAMSin QuickStart compose files. - Applied the change to both MySQL and Postgres QuickStart variants (and in both the migration and server services within each file).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| docker/docker-compose-quickstart/docker-compose.yml | Sets OIDC_CUSTOM_PARAMS to a literal default in QuickStart services to avoid Compose interpolation edge cases. |
| docker/docker-compose-quickstart/docker-compose-postgres.yml | Mirrors the same OIDC_CUSTOM_PARAMS defaulting approach for the Postgres QuickStart compose. |
| OIDC_TENANT: ${OIDC_TENANT:-""} | ||
| OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""} | ||
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}} | ||
| OIDC_CUSTOM_PARAMS: "{}" |
There was a problem hiding this comment.
Hardcoding OIDC_CUSTOM_PARAMS to {} here removes the ability to override custom OIDC params via an environment variable (unlike the other OIDC settings in this block). To keep the QuickStart default stable without Compose’s ${...:-{}} parsing issues, consider using an overrideable form that avoids braces in the default (e.g., defaulting to empty and letting conf/openmetadata.yaml handle absence) or otherwise preserving ${OIDC_CUSTOM_PARAMS...} behavior.
| OIDC_CUSTOM_PARAMS: "{}" | |
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""} |
| OIDC_TENANT: ${OIDC_TENANT:-""} | ||
| OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""} | ||
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}} | ||
| OIDC_CUSTOM_PARAMS: "{}" |
There was a problem hiding this comment.
Same as above: OIDC_CUSTOM_PARAMS: "{}" is no longer overrideable from the host environment, which is a behavior change for QuickStart users that need to pass provider-specific OIDC parameters. Prefer an interpolation form that remains overrideable while avoiding the ${...:-{}} brace-parsing edge case.
| OIDC_CUSTOM_PARAMS: "{}" | |
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-"{}"} |
| OIDC_TENANT: ${OIDC_TENANT:-""} | ||
| OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""} | ||
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}} | ||
| OIDC_CUSTOM_PARAMS: "{}" |
There was a problem hiding this comment.
Hardcoding OIDC_CUSTOM_PARAMS to {} here prevents overriding custom OIDC parameters via environment variables. It would be better to keep an overrideable ${OIDC_CUSTOM_PARAMS...} pattern (using a default that doesn’t contain braces, to avoid Compose interpolation issues) so QuickStart remains configurable without editing the compose file.
| OIDC_CUSTOM_PARAMS: "{}" | |
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""} |
| OIDC_TENANT: ${OIDC_TENANT:-""} | ||
| OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""} | ||
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}} | ||
| OIDC_CUSTOM_PARAMS: "{}" |
There was a problem hiding this comment.
Same issue in this block: OIDC_CUSTOM_PARAMS is now fixed to {} and can’t be customized via env var for the server container. Please preserve an overrideable ${OIDC_CUSTOM_PARAMS...} while avoiding brace characters in the default value to sidestep the Compose parsing bug.
| OIDC_CUSTOM_PARAMS: "{}" | |
| OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""} |
|
Hi there 👋 Thanks for your contribution! The OpenMetadata team will review the PR shortly! Once it has been labeled as Let us know if you need any help! |
Code Review ✅ Approved 1 resolved / 1 findingsRefactors OIDC_CUSTOM_PARAMS to allow environment variable overrides, resolving the previous hardcoding issue. No further issues found. ✅ 1 resolved✅ Bug: Hardcoded value removes env-var override for OIDC_CUSTOM_PARAMS
OptionsDisplay: compact → Showing less information. Comment with these commands to change:
Was this helpful? React with 👍 / 👎 | Gitar |
|
Hi @harishkotra , thanks for your pr here! We had a PR submitted for this already here. Please make sure that you are assigned an issue and that there is not a PR out for it already before submitting something. We will reopen this PR if necessary. |
Summary
OIDC_CUSTOM_PARAMSin QuickStart files"{}"to avoid malformed YAML in certain Compose runtimesFiles changed
docker/docker-compose-quickstart/docker-compose.ymldocker/docker-compose-quickstart/docker-compose-postgres.ymlWhy
Some environments parse
${OIDC_CUSTOM_PARAMS:-{}}inconsistently and can produce invalid output (customParams: {}}). Using a literal string default is stable and keeps QuickStart behavior predictable.