Skip to content

feat: add promptql-shelf helm chart#55

Open
rohankmr414 wants to merge 5 commits into
mainfrom
rohan/plat-1391-add-promptql-shelf-helm-chart-to-ddn-helm-charts
Open

feat: add promptql-shelf helm chart#55
rohankmr414 wants to merge 5 commits into
mainfrom
rohan/plat-1391-add-promptql-shelf-helm-chart-to-ddn-helm-charts

Conversation

@rohankmr414
Copy link
Copy Markdown
Member

This pull request introduces a new Helm chart for promptql-shelf, providing Kubernetes deployment automation for Lakekeeper and Trino, including their configuration, secrets, and bootstrap/migration jobs. The chart is highly configurable, supporting multiple cloud providers (AWS, GCP, Azure) and external database integration. Key highlights include templated resource definitions, cloud-aware configuration, and pre/post-install hooks for smooth initialization.

Helm Chart Structure and Core Resources:

  • Added a new Chart.yaml defining the promptql-shelf chart, its dependencies (lakekeeper and trino), and metadata.
  • Created a .helmignore file to exclude unnecessary files from the chart package, improving cleanliness and security.
  • Introduced a comprehensive values.yaml with configuration options for Lakekeeper, Trino, cloud providers, external databases, and resource limits.

Lakekeeper Initialization and Security:

  • Added a pre-install migration job (lakekeeper-preinstall-migration.yaml) to ensure the Lakekeeper Postgres database exists before installation.
  • Added a post-install bootstrap job (lakekeeper-bootstrap.yaml) that automates Lakekeeper system bootstrapping and warehouse provisioning for AWS, GCP, or Azure, based on configuration.
  • Created a secret resource (lakekeeper-pg-encryption-secret.yaml) for securely storing the Lakekeeper Postgres encryption key, with support for conditional creation.

Trino Catalog Integration:

  • Added a ConfigMap (trino-catalog-configmap.yaml) that configures Trino catalogs for Iceberg, TPC-DS, and TPC-H, with cloud-specific settings for S3, GCS, or Azure.

This helm chart will deploy lakekeeper and trino and run a bootstrap script to provision an iceberg warehouse
Copy link
Copy Markdown

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

This PR introduces a new Helm chart (promptql-shelf) that orchestrates the deployment of Lakekeeper and Trino on Kubernetes, providing automated setup for Iceberg-based data lakehouse infrastructure. The chart supports multiple cloud providers (AWS, GCP, Azure) and includes initialization jobs for database creation and warehouse provisioning.

Changes:

  • Created a new Helm chart with dependencies on Lakekeeper and Trino charts
  • Added pre-install and post-install jobs for automated database setup and warehouse bootstrapping
  • Implemented cloud-provider-specific configurations for storage and catalog integration

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
charts/promptql-shelf/Chart.yaml Defines the chart metadata and declares dependencies on common, lakekeeper, and trino charts
charts/promptql-shelf/.helmignore Specifies files to exclude from the chart package
charts/promptql-shelf/values.yaml Provides comprehensive configuration options for Lakekeeper, Trino, cloud providers, and resources
charts/promptql-shelf/templates/lakekeeper-pg-encryption-secret.yaml Creates a Kubernetes secret for the Postgres encryption key
charts/promptql-shelf/templates/lakekeeper-preinstall-migration.yaml Pre-install job that ensures the Lakekeeper database exists before deployment
charts/promptql-shelf/templates/lakekeeper-bootstrap.yaml Post-install job that bootstraps Lakekeeper and provisions cloud-specific warehouses
charts/promptql-shelf/templates/trino-catalog-configmap.yaml Configures Trino catalog settings for Iceberg, TPC-DS, and TPC-H with cloud-specific options

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread charts/promptql-shelf/values.yaml Outdated
Comment thread charts/promptql-shelf/templates/lakekeeper-bootstrap.yaml Outdated
Comment thread charts/promptql-shelf/templates/lakekeeper-bootstrap.yaml Outdated
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.

2 participants