You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
3.2 KiB
97 lines
3.2 KiB
heat_template_version: 2016-10-14 |
|
|
|
description: > |
|
Horizon service configured with Puppet |
|
|
|
parameters: |
|
ServiceNetMap: |
|
default: {} |
|
description: Mapping of service_name -> network name. Typically set |
|
via parameter_defaults in the resource registry. This |
|
mapping overrides those in ServiceNetMapDefaults. |
|
type: json |
|
Debug: |
|
default: '' |
|
description: Set to True to enable debugging on all services. |
|
type: string |
|
DefaultPasswords: |
|
default: {} |
|
type: json |
|
EndpointMap: |
|
default: {} |
|
description: Mapping of service endpoint -> protocol. Typically set |
|
via parameter_defaults in the resource registry. |
|
type: json |
|
HorizonAllowedHosts: |
|
default: '*' |
|
description: A list of IP/Hostname for the server Horizon is running on. |
|
Used for header checks. |
|
type: comma_delimited_list |
|
HorizonPasswordValidator: |
|
description: Regex for password validation |
|
type: string |
|
default: '' |
|
HorizonPasswordValidatorHelp: |
|
description: Help text for password validation |
|
type: string |
|
default: '' |
|
HorizonSecret: |
|
description: Secret key for Django |
|
type: string |
|
hidden: true |
|
default: '' |
|
MemcachedIPv6: |
|
default: false |
|
description: Enable IPv6 features in Memcached. |
|
type: boolean |
|
MonitoringSubscriptionHorizon: |
|
default: 'overcloud-horizon' |
|
type: string |
|
|
|
conditions: |
|
|
|
debug_empty: {equals : [{get_param: Debug}, '']} |
|
|
|
outputs: |
|
role_data: |
|
description: Role data for the Horizon role. |
|
value: |
|
service_name: horizon |
|
monitoring_subscription: {get_param: MonitoringSubscriptionHorizon} |
|
config_settings: |
|
map_merge: |
|
- horizon::allowed_hosts: {get_param: HorizonAllowedHosts} |
|
tripleo.horizon.firewall_rules: |
|
'126 horizon': |
|
dport: |
|
- 80 |
|
- 443 |
|
horizon::enable_secure_proxy_ssl_header: true |
|
horizon::disable_password_reveal: true |
|
horizon::enforce_password_check: true |
|
horizon::cache_backend: django.core.cache.backends.memcached.MemcachedCache |
|
horizon::django_session_engine: 'django.contrib.sessions.backends.cache' |
|
horizon::vhost_extra_params: |
|
add_listen: false |
|
priority: 10 |
|
access_log_format: '%a %l %u %t \"%r\" %>s %b \"%%{}{Referer}i\" \"%%{}{User-Agent}i\"' |
|
options: ['FollowSymLinks','MultiViews'] |
|
horizon::bind_address: {get_param: [ServiceNetMap, HorizonNetwork]} |
|
horizon::keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri]} |
|
horizon::password_validator: {get_param: [HorizonPasswordValidator]} |
|
horizon::password_validator_help: {get_param: [HorizonPasswordValidatorHelp]} |
|
horizon::secret_key: |
|
yaql: |
|
expression: $.data.passwords.where($ != '').first() |
|
data: |
|
passwords: |
|
- {get_param: HorizonSecret} |
|
- {get_param: [DefaultPasswords, horizon_secret]} |
|
memcached_ipv6: {get_param: MemcachedIPv6} |
|
- |
|
if: |
|
- debug_empty |
|
- {} |
|
- horizon::django_debug: {get_param: Debug} |
|
step_config: | |
|
include ::tripleo::profile::base::horizon
|
|
|