# These are the default values that should apply to most environments, especially dev ones ENV_TYPE="development" GETH_DEBUG=true GETH_VERBOSITY=1 # Per-module verbosity: comma-separated list of = (e.g. eth/*=5,p2p=4, consensus/*=4) GETH_VMODULE="consensus/*=2" GETH_ENABLE_METRICS=false GETH_USE_MYCELO=false VM_BASED=false KUBERNETES_CLUSTER_NAME="celo-networks-dev" KUBERNETES_CLUSTER_ZONE="us-west1-a" CLUSTER_DOMAIN_NAME="celo-networks-dev" TESTNET_PROJECT_NAME="celo-testnet" BLOCKSCOUT_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/blockscout" BLOCKSCOUT_DOCKER_IMAGE_TAG="5f546f4e479fc51817fa324149002ce70478389a" BLOCKSCOUT_DB_SUFFIX= # Blockscout related cronjobs BLOCKSCOUT_METADATA_CRAWLER_IMAGE_REPOSITORY="gcr.io/celo-testnet/celo-monorepo" BLOCKSCOUT_METADATA_CRAWLER_IMAGE_TAG="metadata-crawler-f385708f2bc79ead62460e353b5eb964936f90f7" BLOCKSCOUT_METADATA_CRAWLER_SCHEDULE="*/30 * * * *" LEADERBOARD_DOCKER_IMAGE_REPOSITORY="us.gcr.io/celo-testnet/celo-monorepo" LEADERBOARD_DOCKER_IMAGE_TAG="leaderboard-2708d6459b6efe2ab3ec04084d9c3819e202699f" CELOSTATS_SERVER_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/celostats-server" CELOSTATS_SERVER_DOCKER_IMAGE_TAG="28b3e8a3a03f3926524ccc5b9cff04d256b5a3a9" CELOSTATS_FRONTEND_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/celostats-frontend" CELOSTATS_FRONTEND_DOCKER_IMAGE_TAG="d092a2d527f64cabbb4364b72eb72faf364c6156" CELOSTATS_TRUSTED_ADDRESSES="" CELOSTATS_BANNED_ADDRESSES="" CELOSTATS_RESERVED_ADDRESSES="" FAUCET_GENESIS_ACCOUNTS=2 GETH_NODE_DOCKER_IMAGE_REPOSITORY="us.gcr.io/celo-testnet/geth" # When upgrading change this to latest commit hash from the master of the geth repo # `geth $ git show | head -n 1` GETH_NODE_DOCKER_IMAGE_TAG="master" GETH_BOOTNODE_DOCKER_IMAGE_REPOSITORY="us.gcr.io/celo-testnet/geth-all" # When upgrading change this to latest commit hash from the master of the geth repo # `geth $ git show | head -n 1` GETH_BOOTNODE_DOCKER_IMAGE_TAG="master" CELOTOOL_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/celo-monorepo" CELOTOOL_DOCKER_IMAGE_TAG="celotool-4257fe61f91e935681f3a91bb4dcb44c8dd6df47" CELOCLI_STANDALONE_IMAGE_REPOSITORY="gcr.io/celo-testnet/celocli-standalone" CELOCLI_STANDALONE_IMAGE_TAG="0.0.30-beta2" # Schedule for an oracle deployed via celotool, expressed in crontab syntax # This schedule is "every 5th minute" MOCK_ORACLE_CRON_SCHEDULE="*/5 * * * *" MOCK_ORACLE_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/oracle" MOCK_ORACLE_DOCKER_IMAGE_TAG="default" TRANSACTION_METRICS_EXPORTER_DOCKER_IMAGE_REPOSITORY="gcr.io/celo-testnet/celo-monorepo" TRANSACTION_METRICS_EXPORTER_DOCKER_IMAGE_TAG="transaction-metrics-exporter-dc5e5dfa07231a4ff4664816a95eae606293eae9" TRANSACTION_METRICS_EXPORTER_SUFFIX='1' EKSPORTISTO_DOCKER_IMAGE_REPOSITORY="us.gcr.io/celo-testnet/eksportisto" EKSPORTISTO_DOCKER_IMAGE_TAG="12f9f9e822ea35db2f965be616abef126f1724fb" EKSPORTISTO_SUFFIX='1' ATTESTATION_SERVICE_DOCKER_IMAGE_REPOSITORY="us.gcr.io/celo-testnet/celo-monorepo" ATTESTATION_SERVICE_DOCKER_IMAGE_TAG="attestation-service-v1.1.0" # Genesis Vars NETWORK_ID=1101 CONSENSUS_TYPE="istanbul" BLOCK_TIME=1 EPOCH=1000 LOOKBACK=12 ISTANBUL_REQUEST_TIMEOUT_MS=3000 # Hardfork activation block numbers (also part of genesis) CHURRITO_BLOCK=0 DONUT_BLOCK=0 # the number of load test clients that will be given funds in the genesis & migrations LOAD_TEST_CLIENTS=100 # every 36 seconds, so that 100 transactions are sent by a client every hour LOAD_TEST_TX_DELAY_MS=36000 LOAD_TEST_USE_RANDOM_RECIPIENT='false' # the amount in cUSD wei to give faucet, load test, and attestation bot accounts FAUCET_CUSD_WEI=60000000000000000000000 VALIDATORS="3" # format: <# of validators>:,<# of validators>:;... # For vm-based testnets: The n proxied validators have to be the n first validators. Only indicate in the list the validators with proxy. # Example: For a 10 validator testnet, 2:3,2:2,2:1 will result in Validator 0-1 with 3 proxies, 2-3 with 2 proxies, 4-5 with 1 proxy, and 6-9 with 0 proxies VALIDATOR_PROXY_COUNTS=1:1,2:0 STATIC_IPS_FOR_GETH_NODES=false # Whether tx_nodes/validators stateful set should use ssd persistent disks GETH_NODES_SSD_DISKS=true # Used for validators, proxies, and tx_nodes NODE_DISK_SIZE_GB=10 # Used for private tx_nodes (gcmode archive) PRIVATE_NODE_DISK_SIZE_GB=10 IN_MEMORY_DISCOVERY_TABLE=false TX_NODES="3" # Nodes whose RPC ports are only internally exposed PRIVATE_TX_NODES=1 # Canary Deployment Variables # Specify the partition nodes to be using a new statefulset definition. The number of the nodes # specified in the partition are the nodes using the old definition. Use 0 for all the replicas # using the latest definition # https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#partitions VALIDATORS_ROLLING_UPDATE_PARTITION=0 PROXY_ROLLING_UPDATE_PARTITION=0 SECONDARIES_ROLLING_UPDATE_PARTITION=0 TX_NODES_ROLLING_UPDATE_PARTITION=0 TX_NODES_PRIVATE_ROLLING_UPDATE_PARTITION=0 # Kubernetes Cluster Creation flags. Only used when a new kubernetes cluster needs to be created CLUSTER_CREATION_FLAGS="--enable-autoscaling --min-nodes 3 --max-nodes 40 --machine-type=n1-standard-4 --preemptible --workload-metadata=GKE_METADATA --workload-pool=celo-testnet.svc.id.goog" # Number of faulty/Byzantine validators FAULTY_VALIDATORS=0 # What type of Byzantine fault the faulty validators exhibit: # see valid values at geth/consensus/istanbul/config.go line 28 FAULTY_VALIDATOR_TYPE=1 GETH_NODE_CPU_REQUEST=400m GETH_NODE_MEMORY_REQUEST=800M VERIFICATION_POOL_URL="https://us-central1-celo-testnet.cloudfunctions.net/handleVerificationRequestintegration/v0.1/sms/" VERIFICATION_REWARDS_URL="https://us-central1-celo-testnet.cloudfunctions.net/handleVerificationRequestintegration/v0.1/rewards/" # Disable the sidecar that forwards the metrics to stackdriver PROMETHEUS_DISABLE_STACKDRIVER_SIDECAR="true" # To not deploy the start-auction cronjob, set this value to the empty string AUCTION_CRON_SPEC= # Chaos testing variables CHAOS_TEST_INTERVAL = 3m CHAOS_TEST_DURATION = 2m # in milliseconds CHAOS_TEST_NETWORK_DELAY = 1400 CHAOS_TEST_NETWORK_JITTER = 500 CHAOS_TEST_NETWORK_LOSS = 80 CHAOS_TEST_NETWORK_RATE = 100kbit CHAOS_TEST_KILL_INTERVAL = 3m # Below are variables for which there exist no sensible defaults, and thus should # be customized in their respective .env.$CELO_ENV files # # MOBILE_WALLET_PLAYSTORE_LINK="" # Attestation Bot variables ATTESTATION_BOT_INITIAL_WAIT_SECONDS=3 ATTESTATION_BOT_IN_BETWEEN_WAIT_SECONDS=10 ATTESTATION_BOT_MAX_ATTESTATIONS=3 # Number of gold-holding bots that vote for validator groups VOTING_BOTS=3 # 10,000 CG VOTING_BOT_BALANCE=10000000000000000000000 # Probability that a given bot account will participate in the current epoch's voting VOTING_BOT_WAKE_PROBABILITY=0.2 # Baseline probability of changing vote once woken. If the group that this bot account # has currently voted for is 1, this is the probability the bot will change their vote VOTING_BOT_CHANGE_BASELINE=0.1 # The probability that when choosing a new group to vote for, it will choose a never-elected group # Should be in the range of 0 to 1. Lower values bias towards incumbency. Higher values bias # towards novelty. VOTING_BOT_EXPLORE_PROBABILITY=0.7 # This value is used to determine how heavily a group's score weigh in the bot's voting decision # Should be a positive number. 1 is a linear relationship. Higher values increase the separation # among high scores. VOTING_BOT_SCORE_SENSITIVITY=5 # Schedule for the voting bot process, deployed via celotool, expressed in crontab syntax # This should run roughly once an epoch, but since epoch length is 16.66667 minutes, this # is not easily represented. # This schedule is "every 15 minutes", which is close enough. For some epochs, it will run twice VOTING_BOT_CRON_SCHEDULE="*/15 * * * *" # For ODIS e2e tests ODIS_SIGNER_SERVICE_URL=https://staging-pgpnp-signer0.azurefd.net ODIS_COMBINER_SERVICE_URL=https://us-central1-celo-phone-number-privacy-stg.cloudfunctions.net ODIS_BLOCKCHAIN_PROVIDER=https://alfajores-forno.celo-testnet.org # For WalletConnect relay WALLET_CONNECT_IMAGE_REPOSITORY = 'us.gcr.io/celo-testnet/walletconnect' WALLET_CONNECT_IMAGE_TAG = '1472bcaad57e3746498f7a661c42ff5cf9acaf5a' WALLET_CONNECT_REDIS_CLUSTER_ENABLED = false WALLET_CONNECT_REDIS_CLUSTER_USEPASSWORD = false # For dynamic environment variables # each context should have its own environment variables, generally of the form # _* CONTEXTS=azure-odis0-centralus,azure-odis1-centralus,azure-odis2-centralus # ODIS azure k8s deployments ODIS_SIGNER_DOCKER_IMAGE_REPOSITORY=us.gcr.io/celo-testnet/celo-monorepo ODIS_SIGNER_DOCKER_IMAGE_TAG=oblivious-decentralized-identifier-service-1.1.10 ODIS_SIGNER_BLOCKCHAIN_PROVIDER=https://alfajores-forno.celo-testnet.org # ODIS signer 0 Azure info AZURE_ODIS0_CENTRALUS_AZURE_SUBSCRIPTION_ID=97e2b592-255b-4f92-bce0-127257163c36 AZURE_ODIS0_CENTRALUS_AZURE_TENANT_ID=7cb7628a-e37c-4afb-8332-2029e418980e AZURE_ODIS0_CENTRALUS_AZURE_REGION_NAME=cus # ODIS signer 0 K8S cluster info AZURE_ODIS0_CENTRALUS_AZURE_KUBERNETES_RESOURCE_GROUP=staging-pgpnp-centralus AZURE_ODIS0_CENTRALUS_KUBERNETES_CLUSTER_NAME=staging-odis0-centralus # ODIS signer 0 Postgres DB AZURE_ODIS0_CENTRALUS_ODIS_SIGNER_DB_HOST=staging-pgpnp-centralus.postgres.database.azure.com AZURE_ODIS0_CENTRALUS_ODIS_SIGNER_DB_PORT=5432 AZURE_ODIS0_CENTRALUS_ODIS_SIGNER_DB_USERNAME=pgpnp@staging-pgpnp-centralus # ODIS signer 0 Key Vault AZURE_ODIS0_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_NAME=staging-pgpnp-cus AZURE_ODIS0_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_SECRET_NAME=bls-share # ODIS signer 0 Network AZURE_ODIS0_CENTRALUS_ODIS_NETWORK=staging # ODIS signer 0 Prometheus config AZURE_ODIS0_CENTRALUS_PROM_SCRAPE_JOB_NAME=scrape-odis AZURE_ODIS0_CENTRALUS_PROM_SCRAPE_LABELS="_generic_location: us-central1,_generic_namespace: odis-signer" AZURE_ODIS0_CENTRALUS_PROM_SCRAPE_TARGETS="staging-odis-signer.staging:3000" AZURE_ODIS0_CENTRALUS_PROM_SIDECAR_GCP_PROJECT=celo-phone-number-privacy-stg AZURE_ODIS0_CENTRALUS_PROM_SIDECAR_GCP_REGION=us-east1 AZURE_ODIS0_CENTRALUS_PROM_SIDECAR_DISABLED="true" # ODIS signer 1 Azure info AZURE_ODIS1_CENTRALUS_AZURE_SUBSCRIPTION_ID=97e2b592-255b-4f92-bce0-127257163c36 AZURE_ODIS1_CENTRALUS_AZURE_TENANT_ID=7cb7628a-e37c-4afb-8332-2029e418980e AZURE_ODIS1_CENTRALUS_AZURE_REGION_NAME=cus # ODIS signer 1 K8S cluster info AZURE_ODIS1_CENTRALUS_AZURE_KUBERNETES_RESOURCE_GROUP=staging-pgpnp-centralus AZURE_ODIS1_CENTRALUS_KUBERNETES_CLUSTER_NAME=staging-odis1-centralus # ODIS signer 1 Postgres DB AZURE_ODIS1_CENTRALUS_ODIS_SIGNER_DB_HOST=staging-pgpnp1-centralus.postgres.database.azure.com AZURE_ODIS1_CENTRALUS_ODIS_SIGNER_DB_PORT=5432 AZURE_ODIS1_CENTRALUS_ODIS_SIGNER_DB_USERNAME=pgpnp@staging-pgpnp1-centralus # ODIS Signer 1 Key Vault AZURE_ODIS1_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_NAME=staging-pgpnp-cus AZURE_ODIS1_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_SECRET_NAME=bls-share1 # ODIS Signer 1 Prometheus config AZURE_ODIS1_CENTRALUS_PROM_SCRAPE_JOB_NAME=scrape-odis AZURE_ODIS1_CENTRALUS_PROM_SCRAPE_LABELS="_generic_location: us-central1,_generic_namespace: odis-signer" AZURE_ODIS1_CENTRALUS_PROM_SCRAPE_TARGETS="staging-odis-signer.staging:3000" AZURE_ODIS1_CENTRALUS_PROM_SIDECAR_GCP_PROJECT=celo-phone-number-privacy-stg AZURE_ODIS1_CENTRALUS_PROM_SIDECAR_GCP_REGION=us-east1 AZURE_ODIS1_CENTRALUS_PROM_SIDECAR_DISABLED="true" # ODIS signer 2 Azure info AZURE_ODIS2_CENTRALUS_AZURE_SUBSCRIPTION_ID=97e2b592-255b-4f92-bce0-127257163c36 AZURE_ODIS2_CENTRALUS_AZURE_TENANT_ID=7cb7628a-e37c-4afb-8332-2029e418980e AZURE_ODIS2_CENTRALUS_AZURE_REGION_NAME=cus # ODIS signer 2 K8S cluster info AZURE_ODIS2_CENTRALUS_AZURE_KUBERNETES_RESOURCE_GROUP=staging-pgpnp-centralus AZURE_ODIS2_CENTRALUS_KUBERNETES_CLUSTER_NAME=staging-odis2-centralus # ODIS signer 2 Postgres DB AZURE_ODIS2_CENTRALUS_ODIS_SIGNER_DB_HOST=staging-pgpnp2-centralus.postgres.database.azure.com AZURE_ODIS2_CENTRALUS_ODIS_SIGNER_DB_PORT=5432 AZURE_ODIS2_CENTRALUS_ODIS_SIGNER_DB_USERNAME=pgpnp@staging-pgpnp2-centralus # ODIS Signer 2 Key Vault AZURE_ODIS2_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_NAME=staging-pgpnp-cus AZURE_ODIS2_CENTRALUS_ODIS_SIGNER_AZURE_KEYVAULT_SECRET_NAME=bls-share2 # ODIS Signer 2 Prometheus config AZURE_ODIS2_CENTRALUS_PROM_SCRAPE_JOB_NAME=scrape-odis AZURE_ODIS2_CENTRALUS_PROM_SCRAPE_LABELS="_generic_location: us-central1,_generic_namespace: odis-signer" AZURE_ODIS2_CENTRALUS_PROM_SCRAPE_TARGETS="staging-odis-signer.staging:3000" AZURE_ODIS2_CENTRALUS_PROM_SIDECAR_GCP_PROJECT=celo-phone-number-privacy-stg AZURE_ODIS2_CENTRALUS_PROM_SIDECAR_GCP_REGION=us-east1 AZURE_ODIS2_CENTRALUS_PROM_SIDECAR_DISABLED="true" # GRAFANA CLOUD config GRAFANA_CLOUD_PROJECT_ID="253914576835" GRAFANA_CLOUD_SECRET_NAME="grafana-cloud" GRAFANA_CLOUD_SECRET_VERSION="latest"