Merge remote-tracking branch 'upstream/master' into merge-branch
Conflicts:
metadata/service/support.yml
Change-Id: Icc8a1c0085cac1209b333cfad40917d57edafcf9
diff --git a/heat/files/liberty/heat.conf.Debian b/heat/files/liberty/heat.conf.Debian
index 6524520..3454950 100644
--- a/heat/files/liberty/heat.conf.Debian
+++ b/heat/files/liberty/heat.conf.Debian
@@ -921,3 +921,15 @@
api_port={{ client.api.port }}
{%- endif %}
+
+{%- if pillar.get('salt', {}).get('client', {}).get('enabled', False) %}
+
+{%- set client = pillar.get('salt', {}).get('client', {}) %}
+
+[clients_salt]
+
+user={{ client.user }}
+password={{ client.password }}
+host={{ client.host }}
+
+{%- endif %}
diff --git a/heat/files/mitaka/heat.conf.Debian b/heat/files/mitaka/heat.conf.Debian
index 8b40a90..7142747 100644
--- a/heat/files/mitaka/heat.conf.Debian
+++ b/heat/files/mitaka/heat.conf.Debian
@@ -180,6 +180,7 @@
# Seconds to wait for a response from a call. (integer value)
#rpc_response_timeout = 60
+rpc_response_timeout = 600
# A URL representing the messaging driver to use and its full configuration. If
# not set, we fall back to the rpc_backend option and driver specific
@@ -195,6 +196,10 @@
# exchange name specified in the transport_url option. (string value)
#control_exchange = openstack
+max_resources_per_stack=20000
+max_json_body_size=10880000
+max_template_size=5440000
+
[heat_api]
#
@@ -203,7 +208,7 @@
# Address to bind the server. Useful when selecting a
# particular network interface. (string value)
-#bind_host = {{ server.bind.api.address }}
+bind_host = {{ server.bind.api.address }}
# The port on which the server will listen. (integer value)
#bind_port=8004
@@ -238,7 +243,7 @@
# Address to bind the server. Useful when selecting a
# particular network interface. (string value)
-#bind_host = {{ server.bind.api_cfn.address }}
+bind_host = {{ server.bind.api_cfn.address }}
# The port on which the server will listen. (integer value)
#bind_port=8000
@@ -273,7 +278,7 @@
# Address to bind the server. Useful when selecting a
# particular network interface. (string value)
-#bind_host = {{ server.bind.api_cloudwatch.address }}
+bind_host = {{ server.bind.api_cloudwatch.address }}
# The port on which the server will listen. (integer value)
#bind_port=8003
@@ -403,15 +408,27 @@
[keystone_authtoken]
-auth_type = password
-auth_uri=http://{{ server.identity.host }}:5000/v3
-auth_url=http://{{ server.identity.host }}:35357/v3
-username = {{ server.identity.user }}
-password = {{ server.identity.password }}
-project_name = {{ server.identity.tenant }}
-project_domain_name = default
-user_domain_name = default
+#auth_type = password
+auth_uri=http://{{ server.identity.host }}:5000/v2.0
+identity_uri=http://{{ server.identity.host }}:35357
+admin_user={{ server.identity.user }}
+admin_password={{ server.identity.password }}
+admin_tenant_name={{ server.identity.tenant }}
+# Commented based on Fuel 9.0 reference configs
+#auth_url=http://{{ server.identity.host }}:35357/v3
+#username = {{ server.identity.user }}
+#password = {{ server.identity.password }}
+#project_name = {{ server.identity.tenant }}
+#project_domain_name = default
+#user_domain_name = default
{%- if server.cache is defined %}
+#memcached_servers={%- for member in server.cache.members %}{{ member.host }}:11211{% if not loop.last %},{% endif %}{%- endfor %}
+{%- endif %}
+
+{%- if server.cache is defined %}
+[cache]
+enabled=True
+backend=oslo_cache.memcache_pool
memcached_servers={%- for member in server.cache.members %}{{ member.host }}:11211{% if not loop.last %},{% endif %}{%- endfor %}
{%- endif %}
@@ -421,6 +438,8 @@
username = {{ server.identity.user }}
password = {{ server.identity.password }}
user_domain_name = default
+project_domain_id=Default
+user_domain_id=Default
[matchmaker_redis]
@@ -716,6 +735,9 @@
keystone_ec2_uri=http://{{ server.identity.host }}:5000/v2.0/ec2tokens
+[clients_keystone]
+auth_uri=http://{{ server.identity.host }}:35357
+
{%- if pillar.get('opencontrail', {}).get('client', {}).get('enabled', False) %}
{%- from "opencontrail/map.jinja" import client with context %}
@@ -729,4 +751,4 @@
api_server={{ client.api.host }}
api_port={{ client.api.port }}
-{%- endif %}
\ No newline at end of file
+{%- endif %}
diff --git a/heat/map.jinja b/heat/map.jinja
index 4283d0d..e62918c 100644
--- a/heat/map.jinja
+++ b/heat/map.jinja
@@ -10,7 +10,7 @@
'services': ['openstack-heat-api', 'openstack-heat-api-cfn', 'openstack-heat-api-cloudwatch', 'openstack-heat-engine'],
'notification': False
},
-}, merge=salt['pillar.get']('heat:server')) %}
+}, merge=pillar.heat.get('server', {})) %}
{% set client = salt['grains.filter_by']({
'Debian': {
@@ -19,4 +19,4 @@
'RedHat': {
'pkgs': ['python-heatclient'],
},
-}, merge=salt['pillar.get']('heat:client')) %}
+}, merge=pillar.heat.get('client', {})) %}
diff --git a/heat/meta/config.yml b/heat/meta/config.yml
new file mode 100644
index 0000000..395129f
--- /dev/null
+++ b/heat/meta/config.yml
@@ -0,0 +1,10 @@
+config:
+ {%- if pillar.heat.server is defined %}
+ {%- from "heat/map.jinja" import server with context %}
+ heat.conf:
+ source: "salt://heat/files/{{ server.version }}/heat.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ api-paste.ini:
+ source: "salt://heat/files/{{ server.version }}/api-paste.ini"
+ template: jinja
+ {%- endif %}
\ No newline at end of file
diff --git a/heat/server.sls b/heat/server.sls
index f9622d0..4c36d65 100644
--- a/heat/server.sls
+++ b/heat/server.sls
@@ -39,6 +39,8 @@
{%- if not grains.get('virtual_subtype', None) == "Docker" %}
+{%- if not salt['pillar.get']('linux:system:repo:mirantis_openstack', False) %}
+
heat_client_roles:
keystone.role_present:
- names:
@@ -51,6 +53,8 @@
- require:
- pkg: heat_server_packages
+{%- endif %}
+
{%- if server.version != 'juno' %}
heat_keystone_setup:
diff --git a/metadata/service/server/container.yml b/metadata/service/server/container.yml
new file mode 100644
index 0000000..822d900
--- /dev/null
+++ b/metadata/service/server/container.yml
@@ -0,0 +1,54 @@
+parameters:
+ kubernetes:
+ control:
+ configmap:
+ heat-server:
+ grains:
+ os_family: Debian
+ pillar:
+ heat:
+ server:
+ stack_domain_admin:
+ name: heat_domain_admin
+ password: ${_param:heat_domain_admin_password}
+ domain: heat
+ enabled: true
+ region: RegionOne
+ version: ${_param:heat_version}
+ bind:
+ api_cfn:
+ address: 0.0.0.0
+ api_cloudwatch:
+ address: 0.0.0.0
+ api:
+ address: 0.0.0.0
+ database:
+ engine: mysql
+ host: ${_param:mysql_service_host}
+ port: 3306
+ name: heat
+ user: heat
+ password: ${_param:mysql_heat_password}
+ metadata:
+ host: 0.0.0.0
+ port: 8000
+ waitcondition:
+ host: 0.0.0.0
+ port: 8000
+ watch:
+ host: 0.0.0.0
+ port: 8003
+ identity:
+ engine: keystone
+ host: ${_param:keystone_service_host}
+ port: 35357
+ tenant: service
+ user: heat
+ password: ${_param:keystone_heat_password}
+ message_queue:
+ engine: rabbitmq
+ host: ${_param:rabbitmq_service_host}
+ port: 5672
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
\ No newline at end of file
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index 2aeb0df..84db7f7 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -9,5 +9,7 @@
enabled: true
sphinx:
enabled: true
+ config:
+ enabled: true
grafana:
enabled: true