charm-ceph-mon/actions/delete_erasure_profile.py
James Page 203947623f action: Misc tidyup and improvements
General tidy of actions codebase including sorting out
some minor bugs.

Added new copy-pool action.

Added support for CRUSH device classes when creating
erasure coding profiles.

Removed need for use of rados python module by switching
to using the ceph command line tool for all operations.

Add new action for creation of new CRUSH rules using
device classes.

Resync charms.ceph to support switching the crush_rule
key on a pool.

Resync charmhelpers for support for device classing.

Rename all action py files to by standards compliant.

Change-Id: I1f7d95b1637f2064bd11a5d5336764b2946428ac
Depends-On: I2c405f9a4956ff1ccf1edb7372a9bb11e1e591a4
2019-02-19 14:54:41 +00:00

42 lines
1.3 KiB
Python
Executable File

#!/usr/bin/env python3
#
# Copyright 2016 Canonical Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from subprocess import CalledProcessError
__author__ = 'chris'
import sys
sys.path.append('hooks')
from charmhelpers.contrib.storage.linux.ceph import remove_erasure_profile
from charmhelpers.core.hookenv import action_get, log, action_fail
def delete_erasure_profile():
name = action_get("name")
try:
remove_erasure_profile(service='admin', profile_name=name)
except CalledProcessError as e:
log("Remove erasure profile failed with error {}".format(str(e)),
level="ERROR")
action_fail("Remove erasure profile failed with error: {}"
.format(str(e)))
if __name__ == '__main__':
delete_erasure_profile()