<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openstack/python-cinderclient.git/cinderclient/api_versions.py, branch 2.0.1</title>
<subtitle>opendev.org: openstack/python-cinderclient.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/'/>
<entry>
<title>Merge "Make V3 the default and fixup version reporting"</title>
<updated>2017-03-11T01:09:36+00:00</updated>
<author>
<name>Jenkins</name>
<email>jenkins@review.openstack.org</email>
</author>
<published>2017-03-11T01:09:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=6c499cc6a5dcb663bdc6ba7246114afcc21aface'/>
<id>6c499cc6a5dcb663bdc6ba7246114afcc21aface</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Make V3 the default and fixup version reporting</title>
<updated>2017-03-10T17:58:50+00:00</updated>
<author>
<name>John Griffith</name>
<email>john.griffith8@gmail.com</email>
</author>
<published>2017-03-10T03:27:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=13702ce40c712e6ad38d688c92aa55b349fb935b'/>
<id>13702ce40c712e6ad38d688c92aa55b349fb935b</id>
<content type='text'>
This adds in a version-list command that reports the
min/max versions of the Cinder API supported by this
version of the client, and also queries the Cinder API
V3 server to obtain min/max micro-versions and report
those as well.

In addition, we bump the default version of the client to
3.0, of course if you specify V2 in your rc file or on the
cmd line that works fine too.

I did run into one problem where I broke:
  cinder.tests.unit.test_shell:test_cinder_service_name

Seems to be some hidden trickery with a fake, fixture or
mock that I can't figure out.  For now I added a skip to
that test, but maybe somebody can point out the problem
during review.

Change-Id: I44e667c511d89de28af758a3c9ea1f812e682f18
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds in a version-list command that reports the
min/max versions of the Cinder API supported by this
version of the client, and also queries the Cinder API
V3 server to obtain min/max micro-versions and report
those as well.

In addition, we bump the default version of the client to
3.0, of course if you specify V2 in your rc file or on the
cmd line that works fine too.

I did run into one problem where I broke:
  cinder.tests.unit.test_shell:test_cinder_service_name

Seems to be some hidden trickery with a fake, fixture or
mock that I can't figure out.  For now I added a skip to
that test, but maybe somebody can point out the problem
during review.

Change-Id: I44e667c511d89de28af758a3c9ea1f812e682f18
</pre>
</div>
</content>
</entry>
<entry>
<title>Add get_highest_version method</title>
<updated>2017-03-10T16:48:46+00:00</updated>
<author>
<name>scottda</name>
<email>scott.dangelo@gmail.com</email>
</author>
<published>2016-12-13T19:14:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=61faea2eb3a3725e4dc81e15c1a402f2c8dc8fcc'/>
<id>61faea2eb3a3725e4dc81e15c1a402f2c8dc8fcc</id>
<content type='text'>
Add method to query a server that supports /v3 endpoint and get the
highest supported microversion.

Change-Id: If179760787526440c852803eafaf9617bcd2d36e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add method to query a server that supports /v3 endpoint and get the
highest supported microversion.

Change-Id: If179760787526440c852803eafaf9617bcd2d36e
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix discover_version</title>
<updated>2017-03-09T21:42:28+00:00</updated>
<author>
<name>scottda</name>
<email>scott.dangelo@hpe.com</email>
</author>
<published>2016-10-12T22:03:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=3220566e46f2480098801546345d429dd6dfc9d6'/>
<id>3220566e46f2480098801546345d429dd6dfc9d6</id>
<content type='text'>
discover_version needs to find the proper module for server_api_version
method, and it needs to properly parse a list of versions.
Do some refactor to clean things up.
Add unit tests.

Co-Authored-By: waj334 &lt;justin.wilson@intel.com&gt;
Change-Id: I742bc33074cc55fe5f9682b8b97a82573c51183f
Closes-Bug: #1632872
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
discover_version needs to find the proper module for server_api_version
method, and it needs to properly parse a list of versions.
Do some refactor to clean things up.
Add unit tests.

Co-Authored-By: waj334 &lt;justin.wilson@intel.com&gt;
Change-Id: I742bc33074cc55fe5f9682b8b97a82573c51183f
Closes-Bug: #1632872
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump MAX_VERSION to 3.27</title>
<updated>2017-01-31T16:09:23+00:00</updated>
<author>
<name>scottda</name>
<email>scott.dangelo@ibm.com</email>
</author>
<published>2017-01-31T16:07:07+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=4395dbdda6415b337a41afe5f289281a13465c5d'/>
<id>4395dbdda6415b337a41afe5f289281a13465c5d</id>
<content type='text'>
We added cinderclient support for new cinder attach APIs,
but we didn't not bump the cindercliient MAX_VERSION to 3.27 to
correspond with the microversion of the new APIs.

Change-Id: I8ee93e28e8425cd46784a6f7280227ab28135177
Closes-Bug: 1660673
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We added cinderclient support for new cinder attach APIs,
but we didn't not bump the cindercliient MAX_VERSION to 3.27 to
correspond with the microversion of the new APIs.

