From 25f2c6f96ae887edad29b1a8b3dc28932e713829 Mon Sep 17 00:00:00 2001 From: "andrew.glen-young@canonical.com" <> Date: Fri, 1 Mar 2013 12:36:31 -0500 Subject: [PATCH] Add support for the nrpe-external-master subordinate, add preinstall and upgrade hook. --- config.yaml | 10 ++++++++++ hooks/rabbitmq-relations | 7 +++++++ hooks/upgrade-charm | 1 + metadata.yaml | 3 +++ 4 files changed, 21 insertions(+) create mode 120000 hooks/upgrade-charm diff --git a/config.yaml b/config.yaml index 3cc36946..bcf4638c 100644 --- a/config.yaml +++ b/config.yaml @@ -17,3 +17,13 @@ options: ssl_cert: type: string description: X.509 certificate in PEM format (starts "-----BEGIN CERTIFICATE-----") + nagios_context: + default: "juju" + type: string + description: | + Used by the nrpe-external-master subordinate charm. + A string that will be prepended to instance name to set the host name + in nagios. So for instance the hostname would be something like: + juju-myservice-0 + If you're running multiple environments with the same services in them + this allows you to differentiate between them. diff --git a/hooks/rabbitmq-relations b/hooks/rabbitmq-relations index 192980bd..65ea4c9e 100755 --- a/hooks/rabbitmq-relations +++ b/hooks/rabbitmq-relations @@ -33,6 +33,8 @@ fi juju-log "rabbitmq-server: Firing hook $ARG0." function install_hook() { + [ -d exec.d ] && ( for f in exec.d/*/charm-pre-install; do [ -x $f ] && /bin/sh -c "$f";done ) + [[ ! `which pwgen` ]] && apt-get -y install pwgen DEBIAN_FRONTEND=noninteractive apt-get -qqy \ install --no-install-recommends rabbitmq-server @@ -41,6 +43,10 @@ function install_hook() { open-port 5672/tcp } +function upgrade_charm { + [ -d exec.d ] && ( for f in exec.d/*/charm-pre-install; do [ -x $f ] && /bin/sh -c "$f";done ) +} + function amqp_changed() { # Connecting clients should request a username and vhost. # In reponse, we generate a password for new users, @@ -109,6 +115,7 @@ case $ARG0 in "install") install_hook ;; "start") service rabbitmq-server status || service rabbitmq-server start ;; "stop") service rabbitmq-server status && service rabbitmq-server stop ;; + "upgrade-charm") upgrade_charm ;; "amqp-relation-joined") exit 0 ;; "amqp-relation-changed") amqp_changed ;; "cluster-relation-joined") cluster_joined ;; diff --git a/hooks/upgrade-charm b/hooks/upgrade-charm new file mode 120000 index 00000000..564b83a1 --- /dev/null +++ b/hooks/upgrade-charm @@ -0,0 +1 @@ +rabbitmq-relations \ No newline at end of file diff --git a/metadata.yaml b/metadata.yaml index f7fb58ad..887ce40c 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -8,6 +8,9 @@ description: | provides: amqp: interface: rabbitmq + nrpe-external-master: + interface: nrpe-external-master + scope: container peers: cluster: interface: rabbitmq