Commit Graph

743 Commits

Author SHA1 Message Date
Jenkins ba46e69eee Merge "Replace functions 'dict.get' and 'del' with 'dict.pop'" 2017-03-06 17:09:00 +00:00
Abhishek Kekane 87e4f7646f x-openstack-request-id logged twice in logs
In the recent release of keystoneauth1 2.18.0 provision is made to log
x-openstack-request-id for session client. Once this new library is synced
in openstack projects, the x-openstack-request-id will be logged twice
on the console if session client is used.

For example,
$ glance --debug image-list

DEBUG:keystoneauth.session:GET call to image for
http://10.232.48.204:9292/v2/schemas/image used request id
req-96a3f203-c605-4c96-a31d-f1199d41705c

DEBUG:glanceclient.common.http:GET call to glance-api for
http://10.232.48.204:9292/v2/schemas/image used request id
req-96a3f203-c605-4c96-a31d-f1199d41705c

Above log will be logged twice on the console.

Removed logging of x-openstack-request-id in case of SessionClient as it
is already logged in keystoneauth1. x-openstack-request-id will only be
logged once on console if HTTPClient is used.

Depends-On: I492b331ff3da8d0b91178bf0d5fe1d3702f15bd7
Closes-Bug: #1657351
Change-Id: I64258f997dc060113f53682aee74bdd40a346e54
2017-02-22 01:49:22 +05:30
bhagyashris 6740f57096 Replace functions 'dict.get' and 'del' with 'dict.pop'
Refactoring code: Making dict to use single instruction: pop()
rather than two instructions: get() and del, giving the codes a
format that carries through.

TrivialRefactoring

Change-Id: Idb21df37c287fdff24c29153676f82544f735297
2017-01-31 10:09:28 +05:30
Jenkins c1f54742f9 Merge "Replace dict.iteritems() with dict.items()" 2017-01-24 22:34:49 +00:00
Jenkins 99cbde26ac Merge "Add support for community images" 2017-01-23 22:19:37 +00:00
Jenkins a76fdcd20a Merge "Add request id to returned objects" 2017-01-23 22:19:31 +00:00
Ravi Jethani 610177a779 Add request id to returned objects
Adding two classes RequestIdProxy and GeneratorProxy derived from
wrapt.ObjectProxy to wrap objects returned from the API.

GeneratorProxy class is used to wrap generator objects returned
by cases like images.list() etc. whereas RequestIdProxy class is
used to wrap non-generator object cases like images.create() etc.

In all cases the returned object will have the same behavior as
the wrapped(original) object. However now the returned objects
will have an extra property 'request_ids' which is a list of
exactly one request id.

For generator cases the request_ids property will be an empty list
until the underlying generator is invoked at-least once.

Co-Authored-By: Abhishek Kekane <abhishek.kekane@nttdata.com>

Closes-Bug: #1525259
Blueprint: return-request-id-to-caller
Change-Id: If8c0e0843270ff718a37ca2697afeb8da22aa3b1
2017-01-20 14:50:42 +05:30
Evgeny Antyshev 6ab6a740ff Add ploop in disk_format
"ploop" image format is supported in upstream Glance
https://review.openstack.org/341633

And similar patch has been added in python-openstackclient:
https://review.openstack.org/411405

Co-Authored-By: yuyafei <yu.yafei@zte.com.cn>
Change-Id: I1471224df97cf5fecfe7f02e549855af81c45848
Related-Bug: 1650342
2017-01-19 14:31:01 +00:00
Jenkins 8f8df1cced Merge "Handle formatting of subcommand name in error output" 2017-01-13 19:35:35 +00:00
Ian Cordasco 81039a1e36 Handle formatting of subcommand name in error output
On Python 2, decoding all arguments leads to the possibility that users
that use the wrong command or mistype the name will see error output
with a unicode string's representation instead of one without it. To
avoid this we try and find the first non-option string in the argument
list and replace it with an string that is not text only on Python 2. If
we encoded the string at all times, then users installing glanceclient
on Python 3 would see b'invalid-subcommand' instead. That's as bad as
seeing u'invalid-subcommand' on Python 2.

