Series Upgrade
Implement the series-upgrade feature allowing to move between Ubuntu series. Change-Id: I1f0e4bc958ca1a4716fbbeea033ef43e984b3fd8
This commit is contained in:
parent
b87bc9e204
commit
3ad4317244
|
@ -35,6 +35,9 @@ from charmhelpers.contrib.openstack.utils import (
|
||||||
pausable_restart_on_change as restart_on_change,
|
pausable_restart_on_change as restart_on_change,
|
||||||
os_release,
|
os_release,
|
||||||
CompareOpenStackReleases,
|
CompareOpenStackReleases,
|
||||||
|
is_unit_paused_set,
|
||||||
|
series_upgrade_prepare,
|
||||||
|
series_upgrade_complete,
|
||||||
)
|
)
|
||||||
from ceilometer_utils import (
|
from ceilometer_utils import (
|
||||||
restart_map,
|
restart_map,
|
||||||
|
@ -45,6 +48,8 @@ from ceilometer_utils import (
|
||||||
do_openstack_upgrade,
|
do_openstack_upgrade,
|
||||||
assess_status,
|
assess_status,
|
||||||
get_packages,
|
get_packages,
|
||||||
|
pause_unit_helper,
|
||||||
|
resume_unit_helper,
|
||||||
)
|
)
|
||||||
from charmhelpers.contrib.charmsupport import nrpe
|
from charmhelpers.contrib.charmsupport import nrpe
|
||||||
|
|
||||||
|
@ -99,6 +104,12 @@ def upgrade_charm():
|
||||||
@hooks.hook('config-changed')
|
@hooks.hook('config-changed')
|
||||||
@restart_on_change(restart_map(), stopstart=True)
|
@restart_on_change(restart_map(), stopstart=True)
|
||||||
def config_changed():
|
def config_changed():
|
||||||
|
# if we are paused, delay doing any config changed hooks.
|
||||||
|
# It is forced on the resume.
|
||||||
|
if is_unit_paused_set():
|
||||||
|
log("Unit is pause or upgrading. Skipping config_changed", "WARN")
|
||||||
|
return
|
||||||
|
|
||||||
if not config('action-managed-upgrade'):
|
if not config('action-managed-upgrade'):
|
||||||
if openstack_upgrade_available('ceilometer-common'):
|
if openstack_upgrade_available('ceilometer-common'):
|
||||||
status_set('maintenance', 'Running openstack upgrade')
|
status_set('maintenance', 'Running openstack upgrade')
|
||||||
|
@ -129,6 +140,20 @@ def update_nrpe_config():
|
||||||
nrpe_setup.write()
|
nrpe_setup.write()
|
||||||
|
|
||||||
|
|
||||||
|
@hooks.hook('pre-series-upgrade')
|
||||||
|
def pre_series_upgrade():
|
||||||
|
log("Running prepare series upgrade hook", "INFO")
|
||||||
|
series_upgrade_prepare(
|
||||||
|
pause_unit_helper, CONFIGS)
|
||||||
|
|
||||||
|
|
||||||
|
@hooks.hook('post-series-upgrade')
|
||||||
|
def post_series_upgrade():
|
||||||
|
log("Running complete series upgrade hook", "INFO")
|
||||||
|
series_upgrade_complete(
|
||||||
|
resume_unit_helper, CONFIGS)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
try:
|
try:
|
||||||
hooks.execute(sys.argv)
|
hooks.execute(sys.argv)
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
ceilometer_hooks.py
|
|
@ -0,0 +1 @@
|
||||||
|
ceilometer_hooks.py
|
Loading…
Reference in New Issue