From 3051160f23fe8e06e545859538c86ef3a3c39d7a Mon Sep 17 00:00:00 2001 From: Mark Asselstine Date: Wed, 15 Nov 2017 12:59:53 -0500 Subject: python-*: fixup postinst scripts Checking for "$D" and doing an "exit 1" now results in errors such as: [log_check] warning: %post(keystone-cronjobs-...) scriptlet failed, exit status 2 during image creation. Instead of escaping the script for "level-1" (image creation postinst) we wrap the "level-2" (first boot) postinst in an if statement. This also ensure the scriptlet in indentity.bbclass is less prone to behaving differently based on the postinsts defined in the classes which inherit 'identity'. Signed-off-by: Mark Asselstine Signed-off-by: Bruce Ashfield --- .../recipes-devtools/python/python-keystone_git.bb | 50 +++++++++++----------- 1 file changed, 25 insertions(+), 25 deletions(-) (limited to 'meta-openstack/recipes-devtools/python/python-keystone_git.bb') diff --git a/meta-openstack/recipes-devtools/python/python-keystone_git.bb b/meta-openstack/recipes-devtools/python/python-keystone_git.bb index 79bd0c8..a26c9bf 100644 --- a/meta-openstack/recipes-devtools/python/python-keystone_git.bb +++ b/meta-openstack/recipes-devtools/python/python-keystone_git.bb @@ -189,28 +189,26 @@ role_tree_dn = ou=Roles,${LDAP_DN} \ pkg_postinst_${SRCNAME}-setup () { # python-keystone postinst start - if [ "x$D" != "x" ]; then - exit 1 - fi - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 2 - fi - - # This is to make sure keystone is configured and running - PIDFILE="/var/run/keystone-all.pid" - if [ -z `cat $PIDFILE 2>/dev/null` ]; then - sudo -u postgres createdb keystone - keystone-manage db_sync - keystone-manage pki_setup --keystone-user=root --keystone-group=daemon - - if ${@bb.utils.contains('DISTRO_FEATURES', 'OpenLDAP', 'true', 'false', d)}; then - /etc/init.d/openldap start - fi - /etc/init.d/keystone start + if [ -z "$D" ]; then + # This is to make sure postgres is configured and running + if ! pidof postmaster > /dev/null; then + /etc/init.d/postgresql-init + /etc/init.d/postgresql start + sleep 2 + fi + + # This is to make sure keystone is configured and running + PIDFILE="/var/run/keystone-all.pid" + if [ -z `cat $PIDFILE 2>/dev/null` ]; then + sudo -u postgres createdb keystone + keystone-manage db_sync + keystone-manage pki_setup --keystone-user=root --keystone-group=daemon + + if ${@bb.utils.contains('DISTRO_FEATURES', 'OpenLDAP', 'true', 'false', d)}; then + /etc/init.d/openldap start + fi + /etc/init.d/keystone start + fi fi } @@ -219,9 +217,11 @@ pkg_postinst_${SRCNAME}-setup () { KEYSTONE_TOKEN_FLUSH_TIME ??= "0 0 */2 * *" pkg_postinst_${SRCNAME}-cronjobs () { - # By default keystone expired tokens are not automatic removed out of the - # database. So we create a cronjob for cleaning these expired tokens. - echo "${KEYSTONE_TOKEN_FLUSH_TIME} root /usr/bin/keystone-manage token_flush" >> /etc/crontab + if [ -z "$D" ]; then + # By default keystone expired tokens are not automatic removed out of the + # database. So we create a cronjob for cleaning these expired tokens. + echo "${KEYSTONE_TOKEN_FLUSH_TIME} root /usr/bin/keystone-manage token_flush" >> /etc/crontab + fi } PACKAGES += " ${SRCNAME}-tests ${SRCNAME} ${SRCNAME}-setup ${SRCNAME}-cronjobs" -- cgit v1.2.3-54-g00ecf