Closes-bug: 1533090
Change-Id: I018769e159a607ebb233902cbeb13b95ca417190
2017-01-11 07:33:34 -06:00
Li Wei efb5e2aa32 Add vhdx in disk_format
vhdx is also a format of the disk valid value in v2 version,
so add it in disk_format.

Related-Bug: 1635518
Co-Authored-By: Stuart McLaren <stuart.mclaren@hpe.com>
Change-Id: I7d82d4a4bdb180a53e86552f6f6b3bed908e6dc0
2017-01-10 07:41:02 +00:00
Luong Anh Tuan 1a5fac7da2 Replace dict.iteritems() with dict.items()
Following Python 3 guide https://wiki.openstack.org/wiki/Python3
Thus, we should replace task.iteritems() with task.items()

Change-Id: If617c3a87836930dc78a4ce7dd45a9b7804e0d24
2016-12-20 11:02:42 +07:00
Jenkins fa11427af5 Merge "Use import_versioned_module from oslo.utils" 2016-12-16 12:30:19 +00:00
Jenkins 8b96bbc34c Merge "Revert "Add last_request_id member to HTTPClient and SessionClient"" 2016-12-14 17:35:22 +00:00
Li Wei 4773c96672 Use import_versioned_module from oslo.utils
oslo.utils 3.17 provides this funtion, so just use it directly.

Change-Id: I85cb78a6fd33a5b1f7e09648efed1b0737678eee
Closes-Bug: #1627313
2016-12-06 09:35:55 +00:00
Jenkins 993d45293c Merge "Add Apache 2.0 license to source file" 2016-11-18 15:48:45 +00:00
Alexander Bashmakov 20ab7b8201 Add support for community images
This patch adds support for community images retrieval and
creation in the Glance client.

Depends-On: I94bc7708b291ce37319539e27b3e88c9a17e1a9f
Change-Id: I81e83eab5a9d30643c354f0cb6df425cf7a7bae3
2016-11-10 22:55:33 +00:00
Abhishek Kekane c2898998a7 Move old oslo-incubator code out of openstack/common
As part of the first community-wide goal, teams were asked to
remove the openstack/common package of their projects if one
existed. This was a byproduct of the old oslo-incubator form
of syncing common functionality.

Package openstack/common/apiclient is moved to glanceclient/v1
package as it is used by v1 api only.

NOTE:
Removed glanceclient/common/base.py as it is deprecated and not
used anywhere.

Closes-Bug: #1639487
Change-Id: Ib3ac09743ce761ab0186e99e1c9de02517f89510
2016-11-08 11:33:09 +05:30
Cao Xuan Hoang 7a6cd5ebe2 Add Apache 2.0 license to source file
As per OpenStack licensing guide lines [1]:
[H102 H103] Newly contributed Source Code should be licensed under
the Apache 2.0 license.
[H104] Files with no code shouldn't contain any license header nor
comments, and must be left completely empty.

[1] http://docs.openstack.org/developer/hacking/#openstack-licensing

Change-Id: I15cbb71d028e9297cb49b5aab7d0427f7be36c49
2016-10-04 09:38:39 +07:00
Cao Xuan Hoang 47e289bec2 Replace 'assertTrue(a not in b)' with 'assertNotIn(a, b)'
trivialfix

Change-Id: I4d05a8bbcf99794c02261a9f9136e1c6f2c561a6
2016-09-28 11:52:29 +07:00
Itisha Dewan a9115b4cd8 switch from keystoneclient to keystoneauth
move glanceclient to keystoneauth as keystoneclient's auth session,
plugins and adapter code has been deprecated.

refer to [1] for more information.

1: https://github.com/openstack/python-keystoneclient/commit/1a84e24fa4ce6d3169b59e385f35b2a63f2257f0

implements bp: use-keystoneauth

