1 heat_template_version: pike
4 Horizon service configured with Puppet
9 description: Dictionary packing service data
13 description: Mapping of service_name -> network name. Typically set
14 via parameter_defaults in the resource registry. This
15 mapping overrides those in ServiceNetMapDefaults.
19 description: Set to True to enable debugging on all services.
23 description: Set to True to enable debugging Horizon service.
30 description: Role name on which the service is applied
34 description: Parameters specific to the role
38 description: Mapping of service endpoint -> protocol. Typically set
39 via parameter_defaults in the resource registry.
43 description: A list of IP/Hostname for the server Horizon is running on.
44 Used for header checks.
45 type: comma_delimited_list
46 HorizonPasswordValidator:
47 description: Regex for password validation
50 HorizonPasswordValidatorHelp:
51 description: Help text for password validation
55 description: Secret key for Django
60 description: Set CSRF_COOKIE_SECURE / SESSION_COOKIE_SECURE in Horizon
65 description: Enable IPv6 features in Memcached.
67 MonitoringSubscriptionHorizon:
68 default: 'overcloud-horizon'
73 debug_unset: {equals : [{get_param: Debug}, '']}
77 description: Role data for the Horizon role.
80 monitoring_subscription: {get_param: MonitoringSubscriptionHorizon}
83 - horizon::allowed_hosts: {get_param: HorizonAllowedHosts}
84 tripleo.horizon.firewall_rules:
89 horizon::enable_secure_proxy_ssl_header: true
90 horizon::disable_password_reveal: true
91 horizon::enforce_password_check: true
92 horizon::disallow_iframe_embed: true
93 horizon::cache_backend: django.core.cache.backends.memcached.MemcachedCache
94 horizon::django_session_engine: 'django.contrib.sessions.backends.cache'
95 horizon::vhost_extra_params:
97 access_log_format: '%a %l %u %t \"%r\" %>s %b \"%%{}{Referer}i\" \"%%{}{User-Agent}i\"'
98 options: ['FollowSymLinks','MultiViews']
99 horizon::bind_address: {get_param: [ServiceNetMap, HorizonNetwork]}
100 horizon::keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
101 horizon::password_validator: {get_param: [HorizonPasswordValidator]}
102 horizon::password_validator_help: {get_param: [HorizonPasswordValidatorHelp]}
105 expression: $.data.passwords.where($ != '').first()
108 - {get_param: HorizonSecret}
109 - {get_param: [DefaultPasswords, horizon_secret]}
110 horizon::secure_cookies: {get_param: [HorizonSecureCookies]}
111 memcached_ipv6: {get_param: MemcachedIPv6}
115 - horizon::django_debug: { get_param: HorizonDebug }
116 - horizon::django_debug: { get_param: Debug }
118 include ::tripleo::profile::base::horizon
119 # Ansible tasks to handle upgrade
121 - name: Check if httpd is deployed
122 command: systemctl is-enabled httpd
125 register: httpd_enabled
126 - name: "PreUpgrade step0,validation: Check if httpd is running"
128 /usr/bin/systemctl show 'httpd' --property ActiveState |
130 when: httpd_enabled.rc == 0
131 tags: step0,validation
132 - name: Stop Horizon (under httpd)
134 when: httpd_enabled.rc == 0
135 service: name=httpd state=stopped
136 service_config_settings:
138 tripleo.horizon.firewall_rules: