<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openstack/python-openstackclient.git/openstackclient/tests/unit/fakes.py, branch 6.1.0</title>
<subtitle>opendev.org: openstack/python-openstackclient
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/'/>
<entry>
<title>config: Also mask non-prefix config</title>
<updated>2022-08-01T10:54:44+00:00</updated>
<author>
<name>ryanKor</name>
<email>equus3144@gmail.com</email>
</author>
<published>2021-10-09T03:05:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=62c52f5e61c009ad45fa3e8aeb049821d0b228eb'/>
<id>62c52f5e61c009ad45fa3e8aeb049821d0b228eb</id>
<content type='text'>
The 'config show' command will show information about your current
configuration. When using a 'cloud.yaml' file and the 'OS_CLOUD'
environment variable, the output of this will look like so:

  $ openstack config show
  +---------------------------------------------+----------------------------------+
  | Field                                       | Value                            |
  +---------------------------------------------+----------------------------------+
  | additional_user_agent                       | [('osc-lib', '2.6.0')]           |
  | api_timeout                                 | None                             |
  | auth.auth_url                               | https://example.com:13000        |
  | auth.password                               | &lt;redacted&gt;                       |
  | auth.project_domain_id                      | default                          |
  | auth.project_id                             | c73b7097d07c46f78eb4b4dcfbac5ca8 |
  | auth.project_name                           | test-project                     |
  | auth.user_domain_name                       | example.com                      |
  | auth.username                               | john-doe                         |
  ...

All of the 'auth.'-prefixed values are extracted from the corresponding
entry in the 'clouds.yaml' file. You'll note that the 'auth.password'
value is not shown. Instead, it is masked and replaced with
'&lt;redacted&gt;'.

However, a 'clouds.yaml' file is not the only way to configure these
tools. You can also use old school environment variables. By using an
openrc file from Horizon (or the clouds2env tool [1]), we will set
various 'OS_'-prefixed environment variables. When you use the 'config
show' command with these environment variables set, we will see all of
these values appear in the output *without* an 'auth.' prefix. Scanning
down we will see the password value is not redacted.

  $ openstack config show
  +---------------------------------------------+----------------------------------+
  | Field                                       | Value                            |
  +---------------------------------------------+----------------------------------+
  | additional_user_agent                       | [('osc-lib', '2.6.0')]           |
  | api_timeout                                 | None                             |
  ...
  | password                                    | secret-password                  |
  ...

This will also happen if using tokens. This is obviously incorrect.
These should be masked also. Make it so. This involves enhancing our
fake config generation code to generate config that looks like it came
from environment variables.

Change-Id: I560b928e5e6bcdcd89c409e0678dfc0d0b056c0e
Story: 2008816
Task: 42260
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The 'config show' command will show information about your current
configuration. When using a 'cloud.yaml' file and the 'OS_CLOUD'
environment variable, the output of this will look like so:

  $ openstack config show
  +---------------------------------------------+----------------------------------+
  | Field                                       | Value                            |
  +---------------------------------------------+----------------------------------+
  | additional_user_agent                       | [('osc-lib', '2.6.0')]           |
  | api_timeout                                 | None                             |
  | auth.auth_url                               | https://example.com:13000        |
  | auth.password                               | &lt;redacted&gt;                       |
  | auth.project_domain_id                      | default                          |
  | auth.project_id                             | c73b7097d07c46f78eb4b4dcfbac5ca8 |
  | auth.project_name                           | test-project                     |
  | auth.user_domain_name                       | example.com                      |
  | auth.username                               | john-doe                         |
  ...

All of the 'auth.'-prefixed values are extracted from the corresponding
entry in the 'clouds.yaml' file. You'll note that the 'auth.password'
value is not shown. Instead, it is masked and replaced with
'&lt;redacted&gt;'.

However, a 'clouds.yaml' file is not the only way to configure these
tools. You can also use old school environment variables. By using an
openrc file from Horizon (or the clouds2env tool [1]), we will set
various 'OS_'-prefixed environment variables. When you use the 'config
show' command with these environment variables set, we will see all of
these values appear in the output *without* an 'auth.' prefix. Scanning
down we will see the password value is not redacted.

  $ openstack config show
  +---------------------------------------------+----------------------------------+
  | Field                                       | Value                            |
  +---------------------------------------------+----------------------------------+
  | additional_user_agent                       | [('osc-lib', '2.6.0')]           |
  | api_timeout                                 | None                             |
  ...
  | password                                    | secret-password                  |
  ...

This will also happen if using tokens. This is obviously incorrect.
These should be masked also. Make it so. This involves enhancing our
fake config generation code to generate config that looks like it came
from environment variables.