Co-Authored-By: Itisha <ishadewan07@gmail.com>
Change-Id: I88fb327628e1bec48dc391f50d66b3deab4a8ab9
2016-09-03 03:22:04 +00:00
Jenkins d4196325eb Merge "Revert "Don't update tags every time"" 2016-08-20 19:16:37 +00:00
Steve Martinelli b78285761d Revert "Don't update tags every time"
This reverts commit e77322c179.

Change-Id: Ida826a2aa888beeb76dbe657b2ccd6cb088157ed
2016-08-19 06:10:14 +00:00
KATO Tomoyuki 3a10936248 Update doc URL
Docs team changed URL for search engine optimization.

Change-Id: I68e2a5d666da55722d5ee2fa4aec2326c0de0946
2016-08-19 07:31:05 +09:00
Jenkins 5de07c3395 Merge "Fix warlock model creation" 2016-08-12 15:15:46 +00:00
Jenkins 7936f173c0 Merge "Don't update tags every time" 2016-08-08 09:09:22 +00:00
Jenkins 07eb350b33 Merge "Remove unused openstack/common/apiclient/client" 2016-08-04 17:05:26 +00:00
Jenkins c3524b6d8c Merge "Fix string interpolation to delayed to be handled by the logging code" 2016-07-30 22:02:00 +00:00
Jenkins c039237007 Merge "Log request-id before exceptions raised" 2016-07-30 22:01:48 +00:00
Jenkins ee7e22fa52 Merge "py3: Fix encoding and use sys.stdin.buffer" 2016-07-28 11:30:11 +00:00
Matt Riedemann 96927a6c2b Remove unused openstack/common/apiclient/client
This code comes from oslo-incubator and is now frozen,
and the client module specifically is not used in glanceclient.
It's confusing to have in the library since glanceclient has
it's own HTTPClient under glanceclient.common.http. So let's just
remove this effectively dead code.

Change-Id: I820b2439ce7158a63dc55553ce50a9580d63ffb3
2016-07-27 12:02:01 -04:00
dineshbhor 98bbbb88e7 Replace OpenStack LLC with OpenStack Foundation
Change-Id: I5877db07031b12d8fa7ed774ac09d24f8906ea86
Closes-Bug: #1214176
2016-07-26 15:17:14 +05:30
Sirushti Murugesan 376037d371 py3: Fix encoding and use sys.stdin.buffer
* exc.py: Encode body in response before calling replace over it.
* http.py: prepend the bytes literal to the empty string or else
  we hit bug 1342080 again in python 3.
* utils.py: Use sys.stdin.buffer in python 3.

Change-Id: Ieefb8c633658e507486438e5518c5d53e819027d
2016-07-25 20:13:08 +05:30
Jenkins 2047653e06 Merge "Add comment about workaround for py3" 2016-07-20 10:53:57 +00:00
Abhishek Kekane 155183a21e Log request-id before exceptions raised
As of now request-id is not logged if an excpetion
is raised.

Rearranged code so that request-id is logged even in case of
an exception.

Change-Id: Iee0398404ee752c0d880edf3054207c35862e71a
Closes-Bug: #1603863
2016-07-18 12:19:55 +05:30
haobing1 2d7b864b17 Fix string interpolation to delayed to be handled by the logging code
String interpolation should be delayed to be handled by the logging
code, rather than being done at the point of the logging call.
See the oslo i18n guideline.
* http://docs.openstack.org/developer/oslo.i18n/guidelines.html

