#################################################
#                global configs                 #
#################################################
# it's not recommended to change this version
version: 2.5.0
admin:
  enabled: true
  # replicas of admin, K8s will load balance the requests
  replicas: 1
  image: apache/shenyu-admin
  service:
    port: 9095
    targetPod: 9095
    # if you want to change "admin service port", please edit here
    nodePort: 31095
  # jvm options for admin
  javaOpts: ""
  # K8s resources quota for admin
  resources:
  #    requests:
  #      cpu: 100m
  #      memory: 512Mi
  #    limits:
  #      cpu: 1000m
  #      memory: 1024Mi
  autoscaling:
    enabled: false
    minReplicas: 1
    maxReplicas: 10
    targetCPUUtilizationPercentage: 75
    targetMemoryUtilizationPercentage: 75
  ingress:
    enabled: false
    className: ""
    annotations: {}
    # kubernetes.io/ingress.class: nginx
    # kubernetes.io/tls-acme: "true"
    hosts:
      - host: shenyu-admin.local
        paths:
          - path: /
            pathType: ImplementationSpecific
    tls: []
    #  - secretName: chart-example-tls
    #    hosts:
    #      - chart-example.local
bootstrap:
  enabled: true
  # replicas of bootstrap, K8s will load balance the requests
  replicas: 2
  image: apache/shenyu-bootstrap
  service:
    port: 9195
    targetPod: 9195
    # if you want to change "bootstrap service port", please edit here
    nodePort: 31195
  # jvm options for bootstrap
  javaOpts: ""
  # K8s resources quota for bootstrap
  resources:
  #    requests:
  #      cpu: 100m
  #      memory: 512Mi
  #    limits:
  #      cpu: 1000m
  #      memory: 1024Mi

#################################################
#     datasource config of shenyu-admin         #
#################################################

dataSource:
  # options: [h2, mysql, pg, oracle]
  active: h2
  # init database and tables
  initEnabled: true
  h2:
    username: sa
    password: sa
  mysql:
    ip:
    port: 3306
    username: root
    password:
    database: shenyu
    # mysql driver class name
    # mysql5   : com.mysql.jdbc.Driver
    # mysql6-8 : com.mysql.cj.jdbc.Driver
    driverClass: com.mysql.cj.jdbc.Driver
    connectorVersion: 8.0.23
  pg:
    ip:
    port: 5432
    username: postgres
    password:
    database: shenyu
    # pg driver class name
    driverClass: org.postgresql.Driver
    connectorVersion: 42.5.0
  oracle:
    ip:
    port: 1521
    username: root
    password:
    serviceName: shenyu
    # oracle driver class name
    driverClass: oracle.jdbc.OracleDriver
    connectorVersion: 19.3.0.0

#################################################
#     application.yml of admin and bootstrap    #
#################################################

