Juju appears to succeed but actually doesn't upload the charms repository

Peter Waller peter at scraperwiki.com
Fri Sep 6 10:40:14 UTC 2013


Hi All,

We just encountered a really nasty problem: a "juju upgrade-charm" was
appearing to cause the config-changed hook to run, and we were seeing what
looked like a correct deploy, but in fact the changes in the local charms
repository were not being reflected on the remote server.

We eventually ran --debug and saw the following:

$ juju upgrade-charm --debug --repository ~/sw/charms custard-dev
2013-09-06 10:31:18 INFO juju.provider.ec2 ec2.go:187 opening environment
"ec2"
2013-09-06 10:31:19 DEBUG juju state.go:158 waiting for DNS name(s) of
state server instances [i-...]
2013-09-06 10:31:25 INFO juju.state open.go:68 opening state; mongo
addresses: ["..."]; entity ""
2013-09-06 10:31:26 INFO juju.state open.go:106 connection established
2013-09-06 10:31:28 WARNING juju repo.go:341 charm: failed to load charm at
"/home/pwaller/sw/charms/raring/munin-server": open
/home/pwaller/sw/charms/raring/munin-server/metadata.yaml: no such file or
directory
2013-09-06 10:31:35 INFO juju supercommand.go:284 command finished

As it happens, munin-server is unrelated to what I was trying to deploy and
has been untouched for months, yet we have been happily deploying all of
this time.

I suspect that there has been a recent behaviour change, I'm on
1.13.2-precise-amd64.

This "WARNING" should surely actually be a fatal, because when I fix the
problem, I get this:


$ jj upgrade-charm --debug --repository ~/sw/charms custard-dev
2013-09-06 10:31:49 INFO juju.provider.ec2 ec2.go:187 opening environment
"ec2"
2013-09-06 10:31:50 DEBUG juju state.go:158 waiting for DNS name(s) of
state server instances [i-...]
2013-09-06 10:31:56 INFO juju.state open.go:68 opening state; mongo
addresses: ["..."]; entity ""
2013-09-06 10:31:57 INFO juju.state open.go:106 connection established
2013-09-06 10:31:58 WARNING juju dir.go:192 charm: making
"/home/pwaller/sw/charms/raring/custard/hooks/queue-relation-changed"
executable in charm
2013-09-06 10:31:58 INFO juju conn.go:292 writing charm to storage [17698
bytes]
2013-09-06 10:32:00 INFO juju conn.go:304 adding charm to state
2013-09-06 10:32:02 INFO juju supercommand.go:284 command finished

In other words, my local charm repository was not being written to the
remote storage, but the debug log gave the impression of a successful
upgrade.

We've fixed our immediate problem by introducing a valid metadata.yaml, but
it is distressing to think that juju has been giving the team an impression
of successful deploys when it is actually broken.

All the best,

- Peter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/juju/attachments/20130906/017a9913/attachment.html>


More information about the Juju mailing list