# 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={"blackboxes": [{"prefix": "openwhisk", "tag": "nightly", "name": "dockerskeleton"}], "runtimes": {"dotnet": [{"kind": "dotnet:2.2", "default": true, "deprecated": false, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-dotnet-v2.2"}, "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "requireMain": true}, {"kind": "dotnet:3.1", "default": false, "deprecated": false, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-dotnet-v3.1"}, "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "requireMain": true}], "java": [{"kind": "java:8", "default": true, "deprecated": false, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "java8action"}, "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "requireMain": true}], "go": [{"default": true, "deprecated": false, "kind": "go:1.15", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-golang-v1.15"}}], "nodejs": [{"default": false, "deprecated": false, "kind": "nodejs:12", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-nodejs-v12"}}, {"kind": "nodejs:14", "default": true, "deprecated": false, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-nodejs-v14"}, "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "stemCells": [{"reactive": {"threshold": 1, "minCount": 1, "maxCount": 4, "increment": 1, "ttl": "2 minutes"}, "initialCount": 2, "memory": "256 MB"}]}], "python": [{"default": true, "deprecated": false, "kind": "python:3", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-python-v3.7"}}], "swift": [{"default": false, "deprecated": false, "kind": "swift:5.1", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-swift-v5.1"}}, {"default": true, "deprecated": false, "kind": "swift:5.3", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-swift-v5.3"}}, {"default": false, "deprecated": false, "kind": "swift:5.4", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-swift-v5.4"}}], "php": [{"default": false, "deprecated": false, "kind": "php:7.3", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-php-v7.3"}}, {"default": true, "deprecated": false, "kind": "php:7.4", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-php-v7.4"}}, {"default": false, "deprecated": false, "kind": "php:8.0", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-php-v8.0"}}], "ruby": [{"default": true, "deprecated": false, "kind": "ruby:2.5", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-ruby-v2.5"}}], "rust": [{"default": true, "deprecated": false, "kind": "rust:1.34", "attached": {"attachmentType": "text/plain", "attachmentName": "codefile"}, "image": {"prefix": "openwhisk", "tag": "nightly", "name": "action-rust-v1.34"}}]}}
