Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FLOC-3983] Acceptance tests prep for node shutdown #2532

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

itamarst
Copy link
Contributor

When a node is shutdown and later started its public IP may have changed. We want to have an acceptance test that shuts down a node, to test moving datasets off dead nodes. We can therefore not rely on a fixed public IP for all tests.

Did so by trusting Flocker's reported IPs for nodes by default. However, if the backend provides ICloudAPI we use that to figure out public IP for each node.

:returns: A mapping of ``unicode`` compute instance IDs
(compatible with those returned by
``IBlockDeviceAPI.compute_instance_id``) to IPs of those
nodes, also as unicode..
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: extra . also

``unicode``

@sarum90
Copy link
Contributor

sarum90 commented Jan 28, 2016

Good stuff, looks like a nice way to work around the problem.

Although, it seems that the loopback tests are currently failing with this change :(

I'd really like to see a slightly better interface for listing the live nodes (specifically returning something that is not a map from compute_instance_id to list of ip addresses). I would be much more happy about maintaining something that looked like that long term.

For now I think I'm going to ask for a second review after things are patched up. Should be a quick second review though, just to verify the fix for the presently failing loopback acceptance tests and look at the new interface.

@itamarst
Copy link
Contributor Author

itamarst commented Feb 8, 2016

The tests are failing because loopback backend doesn't support ICloudAPI. I think the way to solve this is to restore the env variables for public IP, and use them if ICloudAPI is not available on the backend. Since ICloudAPI isn't available the shutdown test won't run, so the public IP won't be invalidated and using the env variables will therefore be OK.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants