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

Add VolumeSnapshot.created attribute #473

Conversation

@allardhoeve
Copy link
Contributor

allardhoeve commented Mar 3, 2015

One very important aspect of snapshots is when they are made, especially when used as historical backups. The field in VolumeSnapshot.extra that is used to represent this data varies between OS, EC2, GCE and Rackspace. Also, EC2 boasts a datetime value in extra, while OpenStack and derivatives use a plain string.

This PR adds a created attribute to VolumeSnapshot, that is a parsed date. This unified all implementations.

driver = None
size = None
extra = None
created = None

This comment has been minimized.

Copy link
@allardhoeve

allardhoeve Mar 3, 2015

Author Contributor

Added to aid introspection in all sorts of IDEs and ipython.

This comment has been minimized.

Copy link
@Kami

Kami Mar 4, 2015

Member

The behavior is not exactly the same. Previously those variables were only instance variables, now they are also class variables which could have undesired consequences in some cases (https://stackoverflow.com/questions/207000/python-difference-between-class-and-instance-attributes).

I would prefer to keep it as it was. As far as introspection goes -I need to dig into it, but at least as far as helping with types go - you can help IDE's by adding type asserts and docstring annotation (we already do the latter in most places).

This comment has been minimized.

Copy link
@allardhoeve

allardhoeve via email Mar 5, 2015

Author Contributor
@allardhoeve
Copy link
Contributor Author

allardhoeve commented Mar 3, 2015

@allardhoeve
Copy link
Contributor Author

allardhoeve commented Mar 3, 2015

  • CloudFrames implements a CloudFramesSnapshot, which has nothing to do with a VolumeSnapshot 😢
@@ -39,7 +40,7 @@
from libcloud.test.file_fixtures import ComputeFileFixtures


class CloudStackCommonTestCase(TestCaseMixin):
class CloudStackCommonTestCase(unittest.TestCase, TestCaseMixin):

This comment has been minimized.

Copy link
@allardhoeve

allardhoeve Mar 3, 2015

Author Contributor

To aid introspection in PyCharm.

@allardhoeve allardhoeve force-pushed the ByteInternet:uniform-snapshot-creation-attribute branch 2 times, most recently from 23bace9 to 1ddf58f Mar 4, 2015
@allardhoeve allardhoeve force-pushed the ByteInternet:uniform-snapshot-creation-attribute branch from 1ddf58f to ad31155 Mar 4, 2015
@Kami
Copy link
Member

Kami commented Mar 4, 2015

Besides the class variables change, this PR looks good to me.

Allard Hoeve added 2 commits Mar 5, 2015
@allardhoeve
Copy link
Contributor Author

allardhoeve commented Mar 5, 2015

Removed instance variables and merged trunk into the branch.

@asfgit asfgit closed this in 373059d Mar 7, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants
You can’t perform that action at this time.