applicationConfig:
  bootstrap:
    server:
      # Do not change this port, it is used by the Kubernetes service
      port: 9195
      address: 0.0.0.0

    spring:
      main:
        allow-bean-definition-overriding: true
        allow-circular-references: true
      application:
        name: shenyu-bootstrap
      codec:
        max-in-memory-size: 2MB
      cloud:
        discovery:
          enabled: false
        nacos:
          discovery:
            # Spring Cloud Alibaba Dubbo use this.
            server-addr: 127.0.0.1:8848
            enabled: false
            namespace: ShenyuRegisterCenter

    # if you want use ribbon please config every server.
    # springCloud-test:
    #  ribbon:
    #    NIWSServerListClassName: com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList

    eureka:
      client:
        enabled: false
        serviceUrl:
          defaultZone: http://localhost:8761/eureka/
      instance:
        prefer-ip-address: true

    #  security:
    #    oauth2:
    #      client:
    #        registration:
    #          <your client-registration-id>:
    #            client-id: <your client-id>
    #            client-secret: <your client-secret>
    #        provider:
    #          <your client-registration-id>:
    #            authorization-uri: <your authorization-uri>
    #            token-uri: <your access-token-uri>
    #            user-info-uri: <your user-info-uri>
    #            jwk-set-uri: <your jwk-set-uri>

    management:
      health:
        defaults:
          enabled: false

    shenyu:
      matchCache:
        enabled: false
        # 256MB
        maxFreeMemory: 256
      netty:
        http:
          # set to false, user can custom the netty tcp server config.
          webServerFactoryEnabled: true
          selectCount: 1
          workerCount: 4
          accessLog: false
          serverSocketChannel:
            soRcvBuf: 87380
            soBackLog: 128
            soReuseAddr: false
            connectTimeoutMillis: 10000
            writeBufferHighWaterMark: 65536
            writeBufferLowWaterMark: 32768
            writeSpinCount: 16
            autoRead: false
            allocType: "pooled"
            messageSizeEstimator: 8
            singleEventExecutorPerGroup: true
          socketChannel:
            soKeepAlive: false
            soReuseAddr: false
            soLinger: -1
            tcpNoDelay: true
            soRcvBuf: 87380
            soSndBuf: 16384
            ipTos: 0
            allowHalfClosure: false
            connectTimeoutMillis: 10000
            writeBufferHighWaterMark: 65536
            writeBufferLowWaterMark: 32768
            writeSpinCount: 16
            autoRead: false
            allocType: "pooled"
            messageSizeEstimator: 8
            singleEventExecutorPerGroup: true
      #  httpclient:
      #    strategy: webClient
      #    connectTimeout: 45000
      #    responseTimeout: 3000
      #    readerIdleTime: 3000
      #    writerIdleTime: 3000
      #    allIdleTime: 3000
      #    readTimeout: 3000
      #    writeTimeout: 3000
      #    wiretap: false
      #    keepAlive: false
      #    maxInMemorySize: 1 #1mb
      #    pool:
      #      type: ELASTIC
      #      name: proxy
      #      maxConnections: 16
      #      acquireTimeout: 45000
      #      maxIdleTime: 3000
      #    proxy:
      #      host:
      #      port:
      #      username:
      #      password:
      #      nonProxyHostsPattern:
      #    ssl:
      #      useInsecureTrustManager: true
      #      keyStoreType: PKCS12
      #      keyStorePath: classpath:keystore.p12
      #      keyStorePassword: 123456
      #      keyStoreProvider:
      #      keyPassword: 123456
      #      trustedX509Certificates:
      #      handshakeTimeout:
      #      closeNotifyFlushTimeout:
      #      closeNotifyReadTimeout:
      #      defaultConfigurationType:
      #    threadPool:
      #      prefix: shenyu
      #      selectCount: 1
      #      workerCount: 8
      #      daemon: true
      instance:
        enabled: false
        # zookeeper, etcd, consul
        registerType: zookeeper
        # http://localhost:2379 #localhost:8848
        serverLists: localhost:2181
        props:
      cross:
        enabled: true
        allowedHeaders:
        allowedMethods: "*"
        # the same of Access-Control-Allow-Origin: "*"
        allowedAnyOrigin: true
        #    allowedOrigin:
        # format : schema://prefix spacer domain
        # Access-Control-Allow-Origin: "http://a.apache.org,http://b.apache.org"
        #      spacer: "."
        #      domain: apache.org
        #      prefixes:
        #        - a # a.apache.org
        #        - b # b.apache.org
        #      origins:
        #        - c.apache.org
        #        - d.apache.org
        #        - http://e.apache.org
        #      originRegex: ^http(|s)://(.*\.|)abc.com$
        allowedExpose: ""
        maxAge: "18000"
        allowCredentials: true

      switchConfig:
        local: true
      file:
        enabled: true
        maxSize: 10
      sync:
        websocket:
          urls: ws://{{ template "common.names.fullname" . }}-admin.{{.Release.Namespace}}.svc.cluster.local:9095/websocket
          allowOrigin: ws://{{ template "common.names.fullname" . }}-bootstrap.{{.Release.Namespace}}.svc.cluster.local:9195
      #    zookeeper:
      #      url: localhost:2181
      #      sessionTimeout: 5000
      #      connectionTimeout: 2000
      #    http:
      #      url: http://{{ template "common.names.fullname" . }}-admin.{{.Release.Namespace}}.svc.cluster.local:9095
      #      username:
      #      password:
      #    nacos:
      #      url: localhost:8848
      #      namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
      #      username:
      #      password:
      #      acm:
      #        enabled: false
      #        endpoint: acm.aliyun.com
      #        namespace:
      #        accessKey:
      #        secretKey:
      #    etcd:
      #      url: http://localhost:2379
      #    consul:
      #      url: http://localhost:8500
      #      waitTime: 1000
      #      watchDelay: 1000
      exclude:
        enabled: false
        paths:
          - /favicon.ico
      fallback:
        enabled: false
        paths:
          - /fallback/hystrix
          - /fallback/resilience4j
      health:
        enabled: false
        paths:
          - /actuator/health
          - /health_check
      extPlugin:
        path:
        enabled: true
        threads: 1
        scheduleTime: 300
        scheduleDelay: 30
      scheduler:
        enabled: false
        type: fixed
        threads: 16
      upstreamCheck:
        enabled: false
        timeout: 3000
        healthyThreshold: 1
        unhealthyThreshold: 1
        interval: 5000
        printEnabled: true
        printInterval: 60000
      ribbon:
        serverListRefreshInterval: 10000
      metrics:
        enabled: false
        name: prometheus
        host: 127.0.0.1
        port: 8090
        jmxConfig:
        props:
          jvm_enabled: true
      #  plugins:
      #    rate-limiter.enabled: false
      local:
        enabled: false
        sha512Key: "BA3253876AED6BC22D4A6FF53D8406C6AD864195ED144AB5C87621B6C233B548BAEAE6956DF346EC8C17F5EA10F35EE3CBC514797ED7DDD3145464E2A0BAB413"
    #  sharedPool:
    #    enable: true
    #    prefix: "shenyu-shared"
    #    corePoolSize: 200
    #    maximumPoolSize: 2000
    #    keepAliveTime: 60000
    #    # 1GB
    #    maxWorkQueueMemory: 1073741824
    #    # 256MB
    #    maxFreeMemory: 268435456

    logging:
      level:
        root: info
        org.springframework.boot: info
        org.apache.ibatis: info
        org.apache.shenyu.bonuspoint: info
        org.apache.shenyu.lottery: info
        org.apache.shenyu: info
  admin:
    server:
      # Do not change this port, it is used by the Kubernetes service
      port: 9095
      address: 0.0.0.0

    spring:
      profiles:
        active: "{{ .Values.dataSource.active }}"
      thymeleaf:
        cache: true
        encoding: utf-8
        enabled: true
        prefix: classpath:/static/
        suffix: .html
      mvc:
        pathmatch:
          matching-strategy: ant_path_matcher

    mybatis:
      config-location: classpath:/mybatis/mybatis-config.xml
      mapper-locations: classpath:/mappers/*.xml

    shenyu:
      register:
        # http #zookeeper #etcd #nacos #consul
        registerType: http
        # localhost:2181 #http://localhost:2379 #localhost:8848
        serverLists:
        props:
          sessionTimeout: 5000
          connectionTimeout: 2000
          checked: true
          zombieCheckTimes: 5
          scheduledTime: 10
          nacosNameSpace: ShenyuRegisterCenter
      sync:
        websocket:
          enabled: true
          messageMaxSize: 10240
          allowOrigins: ws://{{ template "common.names.fullname" . }}-admin.{{.Release.Namespace}}.svc.cluster.local:9095;ws://{{ template "common.names.fullname" . }}-bootstrap.{{.Release.Namespace}}.svc.cluster.local:9195;
      #      zookeeper:
      #        url: localhost:2181
      #        sessionTimeout: 5000
      #        connectionTimeout: 2000
      #      http:
      #        enabled: true
      #      nacos:
      #        url: localhost:8848
      #        namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
      #        username:
      #        password:
      #        acm:
      #          enabled: false
      #          endpoint: acm.aliyun.com
      #          namespace:
      #          accessKey:
      #          secretKey:
      #    etcd:
      #      url: http://localhost:2379
      #    consul:
      #      url: http://localhost:8500
      ldap:
        enabled: false
        url: ldap://xxxx:xxx
        bind-dn: cn=xxx,dc=xxx,dc=xxx
        password: xxxx
        base-dn: ou=xxx,dc=xxx,dc=xxx
        object-class: person
        login-field: cn
      jwt:
        expired-seconds: 86400000
      shiro:
        white-list:
          - /
          - /favicon.*
          - /static/**
          - /index**
          - /platform/login
          - /websocket
          - /error
          - /actuator/health
          - /swagger-ui.html
          - /webjars/**
          - /swagger-resources/**
          - /v2/api-docs
          - /csrf
      swagger:
        enable: true

    logging:
      level:
        root: info
        org.springframework.boot: info
        org.apache.ibatis: info
        org.apache.shenyu.bonuspoint: info
        org.apache.shenyu.lottery: info
        org.apache.shenyu: info
