# Copyright (c) 2022 VEXXHOST, Inc.
#
# 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.

_horizon_helm_values:
  endpoints: "{{ openstack_helm_endpoints }}"
  images:
    tags: "{{ atmosphere_images | vexxhost.atmosphere.openstack_helm_image_tags('horizon') }}"
  pod:
    replicas:
      server: 3
  conf:
    horizon:
      local_settings:
        config:
          disallow_iframe_embed: "True"
          secure_proxy_ssl_header: "True"
          horizon_images_upload_mode: direct
          openstack_enable_password_retrieve: "True"
          raw:
            WEBSSO_KEYSTONE_URL: https://{{ openstack_helm_endpoints['identity']['host_fqdn_override']['public']['host'] }}/v3
      local_settings_d:
        _50_monasca_ui_settings: "{{ lookup('file', '50-monasca-ui-settings.py') }}"
      extra_panels:
        - designatedashboard
        - heat_dashboard
        - ironic_ui
        - magnum_ui
        - monitoring
        - neutron_vpnaas_dashboard
        - octavia_dashboard
        - senlin_dashboard
      policy:
        monitoring:
          default: "@"
          monasca_user_role: role:monasca-user
          monitoring:monitoring: rule:monasca_user_role
          monitoring:kibana_access: rule:monasca_user_role
  manifests:
    ingress_api: false
    service_ingress_api: false

_horizon_ingress_annotations:
  nginx.ingress.kubernetes.io/proxy-body-size: "5000m"
  nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
