diff --git a/infra/docker-compose/.env.sample b/infra/docker-compose/.env.sample index 8ca7ca008fb..f3de7330630 100644 --- a/infra/docker-compose/.env.sample +++ b/infra/docker-compose/.env.sample @@ -1,12 +1,14 @@ # General COMPOSE_PROJECT_NAME=feast FEAST_VERSION=latest -FEAST_REPOSITORY_VERSION=v0.4.7 +FEAST_REPOSITORY_VERSION=v0.5-branch # Feast Core FEAST_CORE_IMAGE=gcr.io/kf-feast/feast-core FEAST_CORE_CONFIG=direct-runner.yml FEAST_CORE_GCP_SERVICE_ACCOUNT_KEY=placeholder.json +FEAST_STREAM_OPTIONS_BOOTSTRAPSERVERS=kafka:9092 +FEAST_JOBS_POLLING_INTERVAL_MILLISECONDS=10 # Feast Serving Batch (BigQuery) FEAST_BATCH_SERVING_CONFIG=batch-serving.yml diff --git a/infra/docker-compose/core/direct-runner.yml b/infra/docker-compose/core/direct-runner.yml deleted file mode 100644 index f9123480bb4..00000000000 --- a/infra/docker-compose/core/direct-runner.yml +++ /dev/null @@ -1,3 +0,0 @@ -feast: - jobs: - runner: DirectRunner diff --git a/infra/docker-compose/docker-compose.yml b/infra/docker-compose/docker-compose.yml index 1dda766608e..d327b8e3c80 100644 --- a/infra/docker-compose/docker-compose.yml +++ b/infra/docker-compose/docker-compose.yml @@ -9,6 +9,8 @@ services: environment: DB_HOST: db GOOGLE_APPLICATION_CREDENTIALS: /etc/gcloud/service-accounts/key.json + FEAST_STREAM_OPTIONS_BOOTSTRAPSERVERS: ${FEAST_STREAM_OPTIONS_BOOTSTRAPSERVERS} + FEAST_JOBS_POLLING_INTERVAL_MILLISECONDS: ${FEAST_JOBS_POLLING_INTERVAL_MILLISECONDS} restart: on-failure depends_on: - db diff --git a/infra/docker-compose/jupyter/startup.sh b/infra/docker-compose/jupyter/startup.sh index f9a17984536..5279323cf89 100755 --- a/infra/docker-compose/jupyter/startup.sh +++ b/infra/docker-compose/jupyter/startup.sh @@ -5,6 +5,9 @@ set -ex # Clone Feast repository into Jupyter container git clone -b ${FEAST_REPOSITORY_VERSION} --single-branch https://github.com/feast-dev/feast.git || true +# Install Python dependencies +make -C feast/ compile-protos-python + # Install CI requirements (only needed for running tests) pip install -r feast/sdk/python/requirements-ci.txt diff --git a/infra/docker-compose/serving/online-serving.yml b/infra/docker-compose/serving/online-serving.yml index 089af32dd45..7ca1e7113f3 100644 --- a/infra/docker-compose/serving/online-serving.yml +++ b/infra/docker-compose/serving/online-serving.yml @@ -1,13 +1,12 @@ feast: core-host: core - core-grpc-port: 6565 - store: - config-path: /etc/feast/store.yml - jobs: - store-type: REDIS - store-options: - host: redis - port: 6379 - -grpc: - port: 6566 \ No newline at end of file + active_store: online + stores: + - name: online + type: REDIS + config: + host: redis + port: 6379 + subscriptions: + - name: "*" + project: "*" \ No newline at end of file diff --git a/infra/scripts/test-docker-compose.sh b/infra/scripts/test-docker-compose.sh index 40a85900c2f..f3aa9289e20 100755 --- a/infra/scripts/test-docker-compose.sh +++ b/infra/scripts/test-docker-compose.sh @@ -8,6 +8,20 @@ Running Docker Compose tests with pytest at 'tests/e2e' ============================================================ " +clean_up () { + ARG=$? + + # Shut down docker-compose images + docker-compose -f docker-compose.yml -f docker-compose.online.yml down + + # Remove configuration file + rm .env + + exit $ARG +} + +trap clean_up EXIT + export PROJECT_ROOT_DIR=$(git rev-parse --show-toplevel) export COMPOSE_INTERACTIVE_NO_CLI=1 @@ -30,6 +44,3 @@ ${PROJECT_ROOT_DIR}/infra/scripts/wait-for-it.sh ${JUPYTER_DOCKER_CONTAINER_IP_A # Run e2e tests for Redis docker exec feast_jupyter_1 bash -c 'cd feast/tests/e2e/ && pytest -s basic-ingest-redis-serving.py --core_url core:6565 --serving_url=online-serving:6566' - -# Shut down docker-compose images -docker-compose -f docker-compose.yml -f docker-compose.online.yml down \ No newline at end of file