# this file contains generic properties  for local development
# which are not specific to the docker-compose environment ( i.e. hostnames, ports, etc )
WHISK_VERSION_NAME="local"
CONFIG_whisk_info_date="09/01/2016"
CONFIG_whisk_info_buildNo="latest"
WHISK_LOGS_DIR="/logs"

SERVICE_CHECK_HTTP=/ping
SERVICE_CHECK_TIMEOUT=2s
SERVICE_CHECK_INTERVAL=15s

DB_PREFIX=local_

CONFIG_whisk_couchdb_databases_WhiskAuth=local_subjects
CONFIG_whisk_couchdb_databases_WhiskEntity=local_whisks
CONFIG_whisk_db_actionsDdoc=whisks.v2.1.0
CONFIG_whisk_couchdb_databases_WhiskActivation=local_activations
CONFIG_whisk_db_activationsDdoc=whisks.v2.1.0
CONFIG_whisk_db_activationsFilterDdoc=whisks-filters.v2.1.0

KAFKA_DEFAULT_REPLICATION_FACTOR=1
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1
KAFKA_BROKER_ID=0
KAFKA_HEAP_OPTS=-Xmx512m -Xms512m
KAFKA_ADVERTISED_PORT=9092
KAFKA_TOPICS_COMPLETED_RETENTION_MS=300000
KAFKA_TOPICS_COMPLETED_RETENTION_BYTES=104857600
KAFKA_TOPICS_COMPLETED_SEGMENT_BYTES=536870912
KAFKA_REPLICATIONFACTOR=1

LIMITS_ACTIONS_INVOKES_PERMINUTE=60000
LIMITS_ACTIONS_INVOKES_CONCURRENT=5000
LIMITS_TRIGGERS_FIRES_PERMINUTE=60000
LIMITS_ACTIONS_INVOKES_CONCURRENTINSYSTEM=5000
LIMITS_ACTIONS_SEQUENCE_MAXLENGTH=20

CONFIG_whisk_loadbalancer_blackboxFraction=0.1
CONFIG_kamon_statsd_port=8125
CONFIG_whisk_loadbalancer_invokerUserMemory=1024m
CONFIG_whisk_containerPool_userMemory=1024m

CONFIG_whisk_userEvents_enabled=true

CONTROLLER_BLACKBOXFRACTION=0.10
CONTROLLER_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=1098 -Xdebug -Xrunjdwp:transport=dt_socket,address=9222,server=y,suspend=n
CONTROLLER_HA=False
CONTROLLER_INSTANCES=1
CONTROLLER_LOCALBOOKKEEPING=true

METRICS_KAMON=False
METRICS_LOG=True
CONFIG_kamon_statsd_port=8125

LOADBALANCER_ACTIVATIONCOUNTBEFORENEXTINVOKER=10
LOADBALANCER_USERMEMORY=1024m

CONFIG_whisk_docker_containerFactory_useRunc=False
INVOKER_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=1098 -Xdebug -Xrunjdwp:transport=dt_socket,address=9222,server=y,suspend=n
INVOKER_INSTANCES=1

AKKA_CLUSTER_HOST=localhost
AKKA_CLUSTER_SEED_NODES=[]
AKKA_CLUSTER_BIND_PORT=5221

WHISK_SYSTEM_KEY=whisk.system
RUNTIMES_MANIFEST={"runtimes":{"nodejs":[{"kind":"nodejs:6","default":true,"image":{"prefix":"openwhisk","name":"nodejs6action","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"},"stemCells":[{"count":2,"memory":"256 MB"}]},{"kind":"nodejs:8","default":false,"image":{"prefix":"openwhisk","name":"action-nodejs-v8","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}},{"kind":"nodejs:10","default":false,"image":{"prefix":"openwhisk","name":"action-nodejs-v10","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}],"python":[{"kind":"python:2","default":false,"image":{"prefix":"openwhisk","name":"python2action","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}},{"kind":"python:3","default":true,"image":{"prefix":"openwhisk","name":"python3action","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}],"swift":[{"kind":"swift:4.2","default":true,"image":{"prefix":"openwhisk","name":"action-swift-v4.2","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}],"java":[{"kind":"java","default":true,"image":{"prefix":"openwhisk","name":"java8action","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"},"requireMain":true}],"php":[{"kind":"php:7.3","default":true,"deprecated":false,"image":{"prefix":"openwhisk","name":"action-php-v7.3","tag":"latest"},"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}],"ruby":[{"kind":"ruby:2.5","default":true,"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"},"image":{"prefix":"openwhisk","name":"action-ruby-v2.5","tag":"latest"}}],"go":[{"kind":"go:1.11","default":true,"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"},"image":{"prefix":"openwhisk","name":"actionloop-golang-v1.11","tag":"latest"}}],"dotnet":[{"kind":"dotnet:2.2","default":true,"deprecated":false,"requireMain":true,"image":{"prefix":"openwhisk","name":"action-dotnet-v2.2","tag":"latest"},"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}],"ballerina":[{"kind":"ballerina:0.990","default":true,"image":{"prefix":"openwhisk","name":"action-ballerina-v0.990.2","tag":"latest"},"deprecated":false,"attached":{"attachmentName":"codefile","attachmentType":"text/plain"}}]},"blackboxes":[{"prefix":"openwhisk","name":"dockerskeleton","tag":"latest"}]}
