Skip to content

Helm chart for deploying PostHog with ClickHouse on your K8s infrastructure

License

Notifications You must be signed in to change notification settings

arcmmartins/posthog-charts-clickhouse

 
 

Repository files navigation

PostHog Helm Chart

Latest release of the Helm chart Latest release app version MIT License Slack


🦔 PostHog is a developer-friendly, open-source product analytics suite.

This Helm chart bootstraps a PostHog installation on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes >=1.20 <= 1.23
  • Helm 3+

Installation

Deployment instructions for the major cloud service providers and on-premise deploys are available here.

Changelog

We document detailed changes for each major release in the upgrade notes.

Development

The main purpose of this repository is to continue evolving our Helm chart, making it faster and easier to use. We welcome all contributions to the community and are excited to welcome you aboard.

Testing

This repo uses several types of test suite targeting different goals:

  • lint tests: to verify if the Helm templates can be rendered without errors
  • unit tests: to verify if the rendered Helm templates are as we expect
  • integration tests: to verify if applying the rendered Helm templates against a Kubernetes target cluster gives us the stack and PostHog installation we expect

Lint tests

We use helm lint that can be invoked via: helm lint --strict --set “cloud=local” charts/posthog

Unit tests

In order to run the test suite, you need to install the helm-unittest plugin. You can do that by running: helm plugin install https://github.com/quintush/helm-unittest

For more information about how it works and how to write test cases, please look at the upstream documentation or to the tests already available in this repo.

To run the test suite you can execute: helm unittest --helm3 --strict --file 'tests/*.yaml' --file 'tests/clickhouse-operator/*.yaml' charts/posthog

Integration tests

  • kubetest: to verify if applying the rendered Helm templates against a Kubernetes target cluster gives us the stack we expect (example: are the disks encrypted? Can this pod communicate with this service?)
  • k6: HTTP test used to verify the reliability, performance and compliance of the PostHog installation (example: is the PostHog ingestion working correctly?)
  • e2e - k3s: to verify Helm install/upgrade commands on a local k3s cluster
  • e2e - Amazon Web Services, e2e - DigitalOcean, e2e - Google Cloud Platform: to verify Helm install command on the officially supported cloud platforms

Release

Add one of the following labels to your PR before merging to bump the version and release it to the Helm repository:

  • bump patch
  • bump minor
  • bump major

About

Helm chart for deploying PostHog with ClickHouse on your K8s infrastructure

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 37.1%
  • Smarty 21.7%
  • JavaScript 19.4%
  • Mustache 13.0%
  • Shell 8.8%