Change-Id: If06663076e4081c6268ba88c157513723b734b31
Closes-Bug: #1596829
2016-07-18 05:34:46 +00:00
Jenkins 1763e33d3d Merge "Update outdated image shema" 2016-07-16 10:27:18 +00:00
Jenkins 3a65a59220 Merge "Log request-id for each api call" 2016-07-15 10:56:26 +00:00
Jenkins 7e17c30dad Merge "Update docs URL" 2016-07-14 05:42:08 +00:00
Louis Taylor 3047afb121 Add comment about workaround for py3
Change-Id: Ibe8720c14e8ec401bc0d595915cbb962f4021bcb
2016-07-13 17:04:19 +00:00
Jenkins 3dde2be1d8 Merge "image-download: tests to catch stray output" 2016-07-13 16:21:06 +00:00
KATO Tomoyuki b660d3247a Update docs URL
Change-Id: Id8b1b97a85534c4398b3c49648c6e2f2df3ee20e
Related:-Bug: #1602266
2016-07-13 09:00:24 +09:00
Sabari Kumar Murugesan d7db97c926 Fix warlock model creation
Commands like glance md-namespace-show <namespace> fail because
of a breaking change in warlock 1.3.0's model creation factory
method.

Warlock introduced a new kwarg 'resolver' in model_factory method
but changed its position with the 'base_class' kwarg. Since we
were calling the model_factory method with positional arg, this
broke the model creation.

Closes-Bug: #1596573

Change-Id: Ic7821f4fdb1b752e0c7ed2bc486299a06bf485c1
2016-07-06 18:18:42 -07:00
Jenkins b1b806fd0e Merge "Replace tempest_lib with tempest.lib" 2016-06-29 19:37:42 +00:00
Stuart McLaren 7ed22a91d3 image-download: tests to catch stray output
Add unit tests to ensure that any stray output (eg print
statements) during image-download cause a test failure.

Regression test for bug 1488914.

Change-Id: Ic19ba5693d059bf7c283702e7c333672a878a1a1
Partial-bug: 1488914
2016-06-29 16:08:30 +00:00
Jenkins 8a584d5938 Merge "Use correct order of arguments to assertEqual" 2016-06-29 16:04:35 +00:00
zhengyao1 c3de38ed53 Use correct order of arguments to assertEqual
The correct order of arguments to assertEqual that is expected by
testtools is (expected, observed).

This patch fixes the inverted usage of arguments in some places
that have cropped up since the last fix of this bug.

Change-Id: If8c0dcb58496bc2fcf4c635f384522a1f7d2b2af
Closes-Bug: #1259292
2016-06-29 03:46:30 +00:00
Mike Fedosin 29cfd07e17 Update outdated image shema
Image schema that is located in glance client
is seriously outdated, we need to updated it
and bring it in line with the server version.

Change-Id: I5a79a84a9c07b9ee821a71a5bd2d61cb4299ad72
2016-06-28 20:59:05 +03:00
wangxiyuan cbb46434e6 Replace tempest_lib with tempest.lib
As the tempest_lib is deprecated and the code has been moved into
tempest. We should use tempest.lib insteded of tempest_lib.

Change-Id: Id22f90a47056cd88f9524fc6015607c93f7d88b5
2016-06-27 17:26:02 +08:00
Abhishek Kekane 96151efd51 Log request-id for each api call
Added support to log 'X-Openstack-Request-Id' for each api call.
If glanceclient is used from command line then following log will
be logged on console if --debug flag is used.

DEBUG:glanceclient.common.http:GET call to glance-api for
http://172.26.88.20:9292/v2/schemas/image used request id
req-e0c7c97a-8fc0-4ce3-a669-d0b1eb5d7aae

If python-glanceclient is used in applications (e.g. Nova) then
following log message will be logged in service logs.

DEBUG glanceclient.common.http
[req-be074f1e-1c17-4786-b703-2a221751c8f4 demo demo] GET call to
glance-api for
http://172.26.88.20:9292/v1/images/detail?is_public=none&limit=20
used request id req-9b1dd929-df30-46b2-a8f2-dfd6ffbad3fc

DocImpact:
To use this feature user need to set 'default_log_levels' in third
party application. For example nova uses glance then in nova.conf
'default_log_levels' should be set as below:

default_log_levels = glanceclient=DEBUG

Implements: blueprint log-request-id
Change-Id: Ib04a07bac41ad2a5e997348f3b0bccc640169dc9
2016-06-27 11:31:07 +05:30