Change-Id: I8ee93e28e8425cd46784a6f7280227ab28135177
Closes-Bug: 1660673
</pre>
</div>
</content>
</entry>
<entry>
<title>stop adding log handler</title>
<updated>2016-12-06T20:59:40+00:00</updated>
<author>
<name>Matthew Edmonds</name>
<email>edmondsw@us.ibm.com</email>
</author>
<published>2016-12-06T20:59:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=4b3ac9405e7fcc7a4c632ed9faef4e67d92efda3'/>
<id>4b3ac9405e7fcc7a4c632ed9faef4e67d92efda3</id>
<content type='text'>
A StreamHandler was being setup that dumped logs to the console
regardless of the user's wishes. This removes that StreamHandler
setup so that the user can control the logging themselves.

Change-Id: I02756539a7c094153b9ec29a0ff2fecaabd44f71
Closes-Bug: #1647846
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A StreamHandler was being setup that dumped logs to the console
regardless of the user's wishes. This removes that StreamHandler
setup so that the user can control the logging themselves.

Change-Id: I02756539a7c094153b9ec29a0ff2fecaabd44f71
Closes-Bug: #1647846
</pre>
</div>
</content>
</entry>
<entry>
<title>Deleting volume metadata keys with a single request</title>
<updated>2016-09-01T19:53:06+00:00</updated>
<author>
<name>Yuriy Nesenenko</name>
<email>ynesenenko@mirantis.com</email>
</author>
<published>2016-06-02T13:34:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=e15d8e7f0920cb7cd5719d2861dea886bd6f9cb0'/>
<id>e15d8e7f0920cb7cd5719d2861dea886bd6f9cb0</id>
<content type='text'>
Deleting multiple volume metadata keys with a single request
to improve performance. To delete multiple metadata items without
affecting the remaining ones, just update the metadata items with
the updated complete list of ones (without items to delete)
in the body of the request. This patch uses etags to avoid the
lost update problem with volume metadata. The command isn't changed:

 $ cinder metadata volume_id unset k1 k2 k3

Co-Authored-By: Ivan Kolodyazhny &lt;e0ne@e0ne.info&gt;
Depends-On: I575635258c10f299181b8e4cdb51a7ad1f1be764
Implements: blueprint delete-multiple-metadata-keys
Change-Id: I8e18133ffee87c240a7af4b8177683ab99330d9e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Deleting multiple volume metadata keys with a single request
to improve performance. To delete multiple metadata items without
affecting the remaining ones, just update the metadata items with
the updated complete list of ones (without items to delete)
in the body of the request. This patch uses etags to avoid the
lost update problem with volume metadata. The command isn't changed:

 $ cinder metadata volume_id unset k1 k2 k3

Co-Authored-By: Ivan Kolodyazhny &lt;e0ne@e0ne.info&gt;
Depends-On: I575635258c10f299181b8e4cdb51a7ad1f1be764
Implements: blueprint delete-multiple-metadata-keys
Change-Id: I8e18133ffee87c240a7af4b8177683ab99330d9e
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for group snapshots</title>
<updated>2016-07-19T20:35:45+00:00</updated>
<author>
<name>xing-yang</name>
<email>xing.yang@emc.com</email>
</author>
<published>2016-05-21T12:09:00+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=f7928c405824691013428177455c8257814316f5'/>
<id>f7928c405824691013428177455c8257814316f5</id>
<content type='text'>
This patch adds support for group snapshots.

Server side API patch was merged:
    https://review.openstack.org/#/c/361369/

Current microversion is 3.14. The following CLI's are supported:
cinder --os-volume-api-version 3.14 group-create-from-src
    --name my_group --group-snapshot &lt;group snapshot uuid&gt;
cinder --os-volume-api-version 3.14 group-create-from-src
    --name my_group --source-group &lt;source group uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-create
    --name &lt;name&gt; &lt;group uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-list
cinder --os-volume-api-version 3.14 group-snapshot-show
    &lt;group snapshot uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-delete
    &lt;group snapshot uuid&gt;

Depends-on: I2e628968afcf058113e1f1aeb851570c7f0f3a08
Partial-Implements: blueprint generic-volume-group
Change-Id: I5c311fe5a6aeadd1d4fca60493f4295dc368944c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds support for group snapshots.

Server side API patch was merged:
    https://review.openstack.org/#/c/361369/

Current microversion is 3.14. The following CLI's are supported:
cinder --os-volume-api-version 3.14 group-create-from-src
    --name my_group --group-snapshot &lt;group snapshot uuid&gt;
cinder --os-volume-api-version 3.14 group-create-from-src
    --name my_group --source-group &lt;source group uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-create
    --name &lt;name&gt; &lt;group uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-list
cinder --os-volume-api-version 3.14 group-snapshot-show
    &lt;group snapshot uuid&gt;
