{"id":51843735,"url":"https://github.com/launchdarkly/ld-relay-helm","last_synced_at":"2026-07-23T09:30:46.257Z","repository":{"id":61451248,"uuid":"523470178","full_name":"launchdarkly/ld-relay-helm","owner":"launchdarkly","description":"A helm chart to ease deployment of the LaunchDarkly Relay Proxy","archived":false,"fork":false,"pushed_at":"2026-07-20T12:43:11.000Z","size":2493,"stargazers_count":8,"open_issues_count":2,"forks_count":19,"subscribers_count":27,"default_branch":"main","last_synced_at":"2026-07-20T14:17:25.269Z","etag":null,"topics":["feature-flags","feature-toggles","helm","helm-chart","launchdarkly","launchdarkly-sdk","launchdarkly-sdk-component","managed-by-terraform","tools"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/launchdarkly.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-08-10T19:21:24.000Z","updated_at":"2026-07-20T12:41:14.000Z","dependencies_parsed_at":"2026-05-06T17:05:51.449Z","dependency_job_id":null,"html_url":"https://github.com/launchdarkly/ld-relay-helm","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/launchdarkly/ld-relay-helm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/launchdarkly%2Fld-relay-helm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/launchdarkly%2Fld-relay-helm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/launchdarkly%2Fld-relay-helm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/launchdarkly%2Fld-relay-helm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/launchdarkly","download_url":"https://codeload.github.com/launchdarkly/ld-relay-helm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/launchdarkly%2Fld-relay-helm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35798804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-23T02:00:06.683Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["feature-flags","feature-toggles","helm","helm-chart","launchdarkly","launchdarkly-sdk","launchdarkly-sdk-component","managed-by-terraform","tools"],"created_at":"2026-07-23T09:30:46.176Z","updated_at":"2026-07-23T09:30:46.243Z","avatar_url":"https://github.com/launchdarkly.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LaunchDarkly Relay Proxy Helm Chart\n\n[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/ld-relay)](https://artifacthub.io/packages/search?repo=ld-relay)\n[![Quality control](https://github.com/launchdarkly/ld-relay-helm/actions/workflows/ci.yml/badge.svg)](https://github.com/launchdarkly/ld-relay-helm/actions/workflows/ci.yml)\n\nA Helm chart to ease deployment of the [LaunchDarkly Relay Proxy](https://github.com/launchdarkly/ld-relay) to Kubernetes (k8s).\n\nBasic [installation](#installation) and [configuration](#configuration-options) information is below.\n\nTo learn more, read the [Getting started](./docs/getting-started.md) guide. For additional examples, read:\n\n- [Offline mode](./docs/examples/offline-mode.md)\n- [Automatic configuration](./docs/examples/automatic-configuration.md)\n\n## LaunchDarkly overview\n\n[LaunchDarkly](https://www.launchdarkly.com) is a feature management platform that serves trillions of feature flags daily to help teams build better software, faster. [Get started](https://docs.launchdarkly.com/docs/getting-started) using LaunchDarkly today!\n\n[![Twitter Follow](https://img.shields.io/twitter/follow/launchdarkly.svg?style=social\u0026label=Follow\u0026maxAge=2592000)](https://twitter.com/intent/follow?screen_name=launchdarkly)\n\n## Installation\n\nThe default configuration is insufficient to have a working instance of the Relay Proxy running. You must minimally provide an environment for the Relay Proxy to connect to, using your LaunchDarkly SDK key for that environment.\n\nTo deploy the Relay Proxy to the Kubernetes cluster using the default configuration and an environment:\n\n```shell\nhelm repo add launchdarkly-ld-relay https://launchdarkly.github.io/ld-relay-helm\nhelm install ld-relay --set relay.environment.LD_ENV_YourEnvironment=your-sdk-key launchdarkly-ld-relay/ld-relay\n```\n\nFor additional configuration, use the [Configuration options](#configuration-options) below.\n\nOCI artifacts of all LaunchDarkly Helm charts are available in [ghcr.io](https://github.com/orgs/launchdarkly/packages?q=helm-charts).\n\n## Configuration options\n\nTo customize this Helm chart, override the configuration options defined in the [values file](https://github.com/launchdarkly/ld-relay-helm/blob/main/values.yaml). The values file contains detailed documentation on each option.\n\nHere's a summary of the available configuration options:\n\n| Key                                           | Type    | Default                                                      | Description                                                                                              |\n| --------------------------------------------- | ------- | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |\n| relay.environment                             | object  | `{}`                                                         | Defines container environment variables to configure the Relay Proxy instance (via ConfigMap)            |\n| relay.environmentVariables                    | array   | `[]`                                                         | Defines container environment variables to configure the Relay Proxy instance (via container spec)       |\n| relay.envFromSecret                           | string  | `null`                                                       | Defines container environment variables to configure the Relay Proxy instance (via existing k8s secrets) |\n| relay.secrets                                 | array   | `[]`                                                         | Defines container environment variables or volumes populated from k8s secrets                            |\n| relay.volume                                  | object  | `{}`                                                         | Enables offline mode or references an existing config file from a defined volume                         |\n| relay.livenessProbe                           | object  | `{httpGet: { port: \"api\",  path: \"/status\" }}`               | Defines the liveness probe for the relay container                                                       |\n| relay.readinessProbe                          | object  | `{httpGet: { port: \"api\",  path: \"/status\" }}`               | Defines the readiness probe for the relay container                                                      |\n| relay.startupProbe                            | object  | `null`                                                       | Defines the startup probe for the relay  container                                                     |\n| relay.lifecycle                               | object  | `{}`                                                         | Defines the lifecycle hooks for the relay container                                                      |\n| replicaCount                                  | integer | `1`                                                          | Number of replicas of the relay pod                                                                      |\n| image.repository                              | string  | `launchdarkly/ld-relay`                                      | ld-relay image repository                                                                                |\n| image.pullPolicy                              | string  | `IfNotPresent`                                               | ld-relay image pull policy                                                                               |\n| image.tag                                     | string  | `\"\"`                                                         | Overrides the image tag whose default is the chart appVersion                                            |\n| imagePullSecrets                              | array   | `[]`                                                         | Specifies docker registry secret names as an array                                                       |\n| nameOverride                                  | string  | `\"\"`                                                         | Partially overrides the fullname template with a string (includes release name)                          |\n| fullnameOverride                              | string  | `\"\"`                                                         | Fully overrides the fullname template with a string                                                      |\n| namespaceOverride                             | string  | `\"\"`                                                         | Sets `metadata.namespace` on namespaced resources; defaults to the release namespace. Refer to `values.yaml` for when to use it |\n| commonLabels                                  | object  | `{}`                                                         | Specifies labels to be applied to all created resources                                                  |\n| serviceAccount.create                         | bool    | `true`                                                       | Specifies whether a service account should be created                                                    |\n| serviceAccount.annotations                    | object  | `{}`                                                         | Annotations to add to the service account                                                                |\n| serviceAccount.name                           | string  | `\"\"`                                                         | The name of the service account                                                                          |\n| pod.annotations                               | object  | `{}`                                                         | Pod annotations                                                                                          |\n| pod.labels                                    | object  | `{}`                                                         | Pod labels                                                                                               |\n| pod.securityContext                           | object  | `{}`                                                         | Pod security context                                                                                     |\n| terminationGracePeriodSeconds                 | string  | `null`                                                       | Pod terminationGracePeriodSeconds                                                                        |\n| securityContext                               | object  | `{}`                                                         | Container security context                                                                               |\n| service.type                                  | string  | `ClusterIP`                                                  | Kubernetes service type                                                                                  |\n| service.annotations                           | object  | `{}`                                                         | Annotations to add to the service                                                                        |\n| service.ports                                 | array   | `[{port: 8030, targetPort: 8030, protocol: TCP, name: api}]` | Service port mapping. Must include one port named `api`.                                                 |\n| ingress.enabled                               | bool    | `false`                                                      | Enables ingress controller                                                                               |\n| ingress.className                             | string  | `\"\"`                                                         | Ingress class name                                                                                       |\n| ingress.annotations                           | object  | `{}`                                                         | Ingress annotations                                                                                      |\n| ingress.hosts                                 | array   | `[]`                                                         | List of host rules                                                                                       |\n| ingress.tls                                   | array   | `[]`                                                         | Ingress TLS configuration                                                                                |\n| httpRoute.enabled                             | bool    | `false`                                                      | Enables Gateway API HTTPRoute                                                                            |\n| httpRoute.annotations                         | object  | `{}`                                                         | HTTPRoute annotations                                                                                    |\n| httpRoute.parentRefs                          | array   | `[]`                                                         | List of Gateway parent references this route attaches to (full ParentReference schema; rendered as-is)   |\n| httpRoute.hostnames                           | array   | `[]`                                                         | List of hostnames this route matches                                                                     |\n| httpRoute.rules                               | array   | `[]`                                                         | List of routing rules; see the fields below                                                              |\n| httpRoute.rules[].matches                     | array   | `[]`                                                         | Full Gateway API match schema (path, headers, method, queryParams); rendered as-is                       |\n| httpRoute.rules[].filters                     | array   | `[]`                                                         | Full Gateway API filter schema (header modifiers, redirect, URL rewrite, mirror); rendered as-is         |\n| httpRoute.rules[].timeouts                    | object  | `{}`                                                         | Gateway API timeouts (request, backendRequest); rendered as-is                                           |\n| httpRoute.rules[].port                        | integer | `nil`                                                        | Convenience: routes the rule's backend to the chart's Service on this port                               |\n| httpRoute.rules[].backendRefs                 | array   | `[]`                                                         | Explicit backends (weighting, mirroring, external); overrides the `port` convenience when set            |\n| resources                                     | object  | `{}`                                                         | Resource requirements for the relay container                                                            |\n| autoscaling.enabled                           | bool    | `false`                                                      | Enables HorizontalPodAutoscaler                                                                          |\n| autoscaling.minReplicas                       | integer | `1`                                                          | Sets minimum number of running replicas                                                                  |\n| autoscaling.maxReplicas                       | integer | `100`                                                        | Sets maximum number of running replicas                                                                  |\n| autoscaling.targetCPUUtilizationPercentage    | integer | `80`                                                         | Configures CPU as an average utilization metrics resource                                                |\n| autoscaling.targetMemoryUtilizationPercentage | integer | `80`                                                         | Configures memory as an average utilization metrics resource                                             |\n| autoscaling.behavior                          | object  | `null`                                                       | Optional HPA scale behavior (requires Kubernetes \u003e= 1.18)                                                |\n| deployment.strategy                           | object  | `null`                                                       | Optional rolling update strategy for the deployment                                                      |\n| deployment.revisionHistoryLimit               | integer | `null`                                                       | Optional number of old ReplicaSets to retain for rollback (Kubernetes default `10`)                      |\n| nodeSelector                                  | object  | `{}`                                                         | Selector to target node placement for the relay pod                                                      |\n| tolerations                                   | array   | `[]`                                                         | Specify pod tolerations                                                                                  |\n| affinity                                      | object  | `{}`                                                         | Specify pod affinity                                                                                     |\n| pod.disruptionBudget.enabled                  | boolean | `false`                                                      | Enabled podDisruptionBudget                                                                              |\n| pod.disruptionBudget.minAvailable             | string  | `\"\"`                                                         | Minimum number of pods that are available after eviction as number or percentage                         |\n| pod.disruptionBudget.maxUnavailable           | string  | `\"\"`                                                         | Maximum number of pods that are unavailable after eviction as number or percentage                       |\n| pod.topologySpreadConstraints                 | array   | `[]`                                                         | Specify the topology spread constrait definitions to apply to the relay deployment                       |\n| pod.priorityClassName                         | string  | `\"\"`                                                         | Specify a PriorityClass for the pod                                                                      |\n| pod.dnsPolicy                                 | string  | `\"\"`                                                         | Optional pod DNS policy (Kubernetes default `ClusterFirst`); set to `None` when supplying a custom dnsConfig |\n| pod.dnsConfig                                 | object  | `{}`                                                         | Optional pod DNS configuration (nameservers, searches, options)                                          |\n\n`httpRoute` requires the [Gateway API](https://gateway-api.sigs.k8s.io/) CRDs (`gateway.networking.k8s.io`) to already be installed in the cluster, along with a `Gateway` resource for the route to attach to. Use either `ingress` or `httpRoute`, not both.\n\nFor each rule, set `port` to route to this chart's Service, or set `backendRefs` explicitly. `backendRefs` takes precedence over `port` when both are given, and (unlike `port`) can target any Service, including another namespace. A rule with no `matches` matches every request and publishes the entire relay -- including admin/metrics endpoints -- on the route's hostname, so add explicit `matches` unless a catch-all is intended.\n\n## Learn more\n\nRead our [documentation](https://docs.launchdarkly.com) for in-depth instructions on configuring and using LaunchDarkly. To learn more about the Relay Proxy specifically, read the [complete reference guide for the Relay Proxy](https://docs.launchdarkly.com/home/relay-proxy).\n\n## Contributing\n\nWe encourage pull requests and other contributions from the community. Check out our [contributing guidelines](CONTRIBUTING.md) for instructions on how to contribute to this repository.\n\n## About LaunchDarkly\n\n- LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:\n  - Roll out a new feature to a subset of your users (like a group of users who opt-in to a beta tester group), gathering feedback and bug reports from real-world use cases.\n  - Gradually roll out a feature to an increasing percentage of users, and track the effect that the feature has on key metrics (for instance, how likely is a user to complete a purchase if they have feature A versus feature B?).\n  - Turn off a feature that you realize is causing performance problems in production, without needing to re-deploy, or even restart the application with a changed configuration file.\n  - Grant access to certain features based on user attributes, like payment plan (eg: users on the ‘gold’ plan get access to more features than users in the ‘silver’ plan). Disable parts of your application to facilitate maintenance, without taking everything offline.\n- LaunchDarkly provides feature flag SDKs for a wide variety of languages and technologies. Read [our documentation](https://docs.launchdarkly.com/docs) for a complete list.\n- Explore LaunchDarkly\n  - [launchdarkly.com](https://www.launchdarkly.com/ \"LaunchDarkly Main Website\") for more information\n  - [docs.launchdarkly.com](https://docs.launchdarkly.com/ \"LaunchDarkly Documentation\") for our documentation and SDK reference guides\n  - [apidocs.launchdarkly.com](https://apidocs.launchdarkly.com/ \"LaunchDarkly API Documentation\") for our API documentation\n  - [launchdarkly.com/blog](https://launchdarkly.com/blog/ \"LaunchDarkly Blog Documentation\") for the latest product updates\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaunchdarkly%2Fld-relay-helm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flaunchdarkly%2Fld-relay-helm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaunchdarkly%2Fld-relay-helm/lists"}