most of our client major function require stack_id. We should
provide more specific information (at lest in function description)
to clearify that it's allowed to feed in stack name to `stack_id`
too. For example, both `heat.stacks.get($Stack_UUID)` and
`heat.stacks.get($Stack_Name)` works.
Change-Id: I4428097140e0391a77679f5c69e00966f249efd7
Encoding the path separators results in urls refused by by apache
with 404 unless AllowEncodedSlashes is turned on, which is not
the default.
The existing encoding of path separators seems unnecessary.
Change-Id: I3b77aafc6104119503363e5db36b0379964daba5
1.As mentioned in [1], we should avoid using six.iteritems to achieve
iterators. We can use dict.items instead, as it will return iterators
in PY3 as well. And dict.items/keys will more readable.
2.In py2, the performance about list should be negligible, see the
link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Change-Id: I3913e8876b34e112140788d7a405da6eedfb5f29
Move the required module to heatclient/common.
- heatclient/openstack/common/apiclient/base.py
It also moves some required functions and exceptions from
heatclient/openstack/common/cliutils.py and
heatclient/openstack/common/exceptions.py.
Change-Id: I68704c7fab9417492d8390ad05a9797f78d46907
This change does the following:
- cleans up the usage of get_events so that marker and limit are only
specified in their dedicated arguments, not also in event_args
(also, specifying only in event_args still works)
- first attempts server-side nested_depth support
- falls back to the old recursive approach if the response data lacks a
link with the ref root_stack
Since there is a fallback for old heat APIs, the client change can
land before or after the heat change
I27e1ffb770e00a7f929c081b2a505e2007f5d584
Change-Id: I43d12ec61ec359222184f07c170de3c97481f1ba
Closes-Bug: #1588561
HTTPClient has methods get/post/put and others, which
use json_request and raw_request, but other code uses
requests method instead of them.
Change-Id: I74ee34430afdae17f83ccdc877cc882f94651bce
This patch migrates the namespace of oslo packages from oslo.foobar to
oslo_foobar. The oslo_incubator code need to be resynced, which will be
submitted in another patch.
Change-Id: Id77207750556b71f20797a0ee6f2cafd62ea30e1
Convert the encode/decode functions from oslo-incubator to use
oslo.utils encodeutils, as the incubator functions are now
deprecated.
Also syncs oslo-incubator to 62394a3 to purge usage of strutils
from the openstack/common modules.
Note includes oslo fix https://review.openstack.org/#/c/133290/
which we need or the python3 tests won't pass.
Change-Id: I630fe3f3ce14ae745a8417bfe6552acd31341c9c
Partial-Bug: #1380629
Module py3kcompat was removed from oslo-incubator, we can use
six directly.
* Sync commit of removing py3kcompat from oslo
* use six replace usage of py3kcompat
Change-Id: If0f9397588b2180fe198e804cbbb5b5c8420fe76
Closes-Bug: #1280033
Module apiclient.base has several updates in oslo, so we need to sync
latest code to have ability to reuse new functional.
Updates in oslo which related to usage of apiclient.base in heatclient:
- I491f9b54c7074546cf738c6150666bfcc3966a78
- I1db6c12a1f798de7f7fafd0c34fb0ef523610153
Related to bp common-client-library-2
Change-Id: I509d6efb0c8eef87ba2e4aa02ebb44ba149a9860
In the process of unification of the clients code we should
reuse common functionality from Oslo.
Related to blueprint common-client-library-2
Change-Id: I44a1344e3eb40220d8b795fd05e44623195116a2
When executing commands about event and resource with
non-english resource-name, error "'ascii' codec can't
decode byte...." will occur.
Root cause is that heatclient can not generate a correct
encoded url. This Patch will use quote and safe_encode
functions to implement a url-encode process.
Closes-Bug: #1249234
Change-Id: I4261fdaf6ccc60aebdb9df236f4eedce0f9baa14