# Number of worker processes to spawn.
# Set to 0 to run everything in a single process without clustering.
# Use 'ncpu' to run as many workers as there are CPU units
num_workers: 0

# Log error messages and gracefully restart a worker if v8 reports that it
# uses more heap (note: not RSS) than this many mb.
worker_heap_limit_mb: 250

# Logger info
logging:
  level: trace
  streams:
    - type: debug

services:
  - name: kartotherian
    # a relative path or the name of an npm package, if different from name
    module: ./app.js
    # optionally, a version constraint of the npm package
    # version: ^0.4.0
    # per-service config
    conf:
      port: 6533
      # interface: localhost # uncomment to only listen on localhost
      # more per-service config settings
      # the location of the spec, defaults to spec.yaml if not specified
      spec: ./spec.template.yaml
      # allow cross-domain requests to the API (default '*')
      cors: '*'
      # to disable use:
      # cors: false
      # to restrict to a particular domain, use:
      # cors: restricted.domain.org
      # content for the CSP headers
      # csp: false  # uncomment this line to disable sending them
      # URL of the outbound proxy to use (complete with protocol)
      # proxy: http://my.proxy.org:8080
      # the list of domains for which not to use the proxy defined above
      # no_proxy_list:
      #   - domain1.com
      #   - domain2.org
      # the list of incoming request headers that can be logged; if left empty,
      # the following headers are allowed: cache-control, content-length,
      # content-type, if-match, user-agent, x-request-id
      # log_header_whitelist:
      #   - cache-control
      #   - content-length
      #   - content-type
      #   - if-match
      #   - user-agent
      #   - x-request-id
      # Uncomment to restrict connections to localhost only
      # interface: localhost
      # Uncomment to disable the X-Powered-By header
      # expose_version: false
      # Uncomment to prevent `revid` pass-through
      # versioned_maps: false

      # Kartotherian variables and sources
      variables: {}
      sources: sources.external.yaml

      modules:
      - "tilelive-http"
      - "tilelive-tmstyle"
      - "@wikimedia/kartotherian-autogen"
      - "@wikimedia/kartotherian-babel"
      - "@wikimedia/kartotherian-overzoom"
      - "@wikimedia/kartotherian-substantial"
      - "@kartotherian/tilelive-vector"
      - "@mapbox/tilejson"

      requestHandlers:
      - "@wikimedia/kartotherian-geoshapes"
      - "@wikimedia/kartotherian-maki"
      - "@wikimedia/kartotherian-snapshot"

      geoshapes:
        allowUserQueries: true
        database: gis
        host: localhost
        lineTable: wikidata_relation_members
        password: ''
        polygonTable: wikidata_relation_polygon
        table: planet_osm_polygon
        user: ''
        wikidataQueryService: https://query.wikidata.org/bigdata/namespace/wdq/sparql

      # allowedDomains:
      #   http:
      #     - localhost:8080
      #     - 127.0.0.1:8080
      #     - wmflabs.org
      #   https:
      #     - mediawiki.org
      #     - wikibooks.org
      #     - wikidata.org
      #     - wikimedia.org
      #     - wikimediafoundation.org
      #     - wikinews.org
      #     - wikipedia.org
      #     - wikiquote.org
      #     - wikisource.org
      #     - wikiversity.org
      #     - wikivoyage.org
      #     - wiktionary.org
