summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMustapha Lansana <Mustapha.Lansana@windriver.com>2014-07-30 21:36:33 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2014-09-26 09:09:22 -0400
commitd42684ccde8f2dcd1fea0fc1f2ec7df6c89a0ce6 (patch)
tree686853037adde6488749d0a9adb26ec8d9242804
parent2b726dacf1d2213c0a5ebc01f1db4f0caa8d06d5 (diff)
downloadmeta-cloud-services-d42684ccde8f2dcd1fea0fc1f2ec7df6c89a0ce6.tar.gz
openstack: add support for openstackchef class to services
Openstackchef enables us to recreate configuration files for services in an openstack installation. It does this by creating template file(s) out of configuration file(s) exposed to the class by services. The following services are inheriting the openstack class and then exposing a set of configuration files to the class. These services expose their configuration files to openstackchef by assigning them to the variable CHEF_SERVICES_CONF_FILES. The files are assumend to have been installed in the image directory under the service's WORKDIR. At build-time, openstackchef makes chef-solo templates out of the registered files. And at run-time, the deploychef package makes a call to chef-solo, which in-turn use the template files to recreate the registered configuration files. For legacy reasons, the string OPENSTACKCHEF_ENABLED is defined in openstackchef class, but it can be overwritten in a .bb, .class, .bbappend or local.conf file to an empty string when openstackchef support is not desired. This enables all of these services to be built without openstackchef support. In addition, it prevents the recipes from substituting the placeholders in their configuration files when inheriting openstackchef. Signed-off-by: Mustapha Lansana <Mustapha.Lansana@windriver.com>
-rw-r--r--meta-openstack/recipes-devtools/python/python-barbican_git.bb14
-rw-r--r--meta-openstack/recipes-devtools/python/python-ceilometer_git.bb27
-rw-r--r--meta-openstack/recipes-devtools/python/python-heat_git.bb36
-rw-r--r--meta-openstack/recipes-devtools/python/python-keystone_git.bb57
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova_git.bb56
-rw-r--r--meta-openstack/recipes-devtools/python/python-swift_git.bb50
-rw-r--r--meta-openstack/recipes-extended/cloud-init/cloud-init_0.7.4.bb13
-rw-r--r--meta-openstack/recipes-support/postgresql/postgresql_9.2.4.bbappend26
8 files changed, 162 insertions, 117 deletions
diff --git a/meta-openstack/recipes-devtools/python/python-barbican_git.bb b/meta-openstack/recipes-devtools/python/python-barbican_git.bb
index 7885ab5..d5c43ff 100644
--- a/meta-openstack/recipes-devtools/python/python-barbican_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-barbican_git.bb
@@ -19,7 +19,7 @@ SRCREV="ada968e162d9795613bfb346a1018f63ef7025cc"
19PV="2014.2.b3+git${SRCPV}" 19PV="2014.2.b3+git${SRCPV}"
20S = "${WORKDIR}/git" 20S = "${WORKDIR}/git"
21 21
22inherit update-rc.d setuptools identity hosts useradd default_configs 22inherit update-rc.d setuptools identity hosts useradd default_configs openstackchef
23 23
24SERVICECREATE_PACKAGES = "${SRCNAME}-setup" 24SERVICECREATE_PACKAGES = "${SRCNAME}-setup"
25KEYSTONE_HOST="${CONTROLLER_IP}" 25KEYSTONE_HOST="${CONTROLLER_IP}"
@@ -48,10 +48,10 @@ do_install_append() {
48 cp -r ${TEMPLATE_CONF_DIR}/* ${BARBICAN_CONF_DIR} 48 cp -r ${TEMPLATE_CONF_DIR}/* ${BARBICAN_CONF_DIR}
49 49
50 install -d ${D}${localstatedir}/lib/barbican 50 install -d ${D}${localstatedir}/lib/barbican
51 51 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
52 sed -e "s:%BARBICAN_MAX_PACKET_SIZE%:${BARBICAN_MAX_PACKET_SIZE}:g" -i ${BARBICAN_CONF_DIR}/vassals/barbican-api.ini 52 sed -e "s:%BARBICAN_MAX_PACKET_SIZE%:${BARBICAN_MAX_PACKET_SIZE}:g" -i ${BARBICAN_CONF_DIR}/vassals/barbican-api.ini
53 sed -e "s:%BARBICAN_MAX_PACKET_SIZE%:${BARBICAN_MAX_PACKET_SIZE}:g" -i ${BARBICAN_CONF_DIR}/vassals/barbican-admin.ini 53 sed -e "s:%BARBICAN_MAX_PACKET_SIZE%:${BARBICAN_MAX_PACKET_SIZE}:g" -i ${BARBICAN_CONF_DIR}/vassals/barbican-admin.ini
54 54 fi
55 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 55 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
56 install -d ${D}${sysconfdir}/init.d 56 install -d ${D}${sysconfdir}/init.d
57 57
@@ -68,6 +68,10 @@ do_install_append() {
68 -i ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/tests/api/test_resources_policy.py 68 -i ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/tests/api/test_resources_policy.py
69} 69}
70 70
71CHEF_SERVICES_CONF_FILES :="\
72 ${sysconfdir}/${SRCNAME}/vassals/barbican-api.ini \
73 ${sysconfdir}/${SRCNAME}/vassals/barbican-admin.ini \
74 "
71USERADD_PACKAGES = "${PN}" 75USERADD_PACKAGES = "${PN}"
72GROUPADD_PARAM_${PN} = "--system barbican" 76GROUPADD_PARAM_${PN} = "--system barbican"
73USERADD_PARAM_${PN} = "--system --home /var/lib/barbican -g barbican \ 77USERADD_PARAM_${PN} = "--system --home /var/lib/barbican -g barbican \
diff --git a/meta-openstack/recipes-devtools/python/python-ceilometer_git.bb b/meta-openstack/recipes-devtools/python/python-ceilometer_git.bb
index 816088e..aa7f07d 100644
--- a/meta-openstack/recipes-devtools/python/python-ceilometer_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-ceilometer_git.bb
@@ -64,21 +64,21 @@ do_install_append() {
64 install -m 600 ${TEMPLATE_CONF_DIR}/*.yaml ${CEILOMETER_CONF_DIR} 64 install -m 600 ${TEMPLATE_CONF_DIR}/*.yaml ${CEILOMETER_CONF_DIR}
65 65
66 install -m 600 ${TEMPLATE_CONF_DIR}/api_paste.ini ${CEILOMETER_CONF_DIR} 66 install -m 600 ${TEMPLATE_CONF_DIR}/api_paste.ini ${CEILOMETER_CONF_DIR}
67 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
68 sed -e "s:%CEILOMETER_SECRET%:${CEILOMETER_SECRET}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
67 69
68 sed -e "s:%CEILOMETER_SECRET%:${CEILOMETER_SECRET}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf 70 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
71 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
69 72
70 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf 73 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
71 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf 74 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
72 75
73 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf 76 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
74 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf 77 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
75
76 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
77 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
78
79 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
80 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
81 78
79 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
80 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${CEILOMETER_CONF_DIR}/ceilometer.conf
81 fi
82 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 82 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
83 install -d ${D}${sysconfdir}/init.d 83 install -d ${D}${sysconfdir}/init.d
84 84
@@ -107,6 +107,9 @@ do_install_append() {
107 cp setup-test-env.sh ${CEILOMETER_CONF_DIR} 107 cp setup-test-env.sh ${CEILOMETER_CONF_DIR}
108} 108}
109 109
110CHEF_SERVICES_CONF_FILES :="\
111 ${sysconfdir}/${SRCNAME}/ceilometer.conf \
112 "
110pkg_postinst_${SRCNAME}-setup () { 113pkg_postinst_${SRCNAME}-setup () {
111 if [ "x$D" != "x" ]; then 114 if [ "x$D" != "x" ]; then
112 exit 1 115 exit 1
@@ -124,7 +127,7 @@ pkg_postinst_${SRCNAME}-setup () {
124 ceilometer-dbsync 127 ceilometer-dbsync
125} 128}
126 129
127inherit setuptools identity hosts update-rc.d default_configs 130inherit setuptools identity hosts update-rc.d default_configs openstackchef
128 131
129PACKAGES += " ${SRCNAME}-tests" 132PACKAGES += " ${SRCNAME}-tests"
130PACKAGES += "${SRCNAME}-setup ${SRCNAME}-common ${SRCNAME}-api" 133PACKAGES += "${SRCNAME}-setup ${SRCNAME}-common ${SRCNAME}-api"
diff --git a/meta-openstack/recipes-devtools/python/python-heat_git.bb b/meta-openstack/recipes-devtools/python/python-heat_git.bb
index b094a4c..5c73b99 100644
--- a/meta-openstack/recipes-devtools/python/python-heat_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-heat_git.bb
@@ -71,25 +71,25 @@ do_install_append() {
71 install -d ${HEAT_CONF_DIR}/environment.d 71 install -d ${HEAT_CONF_DIR}/environment.d
72 install -m 600 ${TEMPLATE_CONF_DIR}/environment.d/* ${HEAT_CONF_DIR}/environment.d 72 install -m 600 ${TEMPLATE_CONF_DIR}/environment.d/* ${HEAT_CONF_DIR}/environment.d
73 install -m 664 ${TEMPLATE_CONF_DIR}/api-paste.ini ${HEAT_CONF_DIR} 73 install -m 664 ${TEMPLATE_CONF_DIR}/api-paste.ini ${HEAT_CONF_DIR}
74 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
75 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \
76 -i ${HEAT_CONF_DIR}/api-paste.ini
77 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
78 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
79 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
74 80
75 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \ 81 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${HEAT_CONF_DIR}/heat.conf
76 -i ${HEAT_CONF_DIR}/api-paste.ini 82 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${HEAT_CONF_DIR}/heat.conf
77 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
78 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
79 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${HEAT_CONF_DIR}/api-paste.ini
80 83
81 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${HEAT_CONF_DIR}/heat.conf 84 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${HEAT_CONF_DIR}/heat.conf
82 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${HEAT_CONF_DIR}/heat.conf 85 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${HEAT_CONF_DIR}/heat.conf
83 86
84 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${HEAT_CONF_DIR}/heat.conf 87 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${HEAT_CONF_DIR}/heat.conf
85 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${HEAT_CONF_DIR}/heat.conf 88 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${HEAT_CONF_DIR}/heat.conf
86
87 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${HEAT_CONF_DIR}/heat.conf
88 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${HEAT_CONF_DIR}/heat.conf
89
90 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${HEAT_CONF_DIR}/heat.conf
91 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${HEAT_CONF_DIR}/heat.conf
92 89
90 sed -e "s:%ADMIN_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${HEAT_CONF_DIR}/heat.conf
91 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${HEAT_CONF_DIR}/heat.conf
92 fi
93 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 93 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
94 install -d ${D}${sysconfdir}/init.d 94 install -d ${D}${sysconfdir}/init.d
95 95
@@ -106,6 +106,10 @@ do_install_append() {
106 cp run_tests.sh ${HEAT_CONF_DIR} 106 cp run_tests.sh ${HEAT_CONF_DIR}
107} 107}
108 108
109CHEF_SERVICES_CONF_FILES :="\
110 ${sysconfdir}/${SRCNAME}/heat.conf \
111 ${sysconfdir}/${SRCNAME}/api-paste.ini \
112 "
109pkg_postinst_${SRCNAME}-setup () { 113pkg_postinst_${SRCNAME}-setup () {
110 if [ "x$D" != "x" ]; then 114 if [ "x$D" != "x" ]; then
111 exit 1 115 exit 1
@@ -123,7 +127,7 @@ pkg_postinst_${SRCNAME}-setup () {
123 heat-manage db_sync 127 heat-manage db_sync
124} 128}
125 129
126inherit setuptools identity hosts update-rc.d default_configs 130inherit setuptools identity hosts update-rc.d default_configs openstackchef
127 131
128PACKAGES += "${SRCNAME}-tests ${SRCNAME}-templates ${SRCNAME}-common ${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine" 132PACKAGES += "${SRCNAME}-tests ${SRCNAME}-templates ${SRCNAME}-common ${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine"
129PACKAGES += "${SRCNAME}-setup" 133PACKAGES += "${SRCNAME}-setup"
diff --git a/meta-openstack/recipes-devtools/python/python-keystone_git.bb b/meta-openstack/recipes-devtools/python/python-keystone_git.bb
index 49aa278..5e7fca1 100644
--- a/meta-openstack/recipes-devtools/python/python-keystone_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-keystone_git.bb
@@ -22,7 +22,7 @@ PV="2014.2.b3+git${SRCPV}"
22 22
23S = "${WORKDIR}/git" 23S = "${WORKDIR}/git"
24 24
25inherit setuptools update-rc.d identity hosts default_configs 25inherit setuptools update-rc.d identity hosts default_configs openstackchef
26 26
27SERVICE_TOKEN = "password" 27SERVICE_TOKEN = "password"
28TOKEN_FORMAT ?= "PKI" 28TOKEN_FORMAT ?= "PKI"
@@ -97,27 +97,36 @@ do_install_append() {
97 ${KEYSTONE_CGI_DIR}/main 97 ${KEYSTONE_CGI_DIR}/main
98 98
99 cp -r ${S}/examples ${KEYSTONE_PACKAGE_DIR} 99 cp -r ${S}/examples ${KEYSTONE_PACKAGE_DIR}
100 100
101 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" \ 101 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
102 -i ${KEYSTONE_CONF_DIR}/keystone.conf 102 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" \
103 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${KEYSTONE_CONF_DIR}/keystone.conf 103 -i ${KEYSTONE_CONF_DIR}/keystone.conf
104 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" \ 104 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${KEYSTONE_CONF_DIR}/keystone.conf
105 -i ${KEYSTONE_CONF_DIR}/keystone.conf 105 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" \
106 106 -i ${KEYSTONE_CONF_DIR}/keystone.conf
107 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" \ 107
108 -i ${KEYSTONE_CONF_DIR}/keystone.conf 108 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" \
109 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" \ 109 -i ${KEYSTONE_CONF_DIR}/keystone.conf
110 -i ${KEYSTONE_CONF_DIR}/identity.sh 110 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" \
111 111 -i ${KEYSTONE_CONF_DIR}/identity.sh
112 sed -e "s:%TOKEN_FORMAT%:${TOKEN_FORMAT}:g" \ 112
113 -i ${KEYSTONE_CONF_DIR}/keystone.conf 113 sed -e "s:%TOKEN_FORMAT%:${TOKEN_FORMAT}:g" \
114 114 -i ${KEYSTONE_CONF_DIR}/keystone.conf
115
116 sed -e "s/%ADMIN_PASSWORD%/${ADMIN_PASSWORD}/g" \
117 -i ${D}${sysconfdir}/init.d/keystone
118 sed -e "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" \
119 -i ${D}${sysconfdir}/init.d/keystone
120 sed -e "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" \
121 -i ${D}${sysconfdir}/init.d/keystone
122 fi
123
115 sed "/# admin_endpoint = .*/a \ 124 sed "/# admin_endpoint = .*/a \
116 public_endpoint = http://${CONTROLLER_IP}:8081/keystone/main/ " \ 125 public_endpoint = http://%CONTROLLER_IP%:8081/keystone/main/ " \
117 -i ${KEYSTONE_CONF_DIR}/keystone.conf 126 -i ${KEYSTONE_CONF_DIR}/keystone.conf
118 127
119 sed "/# admin_endpoint = .*/a \ 128 sed "/# admin_endpoint = .*/a \
120 admin_endpoint = http://${CONTROLLER_IP}:8081/keystone/admin/ " \ 129 admin_endpoint = http://%CONTROLLER_IP%:8081/keystone/admin/ " \
121 -i ${KEYSTONE_CONF_DIR}/keystone.conf 130 -i ${KEYSTONE_CONF_DIR}/keystone.conf
122 131
123 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; 132 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)};
@@ -135,12 +144,6 @@ do_install_append() {
135 144
136 cp run_tests.sh ${KEYSTONE_CONF_DIR} 145 cp run_tests.sh ${KEYSTONE_CONF_DIR}
137 146
138 sed -e "s/%ADMIN_PASSWORD%/${ADMIN_PASSWORD}/g" \
139 -i ${D}${sysconfdir}/init.d/keystone
140 sed -e "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" \
141 -i ${D}${sysconfdir}/init.d/keystone
142 sed -e "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" \
143 -i ${D}${sysconfdir}/init.d/keystone
144 147
145 if ${@base_contains('DISTRO_FEATURES', 'OpenLDAP', 'true', 'false', d)}; 148 if ${@base_contains('DISTRO_FEATURES', 'OpenLDAP', 'true', 'false', d)};
146 then 149 then
@@ -187,6 +190,12 @@ role_tree_dn = ou=Roles,${LDAP_DN} \
187 fi 190 fi
188} 191}
189 192
193CHEF_SERVICES_CONF_FILES := "\
194 ${sysconfdir}/${SRCNAME}/keystone.conf \
195 ${sysconfdir}/${SRCNAME}/identity.sh \
196 ${sysconfdir}/init.d/keystone \
197 "
198
190pkg_postinst_${SRCNAME}-setup () { 199pkg_postinst_${SRCNAME}-setup () {
191 # python-keystone postinst start 200 # python-keystone postinst start
192 if [ "x$D" != "x" ]; then 201 if [ "x$D" != "x" ]; then
diff --git a/meta-openstack/recipes-devtools/python/python-nova_git.bb b/meta-openstack/recipes-devtools/python/python-nova_git.bb
index 207b965..5a8ba84 100644
--- a/meta-openstack/recipes-devtools/python/python-nova_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-nova_git.bb
@@ -30,7 +30,7 @@ PV="2014.2.b3+git${SRCPV}"
30 30
31S = "${WORKDIR}/git" 31S = "${WORKDIR}/git"
32 32
33inherit update-rc.d setuptools identity hosts useradd default_configs 33inherit update-rc.d setuptools identity hosts useradd default_configs openstackchef
34 34
35LIBVIRT_IMAGES_TYPE ?= "default" 35LIBVIRT_IMAGES_TYPE ?= "default"
36 36
@@ -103,38 +103,38 @@ do_install_append() {
103 install -o nova -m 664 ${WORKDIR}/nova.conf ${NOVA_CONF_DIR}/nova.conf 103 install -o nova -m 664 ${WORKDIR}/nova.conf ${NOVA_CONF_DIR}/nova.conf
104 install -o nova -m 664 ${TEMPLATE_CONF_DIR}/api-paste.ini ${NOVA_CONF_DIR} 104 install -o nova -m 664 ${TEMPLATE_CONF_DIR}/api-paste.ini ${NOVA_CONF_DIR}
105 install -o nova -m 664 ${WORKDIR}/openrc ${NOVA_CONF_DIR} 105 install -o nova -m 664 ${WORKDIR}/openrc ${NOVA_CONF_DIR}
106 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
107 # Configuration options
108 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \
109 -i ${NOVA_CONF_DIR}/api-paste.ini
110 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NOVA_CONF_DIR}/api-paste.ini
111 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" \
112 -i ${NOVA_CONF_DIR}/api-paste.ini
113 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/api-paste.ini
106 114
107 # Configuration options 115 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${NOVA_CONF_DIR}/nova.conf
108 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \ 116 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${NOVA_CONF_DIR}/nova.conf
109 -i ${NOVA_CONF_DIR}/api-paste.ini
110 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NOVA_CONF_DIR}/api-paste.ini
111 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" \
112 -i ${NOVA_CONF_DIR}/api-paste.ini
113 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/api-paste.ini
114 117
115 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${NOVA_CONF_DIR}/nova.conf 118 sed -e "s:%METADATA_SHARED_SECRET%:${METADATA_SHARED_SECRET}:g" -i ${NOVA_CONF_DIR}/nova.conf
116 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${NOVA_CONF_DIR}/nova.conf
117 119
118 sed -e "s:%METADATA_SHARED_SECRET%:${METADATA_SHARED_SECRET}:g" -i ${NOVA_CONF_DIR}/nova.conf 120 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/nova.conf
121 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NOVA_CONF_DIR}/nova.conf
119 122
120 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/nova.conf 123 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${NOVA_CONF_DIR}/nova.conf
121 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NOVA_CONF_DIR}/nova.conf 124 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${NOVA_CONF_DIR}/nova.conf
122 125
123 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${NOVA_CONF_DIR}/nova.conf 126 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${NOVA_CONF_DIR}/nova.conf
124 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${NOVA_CONF_DIR}/nova.conf 127 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NOVA_CONF_DIR}/nova.conf
128 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${NOVA_CONF_DIR}/nova.conf
125 129
126 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" -i ${NOVA_CONF_DIR}/nova.conf 130 sed -e "s:%LIBVIRT_IMAGES_TYPE%:${LIBVIRT_IMAGES_TYPE}:g" -i ${NOVA_CONF_DIR}/nova.conf
127 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${NOVA_CONF_DIR}/nova.conf
128 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" -i ${NOVA_CONF_DIR}/nova.conf
129 131
130 sed -e "s:%LIBVIRT_IMAGES_TYPE%:${LIBVIRT_IMAGES_TYPE}:g" -i ${NOVA_CONF_DIR}/nova.conf 132 sed -e "s:%OS_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${NOVA_CONF_DIR}/openrc
131 133 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" -i ${NOVA_CONF_DIR}/openrc
132 sed -e "s:%OS_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${NOVA_CONF_DIR}/openrc
133 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" -i ${NOVA_CONF_DIR}/openrc
134
135 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/openrc
136 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NOVA_CONF_DIR}/openrc
137 134
135 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${NOVA_CONF_DIR}/openrc
136 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${NOVA_CONF_DIR}/openrc
137 fi
138 install -o nova -d ${NOVA_CONF_DIR}/instances 138 install -o nova -d ${NOVA_CONF_DIR}/instances
139 139
140 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 140 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
@@ -159,6 +159,12 @@ do_install_append() {
159 cp -r "${S}/plugins" "${D}/${PYTHON_SITEPACKAGES_DIR}/nova" 159 cp -r "${S}/plugins" "${D}/${PYTHON_SITEPACKAGES_DIR}/nova"
160} 160}
161 161
162CHEF_SERVICES_CONF_FILES := "\
163 ${sysconfdir}/${SRCNAME}/nova.conf \
164 ${sysconfdir}/${SRCNAME}/api-paste.ini \
165 ${sysconfdir}/${SRCNAME}/openrc \
166 "
167
162pkg_postinst_${SRCNAME}-setup () { 168pkg_postinst_${SRCNAME}-setup () {
163 if [ "x$D" != "x" ]; then 169 if [ "x$D" != "x" ]; then
164 exit 1 170 exit 1
diff --git a/meta-openstack/recipes-devtools/python/python-swift_git.bb b/meta-openstack/recipes-devtools/python/python-swift_git.bb
index b00788f..bac992a 100644
--- a/meta-openstack/recipes-devtools/python/python-swift_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-swift_git.bb
@@ -20,7 +20,7 @@ SRCREV="d4da726f6f45187dc053578f11246d6b36679142"
20PV="2.1.0+git${SRCPV}" 20PV="2.1.0+git${SRCPV}"
21S = "${WORKDIR}/git" 21S = "${WORKDIR}/git"
22 22
23inherit setuptools python-dir update-rc.d hosts identity 23inherit setuptools python-dir update-rc.d hosts identity openstackchef
24 24
25# The size of the backing file (in Gigabytes) of loopback devices 25# The size of the backing file (in Gigabytes) of loopback devices
26# which are used for setting up Swift storage devices. The value 26# which are used for setting up Swift storage devices. The value
@@ -82,31 +82,39 @@ do_install_append() {
82 sed 's/^# swift_dir =.*/swift_dir = \/etc\/swift/' -i ${SWIFT_CONF_DIR}/object-server.conf 82 sed 's/^# swift_dir =.*/swift_dir = \/etc\/swift/' -i ${SWIFT_CONF_DIR}/object-server.conf
83 sed 's/^# devices =.*/devices = \/etc\/swift\/node/' -i ${SWIFT_CONF_DIR}/object-server.conf 83 sed 's/^# devices =.*/devices = \/etc\/swift\/node/' -i ${SWIFT_CONF_DIR}/object-server.conf
84 sed 's/^# mount_check =.*/mount_check = false/' -i ${SWIFT_CONF_DIR}/object-server.conf 84 sed 's/^# mount_check =.*/mount_check = false/' -i ${SWIFT_CONF_DIR}/object-server.conf
85 85 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
86 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf 86 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf
87 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf 87 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf
88 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf 88 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/proxy-server.conf
89 89
90 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf 90 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf
91 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf 91 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf
92 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf 92 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/dispersion.conf
93 93
94 sed "s/%ADMIN_TENANT_NAME%/admin/g" -i ${SWIFT_CONF_DIR}/test.conf 94 sed "s/%ADMIN_TENANT_NAME%/admin/g" -i ${SWIFT_CONF_DIR}/test.conf
95 sed "s/%ADMIN_USER%/admin/g" -i ${SWIFT_CONF_DIR}/test.conf 95 sed "s/%ADMIN_USER%/admin/g" -i ${SWIFT_CONF_DIR}/test.conf
96 sed "s/%ADMIN_PASSWORD%/${ADMIN_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf 96 sed "s/%ADMIN_PASSWORD%/${ADMIN_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf
97 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/test.conf 97 sed "s/%SERVICE_TENANT_NAME%/${SERVICE_TENANT_NAME}/g" -i ${SWIFT_CONF_DIR}/test.conf
98 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/test.conf 98 sed "s/%SERVICE_USER%/${SRCNAME}/g" -i ${SWIFT_CONF_DIR}/test.conf
99 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf 99 sed "s/%SERVICE_PASSWORD%/${SERVICE_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf
100 sed "s/%DEMO_USER%/demo/g" -i ${SWIFT_CONF_DIR}/test.conf 100 sed "s/%DEMO_USER%/demo/g" -i ${SWIFT_CONF_DIR}/test.conf
101 sed "s/%DEMO_PASSWORD%/${ADMIN_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf 101 sed "s/%DEMO_PASSWORD%/${ADMIN_PASSWORD}/g" -i ${SWIFT_CONF_DIR}/test.conf
102 102
103 sed "s/%SWIFT_BACKING_FILE_SIZE%/${SWIFT_BACKING_FILE_SIZE}/g" -i ${D}${sysconfdir}/init.d/swift
104 sed "s/%CONTROLLER_IP%/${CONTROLLER_IP}/g" -i ${D}${sysconfdir}/init.d/swift
105 fi
103 cp -r test ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/ 106 cp -r test ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/
104 grep -rl '^from test' ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/test | xargs sed 's/^from test/from swift\.test/g' -i 107 grep -rl '^from test' ${D}/${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/test | xargs sed 's/^from test/from swift\.test/g' -i
105 108
106 sed "s/%SWIFT_BACKING_FILE_SIZE%/${SWIFT_BACKING_FILE_SIZE}/g" -i ${D}${sysconfdir}/init.d/swift
107 sed "s/%CONTROLLER_IP%/${CONTROLLER_IP}/g" -i ${D}${sysconfdir}/init.d/swift
108} 109}
109 110
111CHEF_SERVICES_CONF_FILES := " \
112 ${sysconfdir}/${SRCNAME}/test.conf \
113 ${sysconfdir}/${SRCNAME}/dispersion.conf \
114 ${sysconfdir}/${SRCNAME}/proxy-server.conf \
115 ${sysconfdir}/init.d/swift \
116 "
117
110pkg_postinst_${SRCNAME}-setup () { 118pkg_postinst_${SRCNAME}-setup () {
111 if [ "x$D" != "x" ]; then 119 if [ "x$D" != "x" ]; then
112 exit 1 120 exit 1
diff --git a/meta-openstack/recipes-extended/cloud-init/cloud-init_0.7.4.bb b/meta-openstack/recipes-extended/cloud-init/cloud-init_0.7.4.bb
index 9e460a7..baa186b 100644
--- a/meta-openstack/recipes-extended/cloud-init/cloud-init_0.7.4.bb
+++ b/meta-openstack/recipes-extended/cloud-init/cloud-init_0.7.4.bb
@@ -27,15 +27,20 @@ do_install_prepend() {
27} 27}
28 28
29do_install_append() { 29do_install_append() {
30 sed -e "s:%MANAGE_HOSTS%:${MANAGE_HOSTS}:g" -i ${WORKDIR}/cloud.cfg
31 sed -e "s:%HOSTNAME%:${HOSTNAME}:g" -i ${WORKDIR}/cloud.cfg
32 install -m 0755 ${WORKDIR}/cloud.cfg ${D}${sysconfdir}/cloud/cloud.cfg 30 install -m 0755 ${WORKDIR}/cloud.cfg ${D}${sysconfdir}/cloud/cloud.cfg
33 31 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
32 sed -e "s:%MANAGE_HOSTS%:${MANAGE_HOSTS}:g" -i ${D}${sysconfdir}/cloud/cloud.cfg
33 sed -e "s:%HOSTNAME%:${HOSTNAME}:g" -i ${D}${sysconfdir}/cloud/cloud.cfg
34 fi
34 ln -s ${libdir}/${BPN}/uncloud-init ${D}${sysconfdir}/cloud/uncloud-init 35 ln -s ${libdir}/${BPN}/uncloud-init ${D}${sysconfdir}/cloud/uncloud-init
35 ln -s ${libdir}/${BPN}/write-ssh-key-fingerprints ${D}${sysconfdir}/cloud/write-ssh-key-fingerprints 36 ln -s ${libdir}/${BPN}/write-ssh-key-fingerprints ${D}${sysconfdir}/cloud/write-ssh-key-fingerprints
36} 37}
37 38
38inherit setuptools update-rc.d 39inherit setuptools update-rc.d openstackchef
40
41CHEF_SERVICES_CONF_FILES := " \
42 ${sysconfdir}/cloud/cloud.cfg \
43 "
39 44
40FILES_${PN} += "${sysconfdir}/* \ 45FILES_${PN} += "${sysconfdir}/* \
41 ${datadir}/*" 46 ${datadir}/*"
diff --git a/meta-openstack/recipes-support/postgresql/postgresql_9.2.4.bbappend b/meta-openstack/recipes-support/postgresql/postgresql_9.2.4.bbappend
index 2e61fde..db247e5 100644
--- a/meta-openstack/recipes-support/postgresql/postgresql_9.2.4.bbappend
+++ b/meta-openstack/recipes-support/postgresql/postgresql_9.2.4.bbappend
@@ -3,7 +3,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
3SRC_URI += "file://postgresql \ 3SRC_URI += "file://postgresql \
4 file://postgresql-init" 4 file://postgresql-init"
5 5
6inherit useradd update-rc.d identity hosts autotools-brokensep 6inherit useradd update-rc.d identity hosts autotools-brokensep openstackchef
7 7
8PACKAGECONFIG[libxml] = "--with-libxml CFLAGS=-I${STAGING_INCDIR}/libxml2,--without-libxml,libxml2,libxml2" 8PACKAGECONFIG[libxml] = "--with-libxml CFLAGS=-I${STAGING_INCDIR}/libxml2,--without-libxml,libxml2,libxml2"
9 9
@@ -16,20 +16,26 @@ do_install_append() {
16 install -d ${D}${sysconfdir}/init.d/ 16 install -d ${D}${sysconfdir}/init.d/
17 install -m 0755 ${WORKDIR}/postgresql ${INIT_D_DEST_DIR}/postgresql 17 install -m 0755 ${WORKDIR}/postgresql ${INIT_D_DEST_DIR}/postgresql
18 install -m 0755 ${WORKDIR}/postgresql-init ${INIT_D_DEST_DIR}/postgresql-init 18 install -m 0755 ${WORKDIR}/postgresql-init ${INIT_D_DEST_DIR}/postgresql-init
19 if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then
20 sed -e "s:%DB_DATADIR%:${DB_DATADIR}:g" -i ${INIT_D_DEST_DIR}/postgresql
21 sed -e "s:%DB_DATADIR%:${DB_DATADIR}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
19 22
20 sed -e "s:%DB_DATADIR%:${DB_DATADIR}:g" -i ${INIT_D_DEST_DIR}/postgresql 23 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
21 sed -e "s:%DB_DATADIR%:${DB_DATADIR}:g" -i ${INIT_D_DEST_DIR}/postgresql-init 24 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
22 25
23 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${INIT_D_DEST_DIR}/postgresql-init 26 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
24 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${INIT_D_DEST_DIR}/postgresql-init 27 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
25 28
26 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${INIT_D_DEST_DIR}/postgresql-init 29 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
27 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${INIT_D_DEST_DIR}/postgresql-init 30 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
28 31 fi
29 sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
30 sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${INIT_D_DEST_DIR}/postgresql-init
31} 32}
32 33
34CHEF_SERVICES_CONF_FILES := "\
35 ${sysconfdir}/init.d/postgresql \
36 ${sysconfdir}/init.d/postgresql-init \
37 "
38
33RDEPENDS_${PN} += "postgresql-timezone eglibc-utils update-rc.d" 39RDEPENDS_${PN} += "postgresql-timezone eglibc-utils update-rc.d"
34USERADD_PACKAGES = "${PN}" 40USERADD_PACKAGES = "${PN}"
35GROUPADD_PARAM_${PN} = "--system postgres" 41GROUPADD_PARAM_${PN} = "--system postgres"