Skip to content

Conversation

@dheerajrampally-webflow
Copy link

@dheerajrampally-webflow dheerajrampally-webflow commented Jan 26, 2026

adding the steps for k8s local dev

Describe your changes:

Add a read me for the steps pertaining to running open metadata in local environment

Type of change:

  • Bug fix
  • Improvement
  • New feature
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation

Summary by Gitar

  • New documentation:
    • K8S_LOCAL_SETUP.md (353 lines) guides developers through Docker Desktop Kubernetes setup with PostgreSQL and OpenSearch
  • Setup alternatives:
    • Kubernetes-native pipeline client (recommended) and Airflow-based deployment options documented
  • Troubleshooting resources:
    • Common issues, debugging commands, and cleanup procedures for local development environment

This will update automatically on new commits.


@github-actions
Copy link
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

gitar-bot bot commented Jan 26, 2026

Code Review ⚠️ Changes requested 0 resolved / 3 findings

Documentation has useful content but contains user-specific hardcoded paths and a namespace mismatch that will cause setup failures for other developers.

⚠️ Quality: Hardcoded user-specific paths won't work for other users

📄 K8S_LOCAL_SETUP.md:110 📄 K8S_LOCAL_SETUP.md:126

The helm install commands contain hardcoded paths like /Users/dheerajrampally/Projects/OpenMetadata/... which are specific to the author's machine and will not work for other developers following this guide.

Impact: Any developer following this documentation will encounter path errors and confusion.

Suggested fix: Replace user-specific absolute paths with relative paths or environment variable placeholders:

# Option A: Use relative path (if running from repo root)
helm install openmetadata . \
  --values ../../docker/development/helm/values-k8s-test.yaml \
  ...

# Option B: Use placeholder with explanation
helm install openmetadata . \
  --values $OPENMETADATA_REPO/docker/development/helm/values-k8s-test.yaml \
  ...
# Where $OPENMETADATA_REPO is the path to your cloned OpenMetadata repository
⚠️ Bug: Secrets created in wrong namespace, cleanup will fail

📄 K8S_LOCAL_SETUP.md:87 📄 K8S_LOCAL_SETUP.md:90 📄 K8S_LOCAL_SETUP.md:305

The secrets are created in the default namespace (no -n flag specified), but the Helm deployment is in the openmetadata namespace. This causes two issues:

  1. Helm deployment may fail if it expects secrets in the openmetadata namespace
  2. Cleanup instructions are incorrect - kubectl delete namespace openmetadata won't remove secrets from the default namespace

Impact: Users may have leftover secrets in the default namespace after cleanup, and the deployment may not find the required secrets.

Suggested fix: Create secrets in the same namespace as the deployment:

# Create namespace first if not using --create-namespace in helm
kubectl create namespace openmetadata

# Create secrets in the openmetadata namespace
kubectl create secret generic postgres-secrets \
  --from-literal=openmetadata-postgres-password=openmetadata_password \
  -n openmetadata

kubectl create secret generic airflow-secrets \
  --from-literal=openmetadata-airflow-password=admin \
  -n openmetadata

And update cleanup to be explicit if secrets remain in default namespace.

💡 Quality: Inconsistent paths in Quick Reference section

📄 K8S_LOCAL_SETUP.md:325

The Quick Reference section uses inconsistent path patterns:

  • Helm chart path: ~/Projects/openmetadata-helm-charts/charts/openmetadata (absolute with ~)
  • Values file path: docker/development/helm/values-k8s-test.yaml (relative path)

This assumes a specific directory structure that wasn't established earlier in the document.

Suggested fix: Use consistent path references and add a note about expected working directory:

# Assuming you're in the OpenMetadata repository root
# and helm charts are cloned to ~/openmetadata-helm-charts
cd /path/to/OpenMetadata  # your OpenMetadata repo clone

helm install openmetadata path/to/openmetadata-helm-charts/charts/openmetadata \
  --values docker/development/helm/values-k8s-test.yaml \
  ...
Options

Auto-apply is off → Gitar will not commit updates to this branch.
Display: compact → Showing less information.

Comment with these commands to change:

Auto-apply Compact
gitar auto-apply:on         
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

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