charm-helpers:fix-distributed-wait

Last commit made on 2018-03-28
Get this branch:
git clone -b fix-distributed-wait https://git.launchpad.net/charm-helpers

Branch merges

Branch information

Name:
fix-distributed-wait
Repository:
lp:charm-helpers

Recent commits

1a4b770... by David Ames

Use non_zero_wait to override modulo 0

Push the unit % modulo == 0 logic to modulo_distribution. In
distributed_wait check for leadership and return 0 if the leader
or call modulo_distribution with non_zero_wait=True.

326c2c6... by David Ames

Merge branch 'fix-distributed-wait' of github.com:juju/charm-helpers into fix-distributed-wait

0eadf45... by David Ames

Non-leader should be modulo * wait

Per requests changing non-leader to get modulo * wait rather than
(modulo + 1) * wait.

f5e6ebe... by David Ames

Handle non-zero unit numbered leader

When the distributed_wait function is called and the leader does not
happen to have 0 unit number, the leader winds up waiting while the
non-leader modulo 0 does not. Also when there are units > modulo
there may be conflicts with the leader when multiple units get modulo
0 and do not wait. Neither of these are desired behavior.

This change makes sure the leader, regardless of modulo, never waits.
And forces non-leaders which happen to get modulo 0 to wait.

For applications where the original behavior is desirable,
modulo_distribution can be used directly.

424ef74... by David Ames

Merge branch 'master' into fix-distributed-wait

81fff14... by James Page

storage: Add create_logical_volume helper (#141)

Add basic LVM helper for creation of logical volumes.

73aac7d... by David Ames

Handle non-zero unit numbered leader

When the distributed_wait function is called and the leader does not
happen to have 0 unit number, the leader winds up waiting while the
non-leader modulo 0 does not. Also when there are units > modulo
there may be conflicts with the leader when multiple units get modulo
0 and do not wait. Neither of these are desired behavior.

This change makes sure the leader, regardless of modulo, never waits.
And forces non-leaders which happen to get modulo 0 to wait.

For applications where the original behavior is desirable,
modulo_distribution can be used directly.

f76317e... by Cory Johns

Bump version and changelog for release

1929092... by Stuart Bishop

Fix network get (#118)

* Add egress_subnets helper to access egress-subnets on a relation

* Drop Python3-only regexp option

We shall trust that relation-get only sends us ASCII instead.

* Document ingress & egress for both sides of a relation

* Fix NotImplemented fallbacks for network information APIs

Addresses https://github.com/juju/charm-helpers/issues/112

8d82b2d... by Cory Johns

Fix JSON serializable error using default (#136)

Alternative to #135 that preserves the key ordering fix.