cinder --os-volume-api-version 3.14 group-snapshot-delete
    &lt;group snapshot uuid&gt;

Depends-on: I2e628968afcf058113e1f1aeb851570c7f0f3a08
Partial-Implements: blueprint generic-volume-group
Change-Id: I5c311fe5a6aeadd1d4fca60493f4295dc368944c
</pre>
</div>
</content>
</entry>
<entry>
<title>Add generic volume groups</title>
<updated>2016-07-19T04:37:36+00:00</updated>
<author>
<name>xing-yang</name>
<email>xing.yang@emc.com</email>
</author>
<published>2016-05-16T10:22:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=6c5a764c77b3ac8a16b7f8cb16486f02d3099c3a'/>
<id>6c5a764c77b3ac8a16b7f8cb16486f02d3099c3a</id>
<content type='text'>
This patch adds support to generic volume groups.

Server patch is here: https://review.openstack.org/#/c/322459/

Current microversion is 3.13. The following CLI's are supported:
cinder --os-volume-api-version 3.13 group-create --name my_group
    &lt;group type uuid&gt; &lt;volume type uuid&gt;
cinder --os-volume-api-version 3.13 group-list
cinder --os-volume-api-version 3.13 create --group-id &lt;group uuid&gt;
    --volume-type &lt;volume type uuid&gt; &lt;size&gt;
cinder --os-volume-api-version 3.13 group-update &lt;group uuid&gt;
    --name new_name  description new_description
    --add-volumes &lt;uuid of volume to add&gt;
    --remove-volumes &lt;uuid of volume to remove&gt;
cinder --os-volume-api-version 3.13 group-show &lt;group uuid&gt;
cinder --os-volume-api-version 3.13 group-delete
    --delete-volumes &lt;group uuid&gt;

Depends-on: I35157439071786872bc9976741c4ef75698f7cb7
Change-Id: Icff2d7385bde0a7c023c2ca38fffcd4bc5460af9
Partial-Implements: blueprint generic-volume-group
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds support to generic volume groups.

Server patch is here: https://review.openstack.org/#/c/322459/

Current microversion is 3.13. The following CLI's are supported:
cinder --os-volume-api-version 3.13 group-create --name my_group
    &lt;group type uuid&gt; &lt;volume type uuid&gt;
cinder --os-volume-api-version 3.13 group-list
cinder --os-volume-api-version 3.13 create --group-id &lt;group uuid&gt;
    --volume-type &lt;volume type uuid&gt; &lt;size&gt;
cinder --os-volume-api-version 3.13 group-update &lt;group uuid&gt;
    --name new_name  description new_description
    --add-volumes &lt;uuid of volume to add&gt;
    --remove-volumes &lt;uuid of volume to remove&gt;
cinder --os-volume-api-version 3.13 group-show &lt;group uuid&gt;
cinder --os-volume-api-version 3.13 group-delete
    --delete-volumes &lt;group uuid&gt;

Depends-on: I35157439071786872bc9976741c4ef75698f7cb7
Change-Id: Icff2d7385bde0a7c023c2ca38fffcd4bc5460af9
Partial-Implements: blueprint generic-volume-group
</pre>
</div>
</content>
</entry>
<entry>
<title>Make APIVersion's null check more pythonic</title>
<updated>2016-08-29T09:41:57+00:00</updated>
<author>
<name>Gorka Eguileor</name>
<email>geguileo@redhat.com</email>
</author>
<published>2016-08-05T12:45:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/python-cinderclient.git/commit/?id=8b5a772e36fb7b7fae42a956bc844e792bec2035'/>
<id>8b5a772e36fb7b7fae42a956bc844e792bec2035</id>
<content type='text'>
Our current APIVersion object has an is_null method to check when the
version instance is null (major=0 and minor=0).

While this works it is not very pythonic, since you have to write
expressions such as:

 if not min_version and not max_version:
     return True
 elif ((min_version and max_version) and
       max_version.is_null() and min_version.is_null()):
     return True

This patch removes the is_null method and instead implements the truth
value testing to simplify expressions and make code more pythonic.

So previous code would just look like:

 if not min_version and not max_version:
     return True

Because this will work with min_version being None or being an
APIVersion instance with major=0 and minor=0.

Change-Id: I7497c5dc940c1e726507117cadbad232d8c1d80d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Our current APIVersion object has an is_null method to check when the
version instance is null (major=0 and minor=0).

While this works it is not very pythonic, since you have to write
expressions such as:

 if not min_version and not max_version:
     return True
 elif ((min_version and max_version) and
       max_version.is_null() and min_version.is_null()):
     return True

This patch removes the is_null method and instead implements the truth
value testing to simplify expressions and make code more pythonic.

So previous code would just look like:

 if not min_version and not max_version:
     return True

Because this will work with min_version being None or being an
APIVersion instance with major=0 and minor=0.

Change-Id: I7497c5dc940c1e726507117cadbad232d8c1d80d
</pre>
</div>
</content>
</entry>
</feed>
