summaryrefslogtreecommitdiffstats
path: root/meta-openstack/recipes-devtools/python/python-heat_git.bb
diff options
context:
space:
mode:
authorAndy Ning <andy.ning@windriver.com>2014-07-16 11:37:37 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2014-07-30 00:50:59 -0400
commit0aec82d70fa032bfe616ea5058d504f860e241f8 (patch)
treecd88ce4f6c7ac88308b85d1ce66941877978cc51 /meta-openstack/recipes-devtools/python/python-heat_git.bb
parentceecd0d46de35111f4c3c1e65176e09cb2117ecb (diff)
downloadmeta-cloud-services-0aec82d70fa032bfe616ea5058d504f860e241f8.tar.gz
Keystone: package service/user additions
Instead of creating tenant/user/role and service/endpoint for all openstack services in keystone postinstall, now each of the services creates its own keystone identities by queueing them up in its postinstall to a file /etc/keystone/service-user-setup. service-user-setup script, when run as the last postinstall, calls identity.sh with keystone identity parameters to create necessary identities for the services. Signed-off-by: Andy Ning <andy.ning@windriver.com>
Diffstat (limited to 'meta-openstack/recipes-devtools/python/python-heat_git.bb')
-rw-r--r--meta-openstack/recipes-devtools/python/python-heat_git.bb45
1 files changed, 44 insertions, 1 deletions
diff --git a/meta-openstack/recipes-devtools/python/python-heat_git.bb b/meta-openstack/recipes-devtools/python/python-heat_git.bb
index 90a456c..fd21af2 100644
--- a/meta-openstack/recipes-devtools/python/python-heat_git.bb
+++ b/meta-openstack/recipes-devtools/python/python-heat_git.bb
@@ -20,6 +20,44 @@ SRCREV="45f97e6a840bbba2a467558e60549e664496633e"
20PV="2014.2.b1+git${SRCPV}" 20PV="2014.2.b1+git${SRCPV}"
21S = "${WORKDIR}/git" 21S = "${WORKDIR}/git"
22 22
23SERVICECREATE_PACKAGES = "${SRCNAME}-setup ${SRCNAME}-templates ${SRCNAME}-cfn"
24KEYSTONE_HOST="${CONTROLLER_IP}"
25
26# USERCREATE_PARAM and SERVICECREATE_PARAM contain the list of parameters to be set.
27# If the flag for a parameter in the list is not set here, the default value will be given to that parameter.
28# Parameters not in the list will be set to empty.
29
30USERCREATE_PARAM_${SRCNAME}-setup = "name pass tenant role email"
31SERVICECREATE_PARAM_${SRCNAME}-setup = "name type description region publicurl adminurl internalurl"
32python () {
33 flags = {'type':'orchestration',\
34 'description':'OpenStack Orchestration Service',\
35 'publicurl':"'http://${KEYSTONE_HOST}:8004/v1/\$(tenant_id)s'",\
36 'adminurl':"'http://${KEYSTONE_HOST}:8004/v1/\$(tenant_id)s'",\
37 'internalurl':"'http://${KEYSTONE_HOST}:8004/v1/\$(tenant_id)s'"}
38
39 d.setVarFlags("SERVICECREATE_PARAM_%s-setup" % d.getVar('SRCNAME',True), flags)
40}
41
42# heat stack template user role
43USERCREATE_PARAM_${SRCNAME}-templates = "role"
44python () {
45 flags = {'role':'heat_stack_user'}
46 d.setVarFlags("USERCREATE_PARAM_%s-templates" % d.getVar('SRCNAME',True), flags)
47}
48
49# api-cfn service
50SERVICECREATE_PARAM_${SRCNAME}-cfn = "name type description region publicurl adminurl internalurl"
51python () {
52 flags = {'name':'heat-cfn',\
53 'type':'cloudformation',\
54 'description':'OpenStack Cloudformation Service',\
55 'publicurl':"'http://${KEYSTONE_HOST}:8000/v1'",\
56 'adminurl':"'http://${KEYSTONE_HOST}:8000/v1'",\
57 'internalurl':"'http://${KEYSTONE_HOST}:8000/v1'"}
58 d.setVarFlags("SERVICECREATE_PARAM_%s-cfn" % d.getVar('SRCNAME',True), flags)
59}
60
23do_install_append() { 61do_install_append() {
24 TEMPLATE_CONF_DIR=${S}${sysconfdir}/${SRCNAME} 62 TEMPLATE_CONF_DIR=${S}${sysconfdir}/${SRCNAME}
25 HEAT_CONF_DIR=${D}${sysconfdir}/${SRCNAME} 63 HEAT_CONF_DIR=${D}${sysconfdir}/${SRCNAME}
@@ -89,8 +127,11 @@ inherit setuptools identity hosts update-rc.d default_configs
89 127
90PACKAGES += "${SRCNAME}-tests ${SRCNAME}-templates ${SRCNAME}-common ${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine" 128PACKAGES += "${SRCNAME}-tests ${SRCNAME}-templates ${SRCNAME}-common ${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine"
91PACKAGES += "${SRCNAME}-setup" 129PACKAGES += "${SRCNAME}-setup"
130PACKAGES += "${SRCNAME}-cfn"
92 131
93ALLOW_EMPTY_${SRCNAME}-setup = "1" 132ALLOW_EMPTY_${SRCNAME}-setup = "1"
133ALLOW_EMPTY_${SRCNAME}-templates = "1"
134ALLOW_EMPTY_${SRCNAME}-cfn = "1"
94 135
95FILES_${PN} = "${libdir}/*" 136FILES_${PN} = "${libdir}/*"
96 137
@@ -164,10 +205,12 @@ RDEPENDS_${PN} += " \
164 python-pbr \ 205 python-pbr \
165 " 206 "
166 207
167RDEPENDS_${SRCNAME}-engine = "${PN} ${SRCNAME}-templates ${SRCNAME}-common postgresql postgresql-client python-psycopg2 tgt" 208RDEPENDS_${SRCNAME}-engine = "${PN} ${SRCNAME}-templates ${SRCNAME}-common postgresql postgresql-client python-psycopg2 tgt ${SRCNAME}-cfn"
168RDEPENDS_${SRCNAME}-api = "${SRCNAME}-engine" 209RDEPENDS_${SRCNAME}-api = "${SRCNAME}-engine"
169RDEPENDS_${SRCNAME}-api-cfn = "${SRCNAME}-engine" 210RDEPENDS_${SRCNAME}-api-cfn = "${SRCNAME}-engine"
170RDEPENDS_${SRCNAME}-setup = "postgresql sudo ${SRCNAME}-engine" 211RDEPENDS_${SRCNAME}-setup = "postgresql sudo ${SRCNAME}-engine"
212RDEPENDS_${SRCNAME}-templates = "postgresql sudo"
213RDEPENDS_${SRCNAME}-cfn = "postgresql sudo"
171 214
172INITSCRIPT_PACKAGES = "${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine" 215INITSCRIPT_PACKAGES = "${SRCNAME}-api ${SRCNAME}-api-cfn ${SRCNAME}-engine"
173INITSCRIPT_NAME_${SRCNAME}-api = "${SRCNAME}-api" 216INITSCRIPT_NAME_${SRCNAME}-api = "${SRCNAME}-api"