# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Default values for keystone.
# This is a YAML-formatted file.
# Declare name/value pairs to be passed into your templates.
# name: value


replicas:
  api: 1
  cfn: 1
  cloudwatch: 1
  engine: 1

labels:
  node_selector_key: openstack-control-plane
  node_selector_value: enabled

images:
  db_init: docker.io/kolla/ubuntu-source-heat-api:3.0.3
  db_sync: docker.io/kolla/ubuntu-source-heat-api:3.0.3
  ks_user: docker.io/kolla/ubuntu-source-kolla-toolbox:3.0.3
  ks_service: docker.io/kolla/ubuntu-source-kolla-toolbox:3.0.3
  ks_endpoints: docker.io/kolla/ubuntu-source-kolla-toolbox:3.0.3
  api: docker.io/kolla/ubuntu-source-heat-api:3.0.3
  cfn: docker.io/kolla/ubuntu-source-heat-api:3.0.3
  cloudwatch: docker.io/kolla/ubuntu-source-heat-api:3.0.3
  engine: docker.io/kolla/ubuntu-source-heat-engine:3.0.3
  dep_check: docker.io/kolla/ubuntu-source-kubernetes-entrypoint:4.0.0
  pull_policy: "IfNotPresent"

upgrades:
  revision_history: 3
  pod_replacement_strategy: RollingUpdate
  rolling_update:
    max_unavailable: 1
    max_surge: 3

keystone_secrets:
  admin: "heat-env-keystone-admin"
  user: "heat-env-keystone-user"
  trustee: "heat-env-keystone-trustee"
  stack: "heat-env-keystone-stack-user"

keystone:
  admin_user: "admin"
  admin_user_domain: "default"
  admin_password: "password"
  admin_project_name: "admin"
  admin_project_domain: "default"
  admin_region_name: "RegionOne"

  heat_user_role: "admin"

  heat_trustee_role: "admin"
  heat_trustee_region_name: "RegionOne"

  heat_stack_user_role: "admin"
  heat_stack_region_name: "RegionOne"


conf:
  paste:
    override:
    append:
  policy:
    override:
    append:
  heat:
    override:
    append:
    default:
      heat:
        common:
          config:
            stack_user_domain_name: heat
            stack_domain_admin: heat-domain
            stack_domain_admin_password: password
            num_engine_workers: 4
            trusts_delegated_roles: Member
    keystone_authtoken:
      keystonemiddleware:
        auth_token:
          auth_type: password
          auth_version: v3
          region_name: RegionOne
          project_domain_name: default
          project_name: service
          user_domain_name: default
          username: heat
          password: password
    trustee:
      heat:
        common:
          context:
            password: password
            user_domain_name: default
            username: heat-trust
            project_domain_name: default
            project_name: service
    heat_api:
      heat:
        common:
          wsgi:
            bind_port: 8004
            workers: 4
    heat_api_cloudwatch:
      heat:
        common:
          wsgi:
            bind_port: 8003
            workers: 4
    heat_api_cfn:
      heat:
        common:
          wsgi:
            bind_port: 8000
            workers: 4
    paste_deploy:
      heat.common:
        config:
          api_paste_config: /etc/heat/api-paste.ini
    clients:
      heat:
        common:
          config:
            endpoint_type: internalURL
    clients_keystone:
      heat:
        common:
          config:
            endpoint_type: internalURL

network:
  api:
    name: "heat-api"
    proto: "http"
    node_port:
      enabled: false
      port: 30004
  cfn:
    name: "heat-cfn"
    proto: "http"
    node_port:
      enabled: false
      port: 30800
  cloudwatch:
    name: "heat-cloudwatch"
    proto: "http"
    node_port:
      enabled: false
      port: 30003

dependencies:
  db_init:
    jobs:
    - mariadb-seed
    service:
    - mariadb
  db_sync:
    jobs:
    - heat-db-init
    service:
    - mariadb
  ks_user:
    service:
    - keystone-api
  ks_service:
    service:
    - keystone-api
  ks_endpoints:
    jobs:
    - heat-ks-service
    service:
    - keystone-api
  api:
    jobs:
    - heat-db-sync
    - heat-ks-user
    - heat-ks-endpoints
    service:
    - keystone-api
    - mariadb
  cfn:
    jobs:
    - heat-db-sync
    - heat-ks-user
    - heat-ks-endpoints
    service:
    - keystone-api
    - mariadb
  cloudwatch:
    jobs:
    - heat-db-sync
    - heat-ks-user
    - heat-ks-endpoints
    service:
    - keystone-api
    - mariadb
  engine:
    jobs:
    - heat-db-sync
    - heat-ks-user
    - heat-ks-endpoints
    service:
    - keystone-api
    - mariadb

# typically overriden by environmental
# values, but should include all endpoints
# required by this chart
endpoints:
  identity:
    name: keystone
    hosts:
      default: keystone-api
    path: /v3
    scheme: 'http'
    port:
      admin: 35357
      api: 5000
  orchestration:
    name: heat
    hosts:
      default: heat-api
    path: '/v1/%(project_id)s'
    scheme: 'http'
    port:
      api: 8004
  cloudformation:
    name: heat-cfn
    hosts:
      default: heat-cfn
    path: /v1
    scheme: 'http'
    port:
      api: 8000
# Cloudwatch does not get an entry in the keystone service catalog
  cloudwatch:
    name: heat-cloudwatch
    hosts:
      default: heat-cloudwatch
    path: null
    type: null
    scheme: 'http'
    port:
      api: 8003
  oslo_db:
    auth:
      admin:
        username: root
        password: password
      user:
        username: heat
        password: password
    hosts:
      default: mariadb
    path: /heat
    scheme: mysql+pymysql
    port:
      mysql: 3306
  oslo_cache:
    hosts:
      default: memcache
    port:
      memcache: 11211
  oslo_messaging:
    auth:
      admin:
        username: admin
        password: password
      user:
        username: rabbitmq
        password: password
    hosts:
      default: rabbitmq
    path: /
    scheme: rabbit
    port:
      amqp: 5672

resources:
  enabled: false
  heat_api:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_cfn:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_cloudwatch:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_db_init:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_db_sync:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_ks_endpoints:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_ks_service:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_ks_user:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"
  heat_engine:
    requests:
      memory: "124Mi"
      cpu: "100m"
    limits:
      memory: "1024Mi"
      cpu: "2000m"

mounts:
  heat_api:
    init_container: null
    heat_api:
  heat_cfn:
    init_container: null
    heat_cfn:
  heat_cloudwatch:
    init_container: null
    heat_cloudwatch:
  heat_engine:
    init_container: null
    heat_engine: