#!/usr/bin/python from subprocess import CalledProcessError import sys sys.path.append('hooks') from charmhelpers.contrib.storage.linux.ceph import Pool, pool_exists from charmhelpers.core.hookenv import action_get, log, action_fail __author__ = 'chris' def delete_cache_tier(): backer_pool = action_get("backer-pool") cache_pool = action_get("cache-pool") # Pre flight checks if not pool_exists('admin', backer_pool): log("Backer pool {} must exist before calling this".format( backer_pool)) action_fail("remove-cache-tier failed. Backer pool {} must exist " "before calling this".format(backer_pool)) if not pool_exists('admin', cache_pool): log("Cache pool {} must exist before calling this".format( cache_pool)) action_fail("remove-cache-tier failed. Cache pool {} must exist " "before calling this".format(cache_pool)) pool = Pool(service='admin', name=backer_pool) try: pool.remove_cache_tier(cache_pool=cache_pool) except CalledProcessError as err: log("Removing the cache tier failed with message: {}".format( err.message)) action_fail("remove-cache-tier failed. Removing the cache tier failed " "with message: {}".format(err.message)) if __name__ == '__main__': delete_cache_tier()