Por que meus ganchos de relações não estão funcionando?

1

Estou tentando criar um charme que possa se conectar ao rabbitmq. Eu escrevi um amqp-relation-joined e um amqp-relation-changed. Nenhum desses scripts é executado quando eu executo juju add-relation $mycharm rabbitmq-server . Nos logs, estou vendo

...
==> <$HOME>/.juju/local/log/unit-rabbitmq-server-0.log <==
2014-03-04 20:43:48 DEBUG juju.worker.uniter.filter filter.go:523 no new charm event
2014-03-04 20:43:48 DEBUG juju.worker.uniter.filter filter.go:338 got relations change

==> <$HOME>/.juju/local/log/unit-flask-0.log <==
2014-03-04 20:43:48 DEBUG juju.worker.uniter.filter filter.go:523 no new charm event
2014-03-04 20:43:48 DEBUG juju.worker.uniter.filter filter.go:338 got relations 
...

Espero ver algum tipo de saída dos meus ganchos porque estou registrando coisas.

Em amqp-relation-joined :

echo "DOING AMQP STUFF"
juju-log "$JUJU_REMOTE_UNIT modified its settings"
juju-log "Relation settings:"
relation-get
juju-log "Relation members:"
relation-list
touch /var/i_was_here

Em amqp-relation-changed :

echo "DOING AMQP STUFF"
juju-log "$JUJU_REMOTE_UNIT modified its settings"
juju-log "Relation settings:"
relation-get
juju-log "Relation members:"
relation-list
touch /var/i_was_also_here

Quando eu ssh na máquina, não estou vendo /var/i_was_here ou /var/i_was_also_here

Estou executando o juju no Ubuntu 12.04 no modo local.

EDITAR:

O metadata.yml é

name: flask
summary: Flask is a lightweight "microframework" that is often used for simple apis
maintainer: Ubuntu <[email protected]>
description: |
  ...
categories:
  - misc
subordinate: false
provides:
  api:
    interface: http
requires:
  amqp:
    interface: rabbitmq

Os encantos que estou usando são colocados em um único repositório no link

    
por Peter Klipfel 04.03.2014 / 23:41

2 respostas

0

Ok, então o problema que eu estava tendo era que eu não estava planejando um processo no start hook. Como tal, o gancho nunca completou e essencialmente congelou o estado desse serviço. Eu pensei que estava funcionando porque a API que eu estava configurando responderia. O processo que congelou foi um processo uwsgi em primeiro plano.

No entanto, debug-hooks não estava em execução porque o nó estava congelado. O que eu não percebi é que a sessão do tmux abre uma nova sessão para cada hook. Assim, a sessão inicial não terá os recursos mostrados na documentação ... É claro que a documentação diz isso, mas meu cérebro não percebeu isso.

Obrigado a todos os juju por me ajudarem com isso.

    
por Peter Klipfel 07.03.2014 / 06:38
0

Não vejo nada de errado com o que você postou. Você deve verificar se os ganchos são executáveis e também dar uma olhada no comando debug hooks :

link

    
por hatch 05.03.2014 / 00:31