Change-Id: I560b928e5e6bcdcd89c409e0678dfc0d0b056c0e
Story: 2008816
Task: 42260
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove usage of six</title>
<updated>2020-10-07T02:15:25+00:00</updated>
<author>
<name>songwenping</name>
<email>songwenping@inspur.com</email>
</author>
<published>2020-10-06T06:26:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=c2df9215e19752714e83fcad82c8ae3708f85d7a'/>
<id>c2df9215e19752714e83fcad82c8ae3708f85d7a</id>
<content type='text'>
With python3.x, classes can use 'metaclass=' instead of
'six.add_metaclass', 'six.iteritems' and 'six.iterkeys' can
be replaced by 'items' and 'keys', 'six.moves.urllib.parse'
can be replaced by 'urllib.parse', 'six.StringIO' and
'six.moves.cStringIO' can be replaced by 'io.StringIO',
'six.text_type' and 'six.string_type' are just 'str'.

Change-Id: I84848c0bf8ab3c36dd821141191e2725e4e3b58b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With python3.x, classes can use 'metaclass=' instead of
'six.add_metaclass', 'six.iteritems' and 'six.iterkeys' can
be replaced by 'items' and 'keys', 'six.moves.urllib.parse'
can be replaced by 'urllib.parse', 'six.StringIO' and
'six.moves.cStringIO' can be replaced by 'io.StringIO',
'six.text_type' and 'six.string_type' are just 'str'.

Change-Id: I84848c0bf8ab3c36dd821141191e2725e4e3b58b
</pre>
</div>
</content>
</entry>
<entry>
<title>Raise flake8-import-order version to latest</title>
<updated>2020-01-10T20:21:47+00:00</updated>
<author>
<name>Sean McGinnis</name>
<email>sean.mcginnis@gmail.com</email>
</author>
<published>2020-01-10T20:21:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=69db9fe73c81bc6341c37948365163902b6437ee'/>
<id>69db9fe73c81bc6341c37948365163902b6437ee</id>
<content type='text'>
We had this library capped at a release that is a few years old. Now
that we have dropped py2 testing, we can pick up the latest version.

This uncovered a few things to clean up. Mostly the fact that mock is
now a part of the StdLib unittest since Python 3.3.

Change-Id: I27484dd4c25378413ff16e97a35a1a46062357bc
Signed-off-by: Sean McGinnis &lt;sean.mcginnis@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We had this library capped at a release that is a few years old. Now
that we have dropped py2 testing, we can pick up the latest version.

This uncovered a few things to clean up. Mostly the fact that mock is
now a part of the StdLib unittest since Python 3.3.

Change-Id: I27484dd4c25378413ff16e97a35a1a46062357bc
Signed-off-by: Sean McGinnis &lt;sean.mcginnis@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace six.iteritems() with .items()</title>
<updated>2020-01-09T09:41:29+00:00</updated>
<author>
<name>lihaijing</name>
<email>lihaijing@fiberhome.com</email>
</author>
<published>2017-07-07T03:48:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=d15bbada73f81136c966007d9c564dd6cfb2fd9c'/>
<id>d15bbada73f81136c966007d9c564dd6cfb2fd9c</id>
<content type='text'>
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

Co-Authored-By: Akihiro Motoki &lt;amotoki@gmail.com&gt;
Change-Id: I4b9edb326444264c0f6c4ad281acaac356a07e85
Implements: blueprint replace-iteritems-with-items
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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

Co-Authored-By: Akihiro Motoki &lt;amotoki@gmail.com&gt;
Change-Id: I4b9edb326444264c0f6c4ad281acaac356a07e85
Implements: blueprint replace-iteritems-with-items
</pre>
</div>
</content>
</entry>
<entry>
<title>Adding api_version to FakeApp</title>
<updated>2018-06-24T03:47:23+00:00</updated>
<author>
<name>Telles Nobrega</name>
<email>tenobreg@redhat.com</email>
</author>
<published>2018-06-20T12:07:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=412ee7f1d89f899dca8a1a3558ab4f6c57b3c43f'/>
<id>412ee7f1d89f899dca8a1a3558ab4f6c57b3c43f</id>
<content type='text'>
In order to use app.api_version['&lt;some_service&gt;'] we need to have the
api_version on FakeApp otherwise the test will fail.

Patch that will benefit from this:
https://review.openstack.org/#/c/572536/

Change-Id: Ibb3c548daf2a62b6c4aefb5e257372dd5c56521e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In order to use app.api_version['&lt;some_service&gt;'] we need to have the
api_version on FakeApp otherwise the test will fail.

Patch that will benefit from this:
https://review.openstack.org/#/c/572536/

