From 97fae431b33ed8257ce7526ff03ba49bc999d1e4 Mon Sep 17 00:00:00 2001 From: Vu Tran Date: Sun, 2 Feb 2014 16:18:16 -0500 Subject: keystone: add cronjob for flushing expired tokens By default expired keystone tokens are not removed out of the keystone table in keystone database. This will cause the keystone database to grow in size due. So this patch adds new package named keystone-cronjobs which will register a cronjob to invoke command "keystone-manage token_flush" for flushing out any expired token. Signed-off-by: Vu Tran Signed-off-by: Bruce Ashfield --- .../recipes-devtools/python/python-keystone_git.bb | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'meta-openstack/recipes-devtools/python') diff --git a/meta-openstack/recipes-devtools/python/python-keystone_git.bb b/meta-openstack/recipes-devtools/python/python-keystone_git.bb index cde670c..6825461 100644 --- a/meta-openstack/recipes-devtools/python/python-keystone_git.bb +++ b/meta-openstack/recipes-devtools/python/python-keystone_git.bb @@ -81,10 +81,22 @@ pkg_postinst_${SRCNAME}-setup () { # end python-keystone postinst } -PACKAGES += " ${SRCNAME}-tests ${SRCNAME} ${SRCNAME}-setup" +# By default tokens are expired after 1 day so by default we can set +# this token flush cronjob to run every 2 days +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 +} + +PACKAGES += " ${SRCNAME}-tests ${SRCNAME} ${SRCNAME}-setup ${SRCNAME}-cronjobs" ALLOW_EMPTY_${SRCNAME}-setup = "1" +ALLOW_EMPTY_${SRCNAME}-cronjobs = "1" + FILES_${PN} = "${libdir}/*" FILES_${SRCNAME}-tests = "${sysconfdir}/${SRCNAME}/run_tests.sh" @@ -119,6 +131,7 @@ RDEPENDS_${PN} += " \ RDEPENDS_${SRCNAME} = "${PN} postgresql postgresql-client python-psycopg2" RDEPENDS_${SRCNAME}-setup = "postgresql sudo ${SRCNAME}" +RDEPENDS_${SRCNAME}-cronjobs = "cronie ${SRCNAME}" INITSCRIPT_PACKAGES = "${SRCNAME}" INITSCRIPT_NAME_${SRCNAME} = "keystone" -- cgit v1.2.3-54-g00ecf