~openstack-charmers/charms/precise/ceilometer-agent/old-1410

« back to all changes in this revision

Viewing changes to hooks/ceilometer_hooks.py

  • Committer: James Page
  • Date: 2014-04-16 08:13:41 UTC
  • mfrom: (37.1.11 ceilometer-agent)
  • Revision ID: james.page@canonical.com-20140416081341-lwencjinshq4xkv2
[james-page,hazmat,r=james-page,t=*]

Support for Icehouse on 12.04 and 14.04
Support for Active/Active and SSL RabbitMQ

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
    relation_set
14
14
)
15
15
from charmhelpers.core.host import (
16
 
    restart_on_change
 
16
    restart_on_change,
 
17
    lsb_release,
17
18
)
18
19
from charmhelpers.contrib.openstack.utils import (
19
 
    configure_installation_source
 
20
    configure_installation_source,
 
21
    openstack_upgrade_available
20
22
)
21
23
from ceilometer_utils import (
22
24
    restart_map,
23
25
    register_configs,
24
26
    CEILOMETER_AGENT_PACKAGES,
25
 
    NOVA_SETTINGS
 
27
    NOVA_SETTINGS,
 
28
    do_openstack_upgrade
26
29
)
27
30
 
28
31
hooks = Hooks()
31
34
 
32
35
@hooks.hook()
33
36
def install():
34
 
    configure_installation_source(config('openstack-origin'))
 
37
    origin = config('openstack-origin')
 
38
    if (lsb_release()['DISTRIB_CODENAME'] == 'precise'
 
39
            and origin == 'distro'):
 
40
        origin = 'cloud:precise-grizzly'
 
41
    configure_installation_source(origin)
35
42
    apt_update(fatal=True)
36
43
    apt_install(
37
44
        filter_installed_packages(CEILOMETER_AGENT_PACKAGES),
50
57
    CONFIGS.write_all()
51
58
 
52
59
 
 
60
@hooks.hook('config-changed')
 
61
@restart_on_change(restart_map(), stopstart=True)
 
62
def config_changed():
 
63
    if openstack_upgrade_available('ceilometer-common'):
 
64
        do_openstack_upgrade(CONFIGS)
 
65
    CONFIGS.write_all()
 
66
 
53
67
if __name__ == '__main__':
54
68
    try:
55
69
        hooks.execute(sys.argv)