ZooKeeper should be managed by tests
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pyjuju |
Fix Released
|
High
|
Jim Baker |
Bug Description
Right now we're running tests against a hand-managed zookeeper. While this works, we're also constantly getting failed tests due to improper state inside zookeeper which was left around by a previously interrupted test. Rather than having to figure the problem by hand, and then resetting the state by hand too, the zookeeper server should be managed by a base class which is in charge of starting and stopping it, and resetting it whenever things go wrong.
The test zookeeper should run in a non-standard port, so that there's no danger of a test run ever killing a real deployment state.
This is being marked as high because we're constantly running into the interrupted test problem, and wasting time with it.
Related branches
- Gustavo Niemeyer: Approve
-
Diff: 576 lines (+206/-30)16 files modifiedensemble/__init__.py (+1/-0)
ensemble/agents/tests/common.py (+2/-1)
ensemble/agents/tests/test_base.py (+7/-5)
ensemble/agents/tests/test_machine.py (+4/-2)
ensemble/control/initialize.py (+5/-1)
ensemble/formula/tests/test_publisher.py (+2/-1)
ensemble/ftests/test_connection.py (+3/-3)
ensemble/machine/tests/test_unit_deployment.py (+7/-5)
ensemble/providers/dummy.py (+2/-2)
ensemble/providers/ec2/tests/test_connect.py (+2/-1)
ensemble/providers/ec2/tests/test_launch.py (+2/-1)
ensemble/providers/tests/test_dummy.py (+1/-2)
ensemble/state/tests/common.py (+3/-2)
ensemble/state/tests/test_initialize.py (+2/-1)
ensemble/tests/common.py (+152/-0)
test (+11/-3)
Changed in ensemble: | |
status: | New → Confirmed |
importance: | Undecided → High |
Changed in ensemble: | |
assignee: | nobody → Jim Baker (jimbaker) |
Changed in ensemble: | |
status: | Confirmed → In Progress |
Changed in ensemble: | |
status: | In Progress → Fix Committed |
Changed in ensemble: | |
status: | Fix Committed → In Progress |
Changed in ensemble: | |
status: | In Progress → Fix Committed |
Changed in ensemble: | |
milestone: | none → 0.3 |
Changed in ensemble: | |
status: | Fix Committed → Fix Released |