Change-Id: Ibb3c548daf2a62b6c4aefb5e257372dd5c56521e
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix limits show command without Nova and Cinder</title>
<updated>2018-04-03T07:47:00+00:00</updated>
<author>
<name>Jude Cross</name>
<email>jucross@blizzard.com</email>
</author>
<published>2018-04-02T22:07:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=24b06ef273e193819624fd2e021282d2735977b0'/>
<id>24b06ef273e193819624fd2e021282d2735977b0</id>
<content type='text'>
This patch implements an endpoint lookup when showing limits. This
addresses the issue when showing limits without both Nova and Cinder
and will display limits if one is missing.

Change-Id: I2214b281e0206f8fe117aae52de2bf4c4e2c6525
Closes-bug: #1707960
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch implements an endpoint lookup when showing limits. This
addresses the issue when showing limits without both Nova and Cinder
and will display limits if one is missing.

Change-Id: I2214b281e0206f8fe117aae52de2bf4c4e2c6525
Closes-bug: #1707960
</pre>
</div>
</content>
</entry>
<entry>
<title>Use flake8-import-order plugin</title>
<updated>2017-08-17T06:55:00+00:00</updated>
<author>
<name>Akihiro Motoki</name>
<email>amotoki@gmail.com</email>
</author>
<published>2017-07-15T16:58:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=f3bbf52b3c7e731796aaf38294d08109859babe5'/>
<id>f3bbf52b3c7e731796aaf38294d08109859babe5</id>
<content type='text'>
In reviews we usually check import grouping but it is boring.
By using flake8-import-order plugin, we can avoid this.
It enforces loose checking so it sounds good to use it.
This flake8 plugin is already used in tempest.

Note that flake8-import-order version is pinned to avoid unexpected
breakage of pep8 job.

Setup for unit tests of hacking rules is tweaked to disable
flake8-import-order checks. This extension assumes an actual file exists
and causes hacking rule unit tests.

Change-Id: I12b596820727aeeb379bee16c2bc993dee9eb637
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In reviews we usually check import grouping but it is boring.
By using flake8-import-order plugin, we can avoid this.
It enforces loose checking so it sounds good to use it.
This flake8 plugin is already used in tempest.

Note that flake8-import-order version is pinned to avoid unexpected
breakage of pep8 job.

Setup for unit tests of hacking rules is tweaked to disable
flake8-import-order checks. This extension assumes an actual file exists
and causes hacking rule unit tests.

Change-Id: I12b596820727aeeb379bee16c2bc993dee9eb637
</pre>
</div>
</content>
</entry>
<entry>
<title>Low-level Compute v2 API: security group</title>
<updated>2017-04-11T07:08:04+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2014-09-18T05:55:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=4289ddd47a9c92eb3033eccf39966915caae05db'/>
<id>4289ddd47a9c92eb3033eccf39966915caae05db</id>
<content type='text'>
api.compute.APIv2 starts with security group functions.

novaclient 8.0 is now released without support for the previously
deprecated nova-net functions, so include a new low-level REST
implementation of the removed APIs.

Change-Id: Id007535f0598226a8202716232313e37fe6247f9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
api.compute.APIv2 starts with security group functions.

novaclient 8.0 is now released without support for the previously
deprecated nova-net functions, so include a new low-level REST
implementation of the removed APIs.

Change-Id: Id007535f0598226a8202716232313e37fe6247f9
</pre>
</div>
</content>
</entry>
<entry>
<title>Show openstacksdk version info in "module list"</title>
<updated>2017-02-22T08:40:22+00:00</updated>
<author>
<name>Rui Chen</name>
<email>chenrui.momo@gmail.com</email>
</author>
<published>2017-02-22T08:18:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=10f0300f704ca8dd5928d9a8b41ac6c16732f203'/>
<id>10f0300f704ca8dd5928d9a8b41ac6c16732f203</id>
<content type='text'>
openstacksdk bug/1588823 exist, no good way to add __version__ for
openstack module properly, fix the issue in osc side, make openstacksdk
module information be available.

Change-Id: I27ff61792443d1aa07f31598bed3aa32f924ff40
Partial-Bug: #1662058
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
openstacksdk bug/1588823 exist, no good way to add __version__ for
openstack module properly, fix the issue in osc side, make openstacksdk
module information be available.

Change-Id: I27ff61792443d1aa07f31598bed3aa32f924ff40
Partial-Bug: #1662058
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge "Add support for Network QoS rule commands"</title>
<updated>2017-01-11T23:37:00+00:00</updated>
<author>
<name>Jenkins</name>
<email>jenkins@review.openstack.org</email>
</author>
<published>2017-01-11T23:37:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=2fb5ac0cc44352aeb102b54b7e15de657202faf9'/>
<id>2fb5ac0cc44352aeb102b54b7e15de657202faf9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
