Skip to content

Fixes #26775: stabilize QuickStart OIDC_CUSTOM_PARAMS default#27360

Closed
harishkotra wants to merge 2 commits intoopen-metadata:mainfrom
harishkotra:fix/quickstart-oidc-default
Closed

Fixes #26775: stabilize QuickStart OIDC_CUSTOM_PARAMS default#27360
harishkotra wants to merge 2 commits intoopen-metadata:mainfrom
harishkotra:fix/quickstart-oidc-default

Conversation

@harishkotra
Copy link
Copy Markdown
Contributor

Summary

  • replace fragile Compose interpolation default for OIDC_CUSTOM_PARAMS in QuickStart files
  • set literal JSON default to "{}" to avoid malformed YAML in certain Compose runtimes

Files changed

  • docker/docker-compose-quickstart/docker-compose.yml
  • docker/docker-compose-quickstart/docker-compose-postgres.yml

Why

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.

Copilot AI review requested due to automatic review settings April 14, 2026 14:25
@github-actions
Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

Comment thread docker/docker-compose-quickstart/docker-compose.yml Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 for OIDC_CUSTOM_PARAMS in 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: "{}"
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Suggested change
OIDC_CUSTOM_PARAMS: "{}"
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""}

Copilot uses AI. Check for mistakes.
OIDC_TENANT: ${OIDC_TENANT:-""}
OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""}
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}}
OIDC_CUSTOM_PARAMS: "{}"
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Suggested change
OIDC_CUSTOM_PARAMS: "{}"
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-"{}"}

Copilot uses AI. Check for mistakes.
OIDC_TENANT: ${OIDC_TENANT:-""}
OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""}
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}}
OIDC_CUSTOM_PARAMS: "{}"
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Suggested change
OIDC_CUSTOM_PARAMS: "{}"
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""}

Copilot uses AI. Check for mistakes.
OIDC_TENANT: ${OIDC_TENANT:-""}
OIDC_MAX_CLOCK_SKEW: ${OIDC_MAX_CLOCK_SKEW:-""}
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-{}}
OIDC_CUSTOM_PARAMS: "{}"
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Suggested change
OIDC_CUSTOM_PARAMS: "{}"
OIDC_CUSTOM_PARAMS: ${OIDC_CUSTOM_PARAMS:-""}

Copilot uses AI. Check for mistakes.
@github-actions
Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

@gitar-bot
Copy link
Copy Markdown

gitar-bot Bot commented Apr 14, 2026

Code Review ✅ Approved 1 resolved / 1 findings

Refactors 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

📄 docker/docker-compose-quickstart/docker-compose.yml:109 📄 docker/docker-compose-quickstart/docker-compose.yml:330 📄 docker/docker-compose-quickstart/docker-compose-postgres.yml:111 📄 docker/docker-compose-quickstart/docker-compose-postgres.yml:332
The old syntax ${OIDC_CUSTOM_PARAMS:-{}} allowed users to set a custom OIDC_CUSTOM_PARAMS environment variable (e.g. in an .env file) to pass additional OIDC parameters. The new literal "{}" ignores any user-supplied value entirely, which is a silent behavioural regression for anyone who was relying on this override.

The interpolation bug is real, but the fix should preserve the override capability. Use a quoted default inside the Compose variable substitution instead of dropping it.

Options

Display: compact → Showing less information.

Comment with these commands to change:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

@PubChimps
Copy link
Copy Markdown
Contributor

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.

@PubChimps PubChimps closed this Apr 16, 2026
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.

3 participants