{"id":20180829,"url":"https://github.com/frain-dev/helm-charts","last_synced_at":"2025-08-21T14:09:20.506Z","repository":{"id":42526693,"uuid":"463068836","full_name":"frain-dev/helm-charts","owner":"frain-dev","description":null,"archived":false,"fork":false,"pushed_at":"2025-07-09T10:50:22.000Z","size":7101,"stargazers_count":10,"open_issues_count":5,"forks_count":15,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-10T00:16:43.753Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Smarty","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/frain-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-02-24T08:34:48.000Z","updated_at":"2025-07-09T10:47:48.000Z","dependencies_parsed_at":"2023-02-08T17:45:33.609Z","dependency_job_id":"38b6a8df-b9d2-4846-ac2a-281402895123","html_url":"https://github.com/frain-dev/helm-charts","commit_stats":null,"previous_names":[],"tags_count":85,"template":false,"template_full_name":null,"purl":"pkg:github/frain-dev/helm-charts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frain-dev%2Fhelm-charts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frain-dev%2Fhelm-charts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frain-dev%2Fhelm-charts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frain-dev%2Fhelm-charts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frain-dev","download_url":"https://codeload.github.com/frain-dev/helm-charts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frain-dev%2Fhelm-charts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271493232,"owners_count":24769117,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"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":[],"created_at":"2024-11-14T02:33:05.750Z","updated_at":"2025-08-21T14:09:20.488Z","avatar_url":"https://github.com/frain-dev.png","language":"Smarty","readme":"# convoy\n\n![Version: 3.6.2](https://img.shields.io/badge/Version-3.6.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 25.6.7](https://img.shields.io/badge/AppVersion-25.6.7-informational?style=flat-square)\n\nOpen Source Webhooks Gateway\n\n## Maintainers\n\n| Name | Email | Url |\n| ---- | ------ | --- |\n| Convoy Engineering Team | \u003cengineering@getconvoy.io\u003e | \u003chttps://getconvoy.io\u003e |\n\n## Requirements\n\n| Repository | Name | Version |\n|------------|------|---------|\n| https://charts.bitnami.com/bitnami | postgresql | 12.5.6 |\n| https://charts.bitnami.com/bitnami | redis | 17.11.3 |\n\n## Values\n\n| Key | Type | Default | Description |\n|-----|------|---------|-------------|\n| agent.app.replicaCount | int | `1` |  |\n| agent.app.resources | object | `{}` |  |\n| agent.autoscaling.enabled | bool | `false` | Enable autoscaling for the agent |\n| agent.autoscaling.maxReplicas | int | `10` |  |\n| agent.autoscaling.minReplicas | int | `2` |  |\n| agent.autoscaling.targetCPUUtilizationPercentage | int | `80` |  |\n| agent.autoscaling.targetMemoryUtilizationPercentage | int | `80` |  |\n| agent.env.analytics_enabled | bool | `true` |  |\n| agent.env.consumer_pool_size | int | `100` |  |\n| agent.env.dispatcher.allow_list[0] | string | `\"0.0.0.0/0\"` |  |\n| agent.env.dispatcher.deny_list[0] | string | `\"127.0.0.1/8\"` |  |\n| agent.env.dispatcher.deny_list[1] | string | `\"169.254.169.254/32\"` |  |\n| agent.env.dispatcher.insecure_skip_verify | bool | `false` |  |\n| agent.env.enable_feature_flag | list | `[]` |  |\n| agent.env.enable_profiling | bool | `false` |  |\n| agent.env.environment | string | `\"oss\"` |  |\n| agent.env.instance_ingest_rate | int | `100` |  |\n| agent.env.license_key | string | `\"\"` |  |\n| agent.env.log_level | string | `\"error\"` |  |\n| agent.env.max_retry_seconds | int | `7200` |  |\n| agent.env.metrics.enabled | bool | `false` |  |\n| agent.env.metrics.metrics_backend | string | `\"prometheus\"` |  |\n| agent.env.metrics.prometheus_metrics.sample_time | int | `5` |  |\n| agent.env.proxy | string | `\"\"` |  |\n| agent.env.pyroscope.enabled | bool | `false` |  |\n| agent.env.pyroscope.password | string | `\"\"` |  |\n| agent.env.pyroscope.profile_id | string | `\"\"` |  |\n| agent.env.pyroscope.url | string | `\"\"` |  |\n| agent.env.pyroscope.username | string | `\"\"` |  |\n| agent.env.retention_policy.enabled | bool | `false` |  |\n| agent.env.retention_policy.policy | string | `\"720h\"` |  |\n| agent.env.sign_up_enabled | bool | `false` |  |\n| agent.env.smtp.enabled | bool | `false` |  |\n| agent.env.smtp.from | string | `\"\"` |  |\n| agent.env.smtp.password | string | `\"\"` | Ignored in case of secret parameter with non-empty value |\n| agent.env.smtp.port | int | `0` |  |\n| agent.env.smtp.provider | string | `\"\"` |  |\n| agent.env.smtp.reply_to | string | `\"\"` |  |\n| agent.env.smtp.secret | string | `\"\"` | If this secret parameter is not empty, password value will be ignored. The password in the secret should be in the 'password' key |\n| agent.env.smtp.ssl | bool | `false` |  |\n| agent.env.smtp.url | string | `\"\"` |  |\n| agent.env.smtp.username | string | `\"\"` |  |\n| agent.env.storage.enabled | bool | `false` |  |\n| agent.env.storage.on_prem.path | string | `\"\"` |  |\n| agent.env.storage.s3.accessKey | string | `\"\"` |  |\n| agent.env.storage.s3.bucket | string | `\"\"` |  |\n| agent.env.storage.s3.endpoint | string | `\"\"` |  |\n| agent.env.storage.s3.region | string | `\"\"` |  |\n| agent.env.storage.s3.secret | string | `\"\"` | If this secret parameter is not empty, secretKey value will be ignored. The password in the secret should be in the 'secretKey' key |\n| agent.env.storage.s3.secretKey | string | `\"\"` | Ignored in case of secret parameter with non-empty value |\n| agent.env.storage.s3.session_token | string | `\"\"` |  |\n| agent.env.storage.type | string | `\"\"` |  |\n| agent.env.worker_execution_mode | string | `\"default\"` |  |\n| agent.image.pullPolicy | string | `\"IfNotPresent\"` | Pull policy for the agent image |\n| agent.image.repository | string | `\"getconvoy/convoy\"` | Repository to be used by the agent. The latest tag is used by default |\n| agent.podDisruptionBudget | object | `{}` |  |\n| agent.securityContext | object | `{}` |  |\n| agent.service.port | int | `80` | Port for the agent service |\n| agent.service.type | string | `\"ClusterIP\"` | Type of service for the agent |\n| global.convoy.api_version | string | `\"2024-01-01\"` | API version |\n| global.convoy.cacert_content | string | `\"\"` | Dispatcher CA Certificate content. If provided, a secret will be created with this content |\n| global.convoy.cacert_secret_name | string | `\"\"` | Dispatcher CA Certificate configuration. If provided, it will use the content of the secret |\n| global.convoy.enable_usage_analytics | bool | `true` | Enable usage analytics |\n| global.convoy.environment | string | `\"oss\"` | Convoy Environment |\n| global.convoy.image | string | `\"getconvoy/convoy\"` | Docker image tags for all convoy components |\n| global.convoy.jwt_refresh_secret | string | `\"convoy-refresh-secret\"` | JWT Refresh Secret key |\n| global.convoy.jwt_secret | string | `\"convoy-secret\"` | JWT Secret key |\n| global.convoy.jwt_secret_name | string | `\"\"` | If this secret parameter is not empty, JWT secret values will be ignored. The secrets should be in the 'jwt_secret' and 'jwt_refresh_secret' keys |\n| global.convoy.license_key | string | `\"\"` | License Key |\n| global.convoy.license_key_secret_name | string | `\"\"` | If this secret parameter is not empty, the inline license key value will be ignored. The license key should be present in the 'license_key' key of the specified secret. |\n| global.convoy.log_level | string | `\"error\"` | Logger Level for all convoy components |\n| global.convoy.otel_auth_header_name | string | `\"\"` | Open Telemetry auth header name |\n| global.convoy.otel_auth_header_value | string | `\"\"` | Open Telemetry auth header value |\n| global.convoy.otel_collector_url | string | `\"\"` | Open Telemetry collector url |\n| global.convoy.otel_insecure_skip_verify | bool | `true` | Open Telemetry insecure skip verify |\n| global.convoy.otel_sample_rate | int | `1` | Open Telemetry sample rate |\n| global.convoy.retention_policy_duration | string | `\"720h\"` | Retention policy duration |\n| global.convoy.retention_policy_enabled | bool | `false` | Retention policy enabled |\n| global.convoy.sentry_dsn | string | `\"\"` | Sentry DSN |\n| global.convoy.tag | string | `\"v25.6.7\"` | Docker image tags for all convoy components |\n| global.convoy.tracer_enabled | bool | `false` | Tracing config for all convoy services |\n| global.convoy.tracer_type | string | `\"otel\"` | Tracing provider type |\n| global.externalDatabase.database | string | `\"convoy\"` | Database name for the external database |\n| global.externalDatabase.enabled | bool | `true` | Enable an external database; This will use postgresql chart, Change values if you use an external database |\n| global.externalDatabase.host | string | `\"postgresql\"` | Host for the external database |\n| global.externalDatabase.options | string | `\"sslmode=disable\u0026connect_timeout=30\"` | Query params for the external database |\n| global.externalDatabase.password | string | `\"postgres\"` | Password for the external database, ignored in case of secret parameter with non-empty value |\n| global.externalDatabase.port | int | `5432` | Port for the external database |\n| global.externalDatabase.postgresPassword | string | `\"postgres\"` | Password for the external database |\n| global.externalDatabase.readReplicas | object | `{}` | Read replicas configuration for the external database |\n| global.externalDatabase.secret | string | `\"\"` | If this secret parameter is not empty, the password value will be ignored. The password in the secret should be in the 'password' key |\n| global.externalDatabase.username | string | `\"postgres\"` | Username for the external database |\n| global.externalRedis.addresses | string | `\"\"` | redis cluster addresses, if set the other values won't be used |\n| global.externalRedis.database | string | `\"\"` | Database name for the external redis. |\n| global.externalRedis.enabled | bool | `false` | Enable external redis, Enable this if you use an external redis and disable Native redis |\n| global.externalRedis.host | string | `\"\"` | Host for the external redis |\n| global.externalRedis.password | string | `\"\"` | password for the external redis, ignored in case of secret parameter with non-empty value |\n| global.externalRedis.port | string | `\"\"` | Port for the external redis |\n| global.externalRedis.scheme | string | `\"\"` | Scheme for the external redis. This can be redis, rediss, redis-socket or redis-sentinel |\n| global.externalRedis.secret | string | `\"\"` | If this secret parameter is not empty, password value will be ignored. The password in the secret should be in the 'password' key |\n| global.externalRedis.username | string | `\"\"` | username for the external redis. |\n| global.nativeRedis.enabled | bool | `true` | Enable redis; This will use redis chart, Disable if you use an external redis |\n| global.nativeRedis.host | string | `\"redis-master\"` | Host for the redis |\n| global.nativeRedis.password | string | `\"convoy\"` | password for the redis, ignored in case of secret parameter with non-empty value |\n| global.nativeRedis.port | int | `6379` | Port for the redis |\n| global.nativeRedis.secret | string | `\"\"` | If this secret parameter is not empty, password value will be ignored. The password in the secret should be in the 'password' key |\n| server.app.replicaCount | int | `1` |  |\n| server.app.resources | object | `{}` |  |\n| server.autoscaling.enabled | bool | `false` | Enable autoscaling for the server |\n| server.autoscaling.maxReplicas | int | `10` |  |\n| server.autoscaling.minReplicas | int | `2` |  |\n| server.autoscaling.targetCPUUtilizationPercentage | int | `80` |  |\n| server.autoscaling.targetMemoryUtilizationPercentage | int | `80` |  |\n| server.env.analytics.enabled | bool | `true` |  |\n| server.env.analytics_enabled | bool | `true` |  |\n| server.env.api_version | string | `\"2024-01-01\"` |  |\n| server.env.auth.file.basic | object | `{}` |  |\n| server.env.auth.jwt.enabled | bool | `true` |  |\n| server.env.auth.jwt.refresh_secret | string | `\"convoy-refresh-secret\"` |  |\n| server.env.auth.jwt.secret | string | `\"convoy-secret\"` |  |\n| server.env.auth.native.enabled | bool | `true` |  |\n| server.env.enable_feature_flag | list | `[]` |  |\n| server.env.enable_profiling | bool | `false` |  |\n| server.env.environment | string | `\"oss\"` |  |\n| server.env.host | string | `\"\"` |  |\n| server.env.instance_ingest_rate | int | `100` |  |\n| server.env.license_key | string | `\"\"` |  |\n| server.env.log_level | string | `\"error\"` |  |\n| server.env.max_response_size | int | `50` | Max response body when ingesting webhooks (might be renamed). Defaults to 50KB |\n| server.env.max_retry_seconds | int | `7200` |  |\n| server.env.metrics.enabled | bool | `false` |  |\n| server.env.metrics.metrics_backend | string | `\"prometheus\"` |  |\n| server.env.metrics.prometheus_metrics.sample_time | int | `5` |  |\n| server.env.pyroscope.enabled | bool | `false` |  |\n| server.env.pyroscope.password | string | `\"\"` |  |\n| server.env.pyroscope.profile_id | string | `\"\"` |  |\n| server.env.pyroscope.url | string | `\"\"` |  |\n| server.env.pyroscope.username | string | `\"\"` |  |\n| server.env.retention_policy.enabled | bool | `false` |  |\n| server.env.retention_policy.policy | string | `\"720h\"` |  |\n| server.env.sign_up_enabled | bool | `false` |  |\n| server.env.storage.enabled | bool | `false` |  |\n| server.env.storage.on_prem.path | string | `\"\"` |  |\n| server.env.storage.s3.accessKey | string | `\"\"` |  |\n| server.env.storage.s3.bucket | string | `\"\"` |  |\n| server.env.storage.s3.endpoint | string | `\"\"` |  |\n| server.env.storage.s3.prefix | string | `\"\"` |  |\n| server.env.storage.s3.region | string | `\"\"` |  |\n| server.env.storage.s3.secret | string | `\"\"` | If this secret parameter is not empty, secretKey value will be ignored. The password in the secret should be in the 'secretKey' key |\n| server.env.storage.s3.secretKey | string | `\"\"` | Ignored in case of secret parameter with non-empty value |\n| server.env.storage.s3.session_token | string | `\"\"` |  |\n| server.env.storage.type | string | `\"\"` |  |\n| server.image.pullPolicy | string | `\"IfNotPresent\"` | Pull policy for the server image |\n| server.image.repository | string | `\"getconvoy/convoy\"` | Repository to be used by the server. The latest tag is used by default |\n| server.ingress.annotations | object | `{}` |  |\n| server.ingress.enabled | bool | `true` | Enable ingress for the server |\n| server.ingress.hosts[0].host | string | `\"test.com\"` |  |\n| server.ingress.hosts[0].http.paths[0].path | string | `\"/\"` |  |\n| server.ingress.hosts[0].http.paths[0].pathType | string | `\"Prefix\"` |  |\n| server.ingress.ingressClassName | string | `\"\"` |  |\n| server.ingress.tls[0].hosts[0] | string | `\"test.com\"` |  |\n| server.ingress.tls[0].secretName | string | `\"test-tls-secret\"` |  |\n| server.podDisruptionBudget | object | `{}` |  |\n| server.securityContext | object | `{}` |  |\n| server.service.port | int | `80` | Port for the server service |\n| server.service.type | string | `\"ClusterIP\"` | Type of service for the server |\n\n----------------------------------------------\nAutogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrain-dev%2Fhelm-charts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrain-dev%2Fhelm-charts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrain-dev%2Fhelm-charts/lists"}