Merge lp:~jacekn/charms/precise/rabbitmq-server/fixes into lp:charms/rabbitmq-server

Proposed by Jacek Nykis
Status: Merged
Merged at revision: 54
Proposed branch: lp:~jacekn/charms/precise/rabbitmq-server/fixes
Merge into: lp:charms/rabbitmq-server
Diff against target: 111 lines (+28/-8)
6 files modified
.bzrignore (+1/-0)
hooks/charmhelpers/contrib/charmsupport/nrpe.py (+5/-2)
hooks/charmhelpers/contrib/storage/linux/utils.py (+12/-3)
hooks/charmhelpers/fetch/__init__.py (+1/-1)
hooks/rabbitmq_server_relations.py (+8/-1)
revision (+1/-1)
To merge this branch: bzr merge lp:~jacekn/charms/precise/rabbitmq-server/fixes
Reviewer Review Type Date Requested Status
Matt Bruzek (community) Approve
Tim Van Steenburgh (community) Approve
Review via email: mp+218094@code.launchpad.net

Description of the change

This change allows rabbitmq-server charm to take advantage of "nagios_hostname" set in nrpe-external-master relation.

To post a comment you must log in.
Revision history for this message
Tim Van Steenburgh (tvansteenburgh) wrote :

+1 LGTM, thanks Jacek!

If your charmhelpers changes would be generally useful, please consider also submitting them for merging into the charmhelpers project itself.

A Charmer will be along soon to merge your changes, thanks again!

review: Approve
Revision history for this message
Jacek Nykis (jacekn) wrote :

Thank you Tim.

The only charmhelpers change I made is to support hostname parameter, rest of them are just merged from upstream. There is already MP for the nagios hostname change waiting to be merged:
https://code.launchpad.net/~jacekn/charm-helpers/nrpe-hostname/+merge/218072

Revision history for this message
Matt Bruzek (mbruzek) wrote :

+1 LGTM

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file '.bzrignore'
2--- .bzrignore 1970-01-01 00:00:00 +0000
3+++ .bzrignore 2014-05-02 14:31:22 +0000
4@@ -0,0 +1,1 @@
5+revision
6
7=== modified file 'hooks/charmhelpers/contrib/charmsupport/nrpe.py'
8--- hooks/charmhelpers/contrib/charmsupport/nrpe.py 2014-03-05 12:57:20 +0000
9+++ hooks/charmhelpers/contrib/charmsupport/nrpe.py 2014-05-02 14:31:22 +0000
10@@ -179,12 +179,15 @@
11 nagios_exportdir = '/var/lib/nagios/export'
12 nrpe_confdir = '/etc/nagios/nrpe.d'
13
14- def __init__(self):
15+ def __init__(self, hostname=None):
16 super(NRPE, self).__init__()
17 self.config = config()
18 self.nagios_context = self.config['nagios_context']
19 self.unit_name = local_unit().replace('/', '-')
20- self.hostname = "{}-{}".format(self.nagios_context, self.unit_name)
21+ if hostname:
22+ self.hostname = hostname
23+ else:
24+ self.hostname = "{}-{}".format(self.nagios_context, self.unit_name)
25 self.checks = []
26
27 def add_check(self, *args, **kwargs):
28
29=== modified file 'hooks/charmhelpers/contrib/storage/linux/utils.py'
30--- hooks/charmhelpers/contrib/storage/linux/utils.py 2014-03-27 12:33:12 +0000
31+++ hooks/charmhelpers/contrib/storage/linux/utils.py 2014-05-02 14:31:22 +0000
32@@ -2,7 +2,9 @@
33 from stat import S_ISBLK
34
35 from subprocess import (
36- check_call
37+ check_call,
38+ check_output,
39+ call
40 )
41
42
43@@ -22,5 +24,12 @@
44
45 :param block_device: str: Full path of block device to clean.
46 '''
47- check_call(['sgdisk', '--zap-all', '--clear',
48- '--mbrtogpt', block_device])
49+ # sometimes sgdisk exits non-zero; this is OK, dd will clean up
50+ call(['sgdisk', '--zap-all', '--mbrtogpt',
51+ '--clear', block_device])
52+ dev_end = check_output(['blockdev', '--getsz', block_device])
53+ gpt_end = int(dev_end.split()[0]) - 100
54+ check_call(['dd', 'if=/dev/zero', 'of=%s'%(block_device),
55+ 'bs=1M', 'count=1'])
56+ check_call(['dd', 'if=/dev/zero', 'of=%s'%(block_device),
57+ 'bs=512', 'count=100', 'seek=%s'%(gpt_end)])
58
59=== modified file 'hooks/charmhelpers/fetch/__init__.py'
60--- hooks/charmhelpers/fetch/__init__.py 2014-03-27 12:33:12 +0000
61+++ hooks/charmhelpers/fetch/__init__.py 2014-05-02 14:31:22 +0000
62@@ -184,7 +184,7 @@
63 apt.write(PROPOSED_POCKET.format(release))
64 if key:
65 subprocess.check_call(['apt-key', 'adv', '--keyserver',
66- 'keyserver.ubuntu.com', '--recv',
67+ 'hkp://keyserver.ubuntu.com:80', '--recv',
68 key])
69
70
71
72=== modified file 'hooks/rabbitmq_server_relations.py'
73--- hooks/rabbitmq_server_relations.py 2014-04-24 16:30:11 +0000
74+++ hooks/rabbitmq_server_relations.py 2014-05-02 14:31:22 +0000
75@@ -33,6 +33,7 @@
76 related_units,
77 service_name,
78 local_unit,
79+ relations_of_type,
80 config,
81 unit_get,
82 is_relation_made,
83@@ -360,6 +361,12 @@
84 'check_rabbitmq.py'),
85 os.path.join(NAGIOS_PLUGINS, 'check_rabbitmq.py'))
86
87+ # Find out if nrpe set nagios_hostname
88+ hostname=None
89+ for rel in relations_of_type('nrpe-external-master'):
90+ if 'nagios_hostname' in rel:
91+ hostname = rel['nagios_hostname']
92+ break
93 # create unique user and vhost for each unit
94 current_unit = local_unit().replace('/', '-')
95 user = 'nagios-%s' % current_unit
96@@ -370,7 +377,7 @@
97 rabbit.create_user(user, password)
98 rabbit.grant_permissions(user, vhost)
99
100- nrpe_compat = NRPE()
101+ nrpe_compat = NRPE(hostname=hostname)
102 nrpe_compat.add_check(
103 shortname=rabbit.RABBIT_USER,
104 description='Check RabbitMQ',
105
106=== modified file 'revision'
107--- revision 2014-03-12 11:56:10 +0000
108+++ revision 2014-05-02 14:31:22 +0000
109@@ -1,1 +1,1 @@
110-116
111+128

Subscribers

People subscribed via source and target branches