Add support for config generation
Change-Id: I146ebb897de78792dcf44fdfbbbff203c2fd70cc
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index fa72b58..f489ccd 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -9,3 +9,5 @@
enabled: true
sphinx:
enabled: true
+ config:
+ enabled: true
diff --git a/nova/map.jinja b/nova/map.jinja
index 96f8976..27a30a2 100644
--- a/nova/map.jinja
+++ b/nova/map.jinja
@@ -16,7 +16,7 @@
'services': ['openstack-nova-api', 'openstack-nova-cert', 'openstack-nova-consoleauth', 'openstack-nova-scheduler', 'openstack-nova-conductor', 'openstack-nova-novncproxy'],
'debug': false,
},
-}, merge=salt['pillar.get']('nova:controller')) %}
+}, merge=pillar.nova.get('controller', {})) %}
{% set compute = salt['grains.filter_by']({
'Debian': {
@@ -55,4 +55,4 @@
'libvirt_bin': '/etc/default/libvirt-bin',
'libvirt_service': 'libvirt-bin',
},
-}, grain='oscodename', merge=salt['pillar.get']('nova:compute'))) %}
+}, grain='oscodename', merge=pillar.nova.get('compute', {}))) %}
diff --git a/nova/meta/config.yml b/nova/meta/config.yml
new file mode 100644
index 0000000..492c5a3
--- /dev/null
+++ b/nova/meta/config.yml
@@ -0,0 +1,26 @@
+config:
+ {%- if pillar.nova.controller is defined %}
+ {%- from "nova/map.jinja" import controller with context %}
+ nova.conf:
+ source: "salt://nova/files/{{ controller.version }}/nova-controller.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ api-paste.ini:
+ source: "salt://nova/files/{{ controller.version }}/api-paste.ini.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ {%- elif pillar.nova.compute is defined %}
+ {%- from "nova/map.jinja" import compute with context %}
+ nova.conf:
+ source: "salt://nova/files/{{ compute.version }}/nova-compute.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ {%- if compute.ceph is defined %}
+ secret.xml:
+ source: "salt://nova/files/secret.xml }}"
+ template: jinja
+ {%- endif %}
+ qemu.conf:
+ source: "salt://nova/files/{{ compute.version }}/qemu.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ libvirtd.conf:
+ source: "salt://nova/files/{{ compute.version }}/libvirtd.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ {%- endif %}