From 3cf7633cec6a9f0013c312b09bf09ee61d84f618 Mon Sep 17 00:00:00 2001 From: Quanzheng Long Date: Tue, 10 Aug 2021 09:56:49 -0700 Subject: [PATCH 1/5] add dep yamls --- CONTRIBUTING.md | 9 ++++++--- docker/dev/cass-esv7-kafka.yml | 22 ++++++++++++++++++++++ docker/dev/cassandra.yml | 6 ++++++ docker/dev/mysql.yml | 8 ++++++++ 4 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 docker/dev/cass-esv7-kafka.yml create mode 100644 docker/dev/cassandra.yml create mode 100644 docker/dev/mysql.yml diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a93c7b553a3..ba67951cbdd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -32,9 +32,12 @@ After check out and go to the Cadence repo, compile the `cadence` service and he make bins ``` ->Note: If running into any compiling issue, ->1. Make sure you upgrade to the latest stable version of Golang. -> 2. Check if this document is outdated by comparing with the building steps in [Dockerfile](https://github.com/uber/cadence/blob/master/Dockerfile) +:warning: Note: + +If running into any compiling issue +>1. For proto/thrift errors, run `git submodule update --init --recursive` to fix +>2. Make sure you upgrade to the latest stable version of Golang. +>3. Check if this document is outdated by comparing with the building steps in [Dockerfile](https://github.com/uber/cadence/blob/master/Dockerfile) * Database. The default setup of Cadence depends on Cassandra. Before running the Cadence or tests you must have `cassandra` dependency(or equivalent database in the below notes) >Note: This section assumes you are working with Cassandra. Please refer to [persistence documentation](https://github.com/uber/cadence/blob/master/docs/persistence.md) if you want to test with others like MySQL/Postgres. diff --git a/docker/dev/cass-esv7-kafka.yml b/docker/dev/cass-esv7-kafka.yml new file mode 100644 index 00000000000..482d506890d --- /dev/null +++ b/docker/dev/cass-esv7-kafka.yml @@ -0,0 +1,22 @@ +version: '3' +services: + cassandra: + image: cassandra:3.11 + ports: + - "9042:9042" + elasticsearch: + image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3 + ports: + - "9200:9200" + environment: + - discovery.type=single-node + kafka: + image: wurstmeister/kafka:2.12-2.1.1 + depends_on: + - zookeeper + ports: + - "9092:9092" + environment: + KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 + KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file diff --git a/docker/dev/cassandra.yml b/docker/dev/cassandra.yml new file mode 100644 index 00000000000..72a5d8ec787 --- /dev/null +++ b/docker/dev/cassandra.yml @@ -0,0 +1,6 @@ +version: '3' +services: + cassandra: + image: cassandra:3.11 + ports: + - "9042:9042" \ No newline at end of file diff --git a/docker/dev/mysql.yml b/docker/dev/mysql.yml new file mode 100644 index 00000000000..a1e2140e3e9 --- /dev/null +++ b/docker/dev/mysql.yml @@ -0,0 +1,8 @@ +version: '3' +services: + mysql: + image: mysql:5.7 + ports: + - "3306:3306" + environment: + - "MYSQL_ROOT_PASSWORD=root" \ No newline at end of file From 2a9154d2f34c13e03328128cb66fc3a7dc46144c Mon Sep 17 00:00:00 2001 From: Quanzheng Long Date: Tue, 10 Aug 2021 12:02:52 -0700 Subject: [PATCH 2/5] fix --- CONTRIBUTING.md | 78 +++++++++++++------ Makefile | 12 +-- config/development_mysql.yaml | 8 +- ...sv7-kafka.yml => cassandra-esv7-kafka.yml} | 0 docker/dev/mysql-esv7-kafka.yml | 24 ++++++ docker/dev/mysql.yml | 4 +- docker/dev/postgres-esv7-kafka.yml | 25 ++++++ docker/dev/postgres.yml | 9 +++ 8 files changed, 127 insertions(+), 33 deletions(-) rename docker/dev/{cass-esv7-kafka.yml => cassandra-esv7-kafka.yml} (100%) create mode 100644 docker/dev/mysql-esv7-kafka.yml create mode 100644 docker/dev/postgres-esv7-kafka.yml create mode 100644 docker/dev/postgres.yml diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ba67951cbdd..94046a32ba0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -6,6 +6,9 @@ Join our Slack channel(invite link in the [home page](https://github.com/uber/ca >Note: All contributors need to fill out the [Uber Contributor License Agreement](http://t.uber.com/cla) before we can merge in any of your changes ## Development Environment +Below are the instructions of how to set up a development Environment. + +### 1. Building Environment * Golang. Install on OS X with. ``` @@ -29,9 +32,20 @@ go mod download After check out and go to the Cadence repo, compile the `cadence` service and helper tools without running test: ```bash +git submodule update --init --recursive + make bins ``` +You should be able to get all the binaries of this repo: +* cadence-server: the server binary +* cadence: the CLI binary +* cadence-cassandra-tool: the Cassandra schema tools +* cadence-sql-tool: the SQL schema tools(for now only supports MySQL and Postgres) +* cadence-canary: the canary test binary +* cadence-bench: the benchmark test binary + + :warning: Note: If running into any compiling issue @@ -40,39 +54,59 @@ If running into any compiling issue >3. Check if this document is outdated by comparing with the building steps in [Dockerfile](https://github.com/uber/cadence/blob/master/Dockerfile) * Database. The default setup of Cadence depends on Cassandra. Before running the Cadence or tests you must have `cassandra` dependency(or equivalent database in the below notes) ->Note: This section assumes you are working with Cassandra. Please refer to [persistence documentation](https://github.com/uber/cadence/blob/master/docs/persistence.md) if you want to test with others like MySQL/Postgres. -> Also, you don't need those local stores if you want to connect to your existing staging/QA environment. +### 2. Setup Dependency +Cadence's core data model can be running with different persistence storages, including Cassandra,MySQL and Postgres. +Please refer to [persistence documentation](https://github.com/uber/cadence/blob/master/docs/persistence.md) if you want to learn more. +Cadence's visibility data model can be running with either Cassandra/MySQL/Postgres database, or ElasticSearch+Kafka. The latter provides [advanced visibility feature](./docs/visibility-on-elasticsearch.md) -```bash -# install cassandra -# you can reduce memory used by cassandra (by default 4GB), by following instructions here: http://codefoundries.com/developer/cassandra/cassandra-installation-mac.html -brew install cassandra +We recommend to use [docker-compose](https://docs.docker.com/compose/) to start those dependencies: -# start services -brew services start cassandra -# or -cassandra -f +* If you want to start Cassandra dependency, use `./docker/dev/cassandra.yml`: +``` +docker-compose -f ./docker/dev/cassandra.yml up +``` +You will use `CTRL+C` to stop it. Then `docker-compose -f ./docker/dev/cassandra.yml down` to clean up the resources. -# after a short while, then use cqlsh to login, to make sure Cassandra is up -cqlsh -Connected to Test Cluster at 127.0.0.1:9042. -[cqlsh 5.0.1 | Cassandra 3.11.8 | CQL spec 3.4.4 | Native protocol v4] -Use HELP for help. -cqlsh> +Or to run in the background ``` ->If you are running Cadence on top of [Mysql](docs/setup/MYSQL_SETUP.md) or [Postgres](docs/setup/POSTGRES_SETUP.md), you can follow the instructions to run the SQL DB and then run: +docker-compose -f ./docker/dev/cassandra.yml up -d +``` +Also use `docker-compose -f ./docker/dev/cassandra.yml down` to stop and clean up the resources. -Now you can setup the database schema -```bash -make install-schema +* Alternatively, use `./docker/dev/mysql.yml` for MySQL dependency +* Alternatively, use `./docker/dev/postgres.yml` for PostgreSQL dependency +* Alternatively, use `./docker/dev/cassandra-esv7-kafka.yml` for Cassandra, ElasticSearch(v7) and Kafka dependencies +* Alternatively, use `./docker/dev/mysql-esv7-kafka.yml` for MySQL, ElasticSearch(v7) and Kafka dependencies +* Alternatively, use `./docker/dev/postgres-esv7-kafka.yml` for Postgres, ElasticSearch(v7) and Kafka dependencies -# If you use SQL DB, then run: -make install-schema-mysql OR make install-schema-postgres +### 3. Schema installation +Based on the above dependency setup, you also need to install the schemas. + +* If you use `cassandra.yml` or `cassandra-esv7-kafka.yml`, then run `make install-schema` to install Casandra schemas +* If you use `mysql.yml` or `mysql-esv7-kafka.yml`, then run `install-schema-mysql` to install MySQL schemas +* If you use `postgres.yml` or `postgres-esv7-kafka.yml`, then run `install-schema-postgres` to install Postgres schemas + +Beside database schema, you will also need to install ElasticSearch schema if you use `[cassandra|mysql|postgres]-esv7-kafka.yml`: +Run below commands: +```bash +export ES_SCHEMA_FILE=./schema/elasticsearch/v7/visibility/index_template.json +curl -X PUT "http://127.0.0.1:9200/_template/cadence-visibility-template" -H 'Content-Type: application/json' --data-binary "@$SCHEMA_FILE" +curl -X PUT "http://127.0.0.1:9200/cadence-visibility-dev" ``` +They will create an index template and an index in ElasticSearch. +### 4. Run +Once you have done all above, try running the local binaries: + +* If you use `cassandra.yml` for above steps: Then you will be able to run a basic local Cadence server for development: ```bash ./cadence-server start +``` +Then register a domain: +``` +./cadence --do samples-domain domain register +``` # If you use SQL DB, then run: ./cadence-server --zone start diff --git a/Makefile b/Makefile index 6665cad6ba7..2755d094096 100644 --- a/Makefile +++ b/Makefile @@ -539,12 +539,12 @@ install-schema: cadence-cassandra-tool ./cadence-cassandra-tool --ep 127.0.0.1 -k cadence_visibility update-schema -d ./schema/cassandra/visibility/versioned install-schema-mysql: cadence-sql-tool - ./cadence-sql-tool --ep 127.0.0.1 create --db cadence - ./cadence-sql-tool --ep 127.0.0.1 --db cadence setup-schema -v 0.0 - ./cadence-sql-tool --ep 127.0.0.1 --db cadence update-schema -d ./schema/mysql/v57/cadence/versioned - ./cadence-sql-tool --ep 127.0.0.1 create --db cadence_visibility - ./cadence-sql-tool --ep 127.0.0.1 --db cadence_visibility setup-schema -v 0.0 - ./cadence-sql-tool --ep 127.0.0.1 --db cadence_visibility update-schema -d ./schema/mysql/v57/visibility/versioned + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence create --db cadence + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence --db cadence setup-schema -v 0.0 + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence --db cadence update-schema -d ./schema/mysql/v57/cadence/versioned + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence create --db cadence_visibility + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence --db cadence_visibility setup-schema -v 0.0 + ./cadence-sql-tool --ep 127.0.0.1 --user root --pw cadence --db cadence_visibility update-schema -d ./schema/mysql/v57/visibility/versioned install-schema-postgres: cadence-sql-tool ./cadence-sql-tool --ep 127.0.0.1 -p 5432 -u postgres -pw cadence --pl postgres create --db cadence diff --git a/config/development_mysql.yaml b/config/development_mysql.yaml index ff078e9a582..afe24782536 100644 --- a/config/development_mysql.yaml +++ b/config/development_mysql.yaml @@ -8,8 +8,8 @@ persistence: databaseName: "cadence" connectAddr: "127.0.0.1:3306" connectProtocol: "tcp" - user: "uber" - password: "uber" + user: "cadence" + password: "cadence" maxConns: 20 maxIdleConns: 20 maxConnLifetime: "1h" @@ -19,8 +19,8 @@ persistence: databaseName: "cadence_visibility" connectAddr: "127.0.0.1:3306" connectProtocol: "tcp" - user: "uber" - password: "uber" + user: "cadence" + password: "cadence" maxConns: 2 maxIdleConns: 2 maxConnLifetime: "1h" \ No newline at end of file diff --git a/docker/dev/cass-esv7-kafka.yml b/docker/dev/cassandra-esv7-kafka.yml similarity index 100% rename from docker/dev/cass-esv7-kafka.yml rename to docker/dev/cassandra-esv7-kafka.yml diff --git a/docker/dev/mysql-esv7-kafka.yml b/docker/dev/mysql-esv7-kafka.yml new file mode 100644 index 00000000000..283bb171d9e --- /dev/null +++ b/docker/dev/mysql-esv7-kafka.yml @@ -0,0 +1,24 @@ +version: '3' +services: + mysql: + image: mysql:5.7 + ports: + - "3306:3306" + environment: + - "MYSQL_ROOT_PASSWORD=root" + elasticsearch: + image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3 + ports: + - "9200:9200" + environment: + - discovery.type=single-node + kafka: + image: wurstmeister/kafka:2.12-2.1.1 + depends_on: + - zookeeper + ports: + - "9092:9092" + environment: + KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 + KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file diff --git a/docker/dev/mysql.yml b/docker/dev/mysql.yml index a1e2140e3e9..6b15d0f72f2 100644 --- a/docker/dev/mysql.yml +++ b/docker/dev/mysql.yml @@ -5,4 +5,6 @@ services: ports: - "3306:3306" environment: - - "MYSQL_ROOT_PASSWORD=root" \ No newline at end of file + - "MYSQL_ROOT_PASSWORD=cadence" + - "MYSQL_USER=cadence" + - "MYSQL_PASSWORD=cadence" \ No newline at end of file diff --git a/docker/dev/postgres-esv7-kafka.yml b/docker/dev/postgres-esv7-kafka.yml new file mode 100644 index 00000000000..077a8824c6f --- /dev/null +++ b/docker/dev/postgres-esv7-kafka.yml @@ -0,0 +1,25 @@ +version: '3' +services: + postgres: + image: postgres:12 + environment: + POSTGRES_USER: cadence + POSTGRES_PASSWORD: cadence + ports: + - "5432:5432" + elasticsearch: + image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3 + ports: + - "9200:9200" + environment: + - discovery.type=single-node + kafka: + image: wurstmeister/kafka:2.12-2.1.1 + depends_on: + - zookeeper + ports: + - "9092:9092" + environment: + KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 + KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file diff --git a/docker/dev/postgres.yml b/docker/dev/postgres.yml new file mode 100644 index 00000000000..dcf15fbe8ef --- /dev/null +++ b/docker/dev/postgres.yml @@ -0,0 +1,9 @@ +version: '3' +services: + postgres: + image: postgres:12 + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: cadence + ports: + - "5432:5432" \ No newline at end of file From eeac49ae3dc52cb72082b1b2f2debfbf16179b0f Mon Sep 17 00:00:00 2001 From: Quanzheng Long Date: Tue, 10 Aug 2021 12:07:30 -0700 Subject: [PATCH 3/5] fix --- config/development_mysql.yaml | 4 ++-- docker/dev/mysql.yml | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/config/development_mysql.yaml b/config/development_mysql.yaml index afe24782536..f0e53cf2b64 100644 --- a/config/development_mysql.yaml +++ b/config/development_mysql.yaml @@ -8,7 +8,7 @@ persistence: databaseName: "cadence" connectAddr: "127.0.0.1:3306" connectProtocol: "tcp" - user: "cadence" + user: "root" password: "cadence" maxConns: 20 maxIdleConns: 20 @@ -19,7 +19,7 @@ persistence: databaseName: "cadence_visibility" connectAddr: "127.0.0.1:3306" connectProtocol: "tcp" - user: "cadence" + user: "root" password: "cadence" maxConns: 2 maxIdleConns: 2 diff --git a/docker/dev/mysql.yml b/docker/dev/mysql.yml index 6b15d0f72f2..f401bbcb1df 100644 --- a/docker/dev/mysql.yml +++ b/docker/dev/mysql.yml @@ -5,6 +5,4 @@ services: ports: - "3306:3306" environment: - - "MYSQL_ROOT_PASSWORD=cadence" - - "MYSQL_USER=cadence" - - "MYSQL_PASSWORD=cadence" \ No newline at end of file + - "MYSQL_ROOT_PASSWORD=cadence" \ No newline at end of file From 602b1e712779ce498f1f2a444e426d0a94102b33 Mon Sep 17 00:00:00 2001 From: Quanzheng Long Date: Tue, 10 Aug 2021 12:19:03 -0700 Subject: [PATCH 4/5] fix --- CONTRIBUTING.md | 23 ++++++++++------------- docker/dev/cassandra-esv7-kafka.yml | 6 +++++- docker/dev/mysql-esv7-kafka.yml | 24 ------------------------ docker/dev/postgres-esv7-kafka.yml | 25 ------------------------- 4 files changed, 15 insertions(+), 63 deletions(-) delete mode 100644 docker/dev/mysql-esv7-kafka.yml delete mode 100644 docker/dev/postgres-esv7-kafka.yml diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 94046a32ba0..f3ff78bf427 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -75,22 +75,20 @@ Also use `docker-compose -f ./docker/dev/cassandra.yml down` to stop and clean u * Alternatively, use `./docker/dev/mysql.yml` for MySQL dependency * Alternatively, use `./docker/dev/postgres.yml` for PostgreSQL dependency -* Alternatively, use `./docker/dev/cassandra-esv7-kafka.yml` for Cassandra, ElasticSearch(v7) and Kafka dependencies -* Alternatively, use `./docker/dev/mysql-esv7-kafka.yml` for MySQL, ElasticSearch(v7) and Kafka dependencies -* Alternatively, use `./docker/dev/postgres-esv7-kafka.yml` for Postgres, ElasticSearch(v7) and Kafka dependencies +* Alternatively, use `./docker/dev/cassandra-esv7-kafka.yml` for Cassandra, ElasticSearch(v7) and Kafka/ZooKeeper dependencies ### 3. Schema installation Based on the above dependency setup, you also need to install the schemas. * If you use `cassandra.yml` or `cassandra-esv7-kafka.yml`, then run `make install-schema` to install Casandra schemas -* If you use `mysql.yml` or `mysql-esv7-kafka.yml`, then run `install-schema-mysql` to install MySQL schemas -* If you use `postgres.yml` or `postgres-esv7-kafka.yml`, then run `install-schema-postgres` to install Postgres schemas +* If you use `mysql.yml` then run `install-schema-mysql` to install MySQL schemas +* If you use `postgres.yml` then run `install-schema-postgres` to install Postgres schemas -Beside database schema, you will also need to install ElasticSearch schema if you use `[cassandra|mysql|postgres]-esv7-kafka.yml`: +Beside database schema, you will also need to install ElasticSearch schema if you use `cassandra-esv7-kafka.yml`: Run below commands: ```bash export ES_SCHEMA_FILE=./schema/elasticsearch/v7/visibility/index_template.json -curl -X PUT "http://127.0.0.1:9200/_template/cadence-visibility-template" -H 'Content-Type: application/json' --data-binary "@$SCHEMA_FILE" +curl -X PUT "http://127.0.0.1:9200/_template/cadence-visibility-template" -H 'Content-Type: application/json' --data-binary "@$ES_SCHEMA_FILE" curl -X PUT "http://127.0.0.1:9200/cadence-visibility-dev" ``` They will create an index template and an index in ElasticSearch. @@ -103,18 +101,17 @@ Then you will be able to run a basic local Cadence server for development: ```bash ./cadence-server start ``` + * If you use `mysql.yml` then run `./cadence-server --zone mysql start` + * If you use `postgres.yml` then run `./cadence-server --zone postgres start` + * If you use `cassandra-esv7-kafka.yml` then run `./cadence-server --zone es_v7 start` + Then register a domain: ``` ./cadence --do samples-domain domain register ``` -# If you use SQL DB, then run: -./cadence-server --zone start -``` +Then run a helloworld from [Go Client Sample](https://github.com/uber-common/cadence-samples/) or [Java Client Sample](https://github.com/uber/cadence-java-samples) -You can run some workflow [samples](https://github.com/uber-common/cadence-samples) to test the development server. - -> This basic local server doesn't have some features like advanced visibility, archival, which require more dependency than Cassandra/Database and setup. ## Issues to start with diff --git a/docker/dev/cassandra-esv7-kafka.yml b/docker/dev/cassandra-esv7-kafka.yml index 482d506890d..a95cc388508 100644 --- a/docker/dev/cassandra-esv7-kafka.yml +++ b/docker/dev/cassandra-esv7-kafka.yml @@ -19,4 +19,8 @@ services: environment: KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 - KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 + zookeeper: + image: wurstmeister/zookeeper:3.4.6 + ports: + - "2181:2181" \ No newline at end of file diff --git a/docker/dev/mysql-esv7-kafka.yml b/docker/dev/mysql-esv7-kafka.yml deleted file mode 100644 index 283bb171d9e..00000000000 --- a/docker/dev/mysql-esv7-kafka.yml +++ /dev/null @@ -1,24 +0,0 @@ -version: '3' -services: - mysql: - image: mysql:5.7 - ports: - - "3306:3306" - environment: - - "MYSQL_ROOT_PASSWORD=root" - elasticsearch: - image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3 - ports: - - "9200:9200" - environment: - - discovery.type=single-node - kafka: - image: wurstmeister/kafka:2.12-2.1.1 - depends_on: - - zookeeper - ports: - - "9092:9092" - environment: - KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 - KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 - KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file diff --git a/docker/dev/postgres-esv7-kafka.yml b/docker/dev/postgres-esv7-kafka.yml deleted file mode 100644 index 077a8824c6f..00000000000 --- a/docker/dev/postgres-esv7-kafka.yml +++ /dev/null @@ -1,25 +0,0 @@ -version: '3' -services: - postgres: - image: postgres:12 - environment: - POSTGRES_USER: cadence - POSTGRES_PASSWORD: cadence - ports: - - "5432:5432" - elasticsearch: - image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3 - ports: - - "9200:9200" - environment: - - discovery.type=single-node - kafka: - image: wurstmeister/kafka:2.12-2.1.1 - depends_on: - - zookeeper - ports: - - "9092:9092" - environment: - KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 - KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 - KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 \ No newline at end of file From 29b2afa0bac3f0346508b568f90d9b000a871efe Mon Sep 17 00:00:00 2001 From: Quanzheng Long Date: Tue, 10 Aug 2021 12:28:47 -0700 Subject: [PATCH 5/5] fix --- CONTRIBUTING.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f3ff78bf427..c61713747fc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -55,6 +55,8 @@ If running into any compiling issue * Database. The default setup of Cadence depends on Cassandra. Before running the Cadence or tests you must have `cassandra` dependency(or equivalent database in the below notes) ### 2. Setup Dependency +NOTE: you may skip this section if you have installed the dependencies in any other ways, for example, using homebrew. + Cadence's core data model can be running with different persistence storages, including Cassandra,MySQL and Postgres. Please refer to [persistence documentation](https://github.com/uber/cadence/blob/master/docs/persistence.md) if you want to learn more. Cadence's visibility data model can be running with either Cassandra/MySQL/Postgres database, or ElasticSearch+Kafka. The latter provides [advanced visibility feature](./docs/visibility-on-elasticsearch.md)