blob: 5d8b70e38fb1c956d9ff1c6b756b665829fe9038 [file] [log] [blame]
{
"id": "/{{service.name}}",
"cpus": {{service.cpus}},
"mem": {{service.mem}},
"instances": {{service.instances}},
"env": {
"JAVA_OPTS": "{{service.java_opts}}",
"WHISK_VERSION_NAME": "{{service.version_name}}",
"WHISK_VERSION_DATE": "{{service.version_date}}",
"WHISK_VERSION_BUILDNO": "{{service.version_buildno}}",
"WHISK_LOGS_DIR": "/logs",
"DB_PROVIDER": "{{couchdb.provider}}",
"DB_PROTOCOL": "{{couchdb.protocol}}",
"DB_PORT": "{{couchdb.port}}",
"DB_HOST": "{{couchdb.host}}",
"DB_USERNAME": "{{couchdb.username}}",
"DB_PASSWORD": "{{couchdb.password}}",
"DB_WHISK_ACTIONS": "{{couchdb.actions_db}}",
"CONFIG_whisk_db_actionsDdoc": "{{couchdb.actions_db_ddoc}}",
"DB_WHISK_ACTIVATIONS": "{{couchdb.activations_db}}",
"CONFIG_whisk_db_activationsDdoc": "{{couchdb.activations_db_ddoc}}",
"CONFIG_whisk_db_activationsFilterDdoc": "{{couchdb.activations_filter_ddoc}}",
"DB_WHISK_AUTHS": "{{couchdb.auths_db}}",
"LIMITS_ACTIONS_INVOKES_PERMINUTE": "{{limits.actions_invokes_per_minute}}",
"LIMITS_ACTIONS_INVOKES_CONCURRENT": "{{limits.actions_invokes_concurrent}}",
"LIMITS_TRIGGERS_FIRES_PERMINUTE": "{{limits.triggers_fires_per_minute}}",
"LIMITS_ACTIONS_INVOKES_CONCURRENTINSYSTEM": "{{limits.actions_invokes_concurrent_system}}",
"LIMITS_ACTIONS_SEQUENCE_MAXLENGTH": "{{limits.actions_sequence_max_length}}",
"COMPONENT_NAME": "controller",
"PORT": "{{service.port}}",
"KAFKA_HOSTS": "{{kafka.hosts}}",
"CONFIG_whisk_kafka_replicationFactor": "{{kafka.replication_factor}}",
"CONFIG_whisk_kafka_topics_cacheInvalidation_retentionBytes": "{{kafka.cache_invalidation_retention_bytes}}",
"CONFIG_whisk_kafka_topics_cacheInvalidation_retentionMs": "{{kafka.cache_invalidation_retention_ms}}",
"CONFIG_whisk_kakfa_topics_cacheInvalidation_segmentBytes": "{{kafka.cache_invalidation_segment_bytes}}",
"CONFIG_whisk_kafka_topics_completed_retentionBytes": "{{kafka.completed_retention_bytes}}",
"CONFIG_whisk_kafka_topics_completed_retentionMs": "{{kafka.completed_retention_ms}}",
"CONFIG_whisk_kakfa_topics_completed_segmentBytes": "{{kafka.completed_segment_bytes}}",
"CONFIG_whisk_kafka_topics_health_retentionBytes": "{{kafka.health_retention_bytes}}",
"CONFIG_whisk_kafka_topics_health_retentionMs": "{{kafka.health_retention_ms}}",
"CONFIG_whisk_kakfa_topics_health_segmentBytes": "{{kafka.health_segment_bytes}}",
"RUNTIMES_MANIFEST": "{\"runtimes\":{\"nodejs\":[{\"kind\":\"nodejs\",\"image\":{\"name\":\"nodejsaction\"},\"deprecated\":true},{\"kind\":\"nodejs:6\",\"default\":true,\"image\":{\"name\":\"nodejs6action\"}}],\"python\":[{\"kind\":\"python\",\"image\":{\"name\":\"python2action\"}},{\"kind\":\"python:2\",\"default\":true,\"image\":{\"name\":\"python2action\"}},{\"kind\":\"python:3\",\"image\":{\"name\":\"python3action\"}}],\"swift\":[{\"kind\":\"swift\",\"image\":{\"name\":\"swiftaction\"},\"deprecated\":true},{\"kind\":\"swift:3\",\"default\":true,\"image\":{\"name\":\"swift3action\"}}],\"java\":[{\"kind\":\"java\",\"attached\":{\"attachmentName\":\"jarfile\",\"attachmentType\":\"application\/java-archive\"},\"sentinelledLogs\":false,\"requireMain\":true,\"image\":{\"name\":\"java8action\"},\"default\":true}]}}",
"LOADBALANCER_HOST": "{{apigateway.host}}",
"CONTROLLER_INSTANCES": "1",
"CONTROLLER_LOCALBOOKKEEPING": "true",
"CONTROLLER_HA": "false",
"AKKA_CLUSTER_SEED_NODES": "[]",
"METRICS_KAMON": "{{service.metrics_kamon}}",
"METRICS_LOG": "{{service.metrics_log}}",
"CONFIG_whisk_loadbalancer_invokerBusyThreshold": "{{service.invoker_busy_threshold}}",
"CONFIG_whisk_loadbalancer_blackboxFraction": "{{service.blackbox_fraction}}",
"CONFIG_akka_actor_provider":"{{akka.actor_provider}}",
"CONFIG_akka_remote_netty_tcp_hostname":"{{akka.cluster_hostname}}",
"CONFIG_akka_remote_netty_tcp_port":"{{akka.cluster_port}}",
"CONFIG_akka_remote_netty_tcp_bindPort":"{{akka.cluster_bind_port}}",
{{#service.additional_vars}}
"{{key}}":"{{value}}",
{{/service.additional_vars}}
"CONFIG_whisk_memory_min": "{{limits.actions_memory_min}}",
"CONFIG_whisk_memory_max": "{{limits.actions_memory_max}}",
"CONFIG_whisk_memory_std": "{{limits.actions_memory_std}}"
},
"container": {
"type": "DOCKER",
"docker": {
"image": "{{service.image}}",
"network": "BRIDGE",
"parameters": [
{
"key":"label",
"value":"{{service.docker_label}}"
},
{
"key":"log-driver",
"value":"{{service.docker_log_driver}}"
}
],
"portMappings": [
{
"containerPort": 8888,
"hostPort": {{service.port}},
"servicePort": 0,
"protocol": "tcp"
}
],
"forcePullImage": true
}
},
"cmd": "/bin/sh -c \"exec /init.sh 0 >> /dev/stdout\"",
"healthChecks": [
{
"path": "/ping",
"protocol": "HTTP",
"gracePeriodSeconds": 30,
"intervalSeconds": 15,
"timeoutSeconds": 2,
"maxConsecutiveFailures": 3
}
],
"labels": {
"DCOS_SERVICE_NAME": "{{service.name}}"
}
}