lp://staging/~gz/juju-core/trunk

Created by Martin Packman and last modified
Get this branch:
bzr branch lp://staging/~gz/juju-core/trunk
Only Martin Packman can upload to this branch. If you are Martin Packman please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Martin Packman
Project:
juju-core
Status:
Development

Recent revisions

1686. By Martin Packman

Use loggo for ec2 provider logging

1685. By Martin Packman

[r=gz] environ/ec2: Implement Addresses() method

Refactor DNSName into the new generic Addresses method,
including mapping for both DNSName and PrivateDNSName, but
not ip addresses yet.

https://codereview.appspot.com/12767043/

R=fwereade, gz, jameinel

1684. By Dimiter Naydenov

[r=dimitern] names;api/uniter: UnitService; minor other fixes

Adds names.UnitService() call that converts a
unit name to its service name.
Removed UniterAPI.GetService. After a discussion
it was decided we don't need it: UniterAPI.Life
supports service tags, and with the new names call
we can convert the unit tag to a service name
without the need for an API call. uniter.Unit's
ServiceName() and Service() methods changed as
agreed.

https://codereview.appspot.com/13112045/

R=rogpeppe

1683. By Dimiter Naydenov

[r=dimitern] apiserver/uniter: Resolved and GetService added

Added two missing server-side calls to the uniter
API:
* Resolved
* GetService

Fixed some client-side uniter API TODOs to refer
to these new methods.

https://codereview.appspot.com/13113045/

R=rogpeppe

1682. By Andrew Wilkins

[r=axwalk],[bug=1211147] Terminate bootstrap rsyslog rule

I don't fully understand why this fixes the issue, so I was a little
hesitant to propose this, but on the other hand I have tested it and
it does work. I think someone who understands rsyslog well had better
take a look (Ian?)

Fixes bug #1211147

https://codereview.appspot.com/12926045/

1681. By Andrew Wilkins

[r=axwalk],[bug=1212903] debug-hooks: include unit/hook in PS1

Set a useful bash prompt, including the
unit and hook names. The tmux window name
gets truncated, so that's not super useful.

Fixes bug #1212903

https://codereview.appspot.com/13044043/

1680. By Ian Booth

[r=wallyworld] Parse and validate tools metadata

Tools metadata in simplestreams format can be parsed and
validated. A new environs/tools package is created, and the
existing environs/tools.go is moved there, and the new
simplestreams support added also. The agent/tools package
is disambiguated as agenttools where there were clashes.

The metadata plugin is extended to support validating tools
metadata in the same way as image metadata. The next branches
will support using the tools metadata when finding tools to
bootstrap with.

https://codereview.appspot.com/12833043/

1679. By Dimiter Naydenov

[r=dimitern] api/uniter: Skeleton of remaining calls/objects

This adds all needed modules for the complete
uniter client-side API, except for the RelationUnitsWatcher,
which will come later.

No tests, almost no implementation, just TODOs
and method signatures to help with whoever
picks it up while I'm away.

As a follow-up I'll start implementing the
rest of the uniter.Unit calls.

https://codereview.appspot.com/13107043/

R=fwereade

1678. By Roger Peppe

[r=rogpeppe] environs/*: move providers into provider

The environs name space is getting very cluttered.
This cleans it up a little and makes it easier to enumerate
all provider implementations.

https://codereview.appspot.com/13053043/

1677. By Michael Nelson

[r=gz],[bug=1208504] HPCloud: Don't incorrectly return ErrNoInstances.

Ensure that collectInstances includes servers in the missing slice if they are found but don't have an expected status. Accept BUILD(spawning) as a valid status.

So this is attempt 2 - with the knowledge that when environ.Instances()
returns ErrNoInstances we should not keep polling.

Checking the time details on the bug [1] shows that the ErrNoInstances was
returned after only 3 seconds - much shorter than the shortAttempt in
environs/openstack/provider.go. It turns out that e.collectInstances() is erronously
returning missing = [] when it finds a server, but that server doesn't have
an expected status of BUILD or ACTIV.

Moving the continue ensures that if the server is found but has the incorrect
status, it is included in the returned missing slice. I would also like to
explicitly test this change to collectInstances, but can't see a way to test
the unexposed function from environs.openstack.local_tests.go [2]. The added
test ensures simply that we do return for a BUILD(spawning) server.

Testing the `juju -v bootstrap && juju -v status` 10 times showed that
HPClound would get to BUILD(spawning) in around 9.1 seconds, so I've
increased the shortTimeout slightly to 15. Let me know if you prefer
something smaller.

Other things I tried:
 * Avoiding the increased shortAttempt by checking for:
      strings.HasPrefix(server.Status, nova.StatusBuild)
   Testing shows that HPCloud returns not "BUILD", but rather
   "BUILD(networking)" and "BUILD(spawning)" [4]. But this had one main issue
   in that we'd return with BUILD(networking) which is before the server has
   a public IP address.

[1] https://bugs.launchpad.net/juju-core/+bug/1208504
[2] http://paste.ubuntu.com/6002418/
[3] http://paste.ubuntu.com/5988133/
[4] See http://docs.hpcloud.com/api/compute#ServerStates (past where it states
the possible values :-))

https://codereview.appspot.com/12795045/

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp://staging/~juju/juju-core/trunk
This branch contains Public information 
Everyone can see this information.

Subscribers