Skip to content

Add VolumeSnapshot.created attribute#473

Closed
allardhoeve wants to merge 3 commits intoapache:trunkfrom
ByteInternet:uniform-snapshot-creation-attribute
Closed

Add VolumeSnapshot.created attribute#473
allardhoeve wants to merge 3 commits intoapache:trunkfrom
ByteInternet:uniform-snapshot-creation-attribute

Conversation

@allardhoeve
Copy link
Copy Markdown
Contributor

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.

Comment thread libcloud/compute/base.py Outdated
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

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

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

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).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@allardhoeve
Copy link
Copy Markdown
Contributor Author

@Kami

@allardhoeve
Copy link
Copy Markdown
Contributor Author

  • CloudFrames implements a CloudFramesSnapshot, which has nothing to do with a VolumeSnapshot 😢

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

To aid introspection in PyCharm.

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

Kami commented Mar 4, 2015

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

@allardhoeve
Copy link
Copy Markdown
Contributor Author

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants