0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-30 19:41:46 +01:00
posthog/ee/docker-compose.ch.test.yml
Karl-Aksel Puulmann 24de8b55e4
Run tests via pytest (#3417)
* Compile requirements-dev.txt with latest pip-tools

* Install pytest

* Avoid picking up factories as tests

* New runner

* Always set TEST env variable running tests

Some of our tests rely on it.

* Remove repetition

* Fix a broken test

* Cut down noise from bin/tests

* Rename test factory

* Fix stickiness filter

* Skip a broken test

This has been broken since numpy removal PR. Sadly tests were not
running for this submodule

* Fix import on ee

* Run ee tests properly

The django_db_setup fixture will be automatically run when running ee/
module tests.

* Make tests run on CI

* Include REDIS_URL, fix cloud

* Set TEST env variable

* Hack cloud tests to work

* Attempt at workflow fix

* Import Person model when running ee tests

This module implicitly adds hooks, so this is needed when running tests

* Respect reuse-db for clickhouse

* Add custom markers to avoid warnings

* pytest: use ch test database always

Accidentally wiped by ch setup a few times without this. Oops

* Remove repetition in tests

* Pytest: Always run migrations

Testing a state cleanup fix

* Use same DB in conftest and main code

* Pytest: autoset TEST setting without env variable

* fix broken test

Co-authored-by: eric <eeoneric@gmail.com>
2021-02-24 09:32:44 +02:00

119 lines
3.3 KiB
YAML

version: '3'
services:
db:
image: postgres:11-alpine
environment:
POSTGRES_USER: posthog
POSTGRES_DB: posthog
POSTGRES_PASSWORD: posthog
ports:
- '5439:5432'
redis:
image: 'redis:alpine'
ports:
- '6379:6379'
test:
build:
context: ../
dockerfile: dev.Dockerfile
command: ./ee/bin/docker-ch-test
volumes:
- ..:/code
ports:
- '8000:8000'
- '8234:8234'
environment:
IS_DOCKER: 'true'
DATABASE_URL: 'postgres://posthog:posthog@db:5432/posthog'
CLICKHOUSE_HOST: 'clickhouse'
CLICKHOUSE_DATABASE: 'posthog'
CLICKHOUSE_SECURE: 'false'
CLICKHOUSE_VERIFY: 'false'
KAFKA_URL: 'kafka://kafka'
REDIS_URL: 'redis://redis:6379/'
SECRET_KEY: 'alsdfjiosdajfklalsdjkf'
DEBUG: 'true'
PRIMARY_DB: 'clickhouse'
PLUGIN_SERVER_INGESTION: 'true'
TEST: 'true'
depends_on:
- db
- redis
- clickhouse
- kafka
links:
- db:db
- redis:redis
worker:
build:
context: ../
dockerfile: dev.Dockerfile
command: ./bin/docker-worker-celery --with-scheduler
volumes:
- ..:/code
environment:
IS_DOCKER: 'true'
DATABASE_URL: 'postgres://posthog:posthog@db:5432/posthog'
CLICKHOUSE_HOST: 'clickhouse'
CLICKHOUSE_DATABASE: 'posthog'
CLICKHOUSE_SECURE: 'false'
CLICKHOUSE_VERIFY: 'false'
KAFKA_URL: 'kafka://kafka'
REDIS_URL: 'redis://redis:6379/'
SECRET_KEY: 'alsdfjiosdajfklalsdjkf'
DEBUG: 'true'
PRIMARY_DB: 'clickhouse'
depends_on:
- db
- redis
links:
- db:db
- redis:redis
plugins:
build:
context: ../
dockerfile: production.Dockerfile
command: ./bin/plugin-server --no-restart-loop
restart: on-failure
volumes:
- ..:/code
environment:
DATABASE_URL: 'postgres://posthog:posthog@db:5432/posthog'
KAFKA_ENABLED: 'true'
KAFKA_HOSTS: 'kafka:9092'
REDIS_URL: 'redis://redis:6379/'
PLUGIN_SERVER_INGESTION: 'true'
depends_on:
- db
- redis
- clickhouse
- kafka
links:
- db:db
- redis:redis
clickhouse:
image: yandex/clickhouse-server
depends_on:
- kafka
ports:
- '8123:8123'
- '9000:9000'
- '9440:9440'
- '9009:9009'
volumes:
- ./idl:/idl
- ../docker/clickhouse/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
- ../docker/clickhouse/config.xml:/etc/clickhouse-server/config.xml
zookeeper:
image: wurstmeister/zookeeper
kafka:
image: wurstmeister/kafka
depends_on:
- zookeeper
ports:
- '9092:9092'
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181