python-openstackclient 8.0.0__py3-none-any.whl → 8.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. openstackclient/compute/client.py +5 -0
  2. openstackclient/compute/v2/console.py +7 -0
  3. openstackclient/compute/v2/console_connection.py +48 -0
  4. openstackclient/compute/v2/keypair.py +10 -3
  5. openstackclient/compute/v2/server.py +75 -10
  6. openstackclient/compute/v2/server_event.py +1 -1
  7. openstackclient/identity/common.py +79 -0
  8. openstackclient/identity/v3/application_credential.py +2 -2
  9. openstackclient/identity/v3/domain.py +62 -43
  10. openstackclient/identity/v3/group.py +113 -68
  11. openstackclient/identity/v3/project.py +17 -0
  12. openstackclient/identity/v3/user.py +38 -5
  13. openstackclient/image/client.py +5 -0
  14. openstackclient/image/v2/image.py +11 -11
  15. openstackclient/network/client.py +0 -6
  16. openstackclient/network/v2/floating_ip.py +58 -29
  17. openstackclient/network/v2/network_qos_rule.py +3 -11
  18. openstackclient/network/v2/router.py +1 -1
  19. openstackclient/network/v2/security_group.py +5 -4
  20. openstackclient/network/v2/security_group_rule.py +1 -1
  21. openstackclient/shell.py +1 -1
  22. openstackclient/tests/functional/base.py +5 -1
  23. openstackclient/tests/functional/compute/v2/test_keypair.py +41 -5
  24. openstackclient/tests/unit/compute/v2/fakes.py +81 -305
  25. openstackclient/tests/unit/compute/v2/test_console.py +18 -1
  26. openstackclient/tests/unit/compute/v2/test_console_connection.py +72 -0
  27. openstackclient/tests/unit/compute/v2/test_flavor.py +1 -1
  28. openstackclient/tests/unit/compute/v2/test_keypair.py +12 -5
  29. openstackclient/tests/unit/compute/v2/test_server.py +169 -46
  30. openstackclient/tests/unit/compute/v2/test_server_backup.py +32 -71
  31. openstackclient/tests/unit/compute/v2/test_server_event.py +2 -2
  32. openstackclient/tests/unit/compute/v2/test_server_image.py +33 -72
  33. openstackclient/tests/unit/compute/v2/test_server_migration.py +4 -4
  34. openstackclient/tests/unit/identity/v3/test_application_credential.py +47 -25
  35. openstackclient/tests/unit/identity/v3/test_domain.py +115 -105
  36. openstackclient/tests/unit/identity/v3/test_group.py +353 -202
  37. openstackclient/tests/unit/identity/v3/test_project.py +16 -0
  38. openstackclient/tests/unit/identity/v3/test_user.py +86 -6
  39. openstackclient/tests/unit/image/v1/test_image.py +8 -9
  40. openstackclient/tests/unit/image/v2/test_image.py +49 -49
  41. openstackclient/tests/unit/network/v2/fakes.py +405 -485
  42. openstackclient/tests/unit/network/v2/test_floating_ip_network.py +13 -19
  43. openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py +2 -2
  44. openstackclient/tests/unit/network/v2/test_ndp_proxy.py +1 -3
  45. openstackclient/tests/unit/network/v2/test_network.py +4 -4
  46. openstackclient/tests/unit/network/v2/test_network_agent.py +15 -29
  47. openstackclient/tests/unit/network/v2/test_network_qos_policy.py +16 -19
  48. openstackclient/tests/unit/network/v2/test_network_qos_rule.py +79 -152
  49. openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py +4 -6
  50. openstackclient/tests/unit/network/v2/test_network_rbac.py +2 -2
  51. openstackclient/tests/unit/network/v2/test_port.py +17 -17
  52. openstackclient/tests/unit/network/v2/test_router.py +73 -57
  53. openstackclient/tests/unit/network/v2/test_security_group_network.py +25 -27
  54. openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py +1 -3
  55. openstackclient/tests/unit/network/v2/test_security_group_rule_network.py +33 -39
  56. openstackclient/tests/unit/volume/v2/fakes.py +1 -2
  57. openstackclient/tests/unit/volume/v2/test_service.py +57 -91
  58. openstackclient/tests/unit/volume/v2/test_volume.py +108 -105
  59. openstackclient/tests/unit/volume/v2/test_volume_backup.py +141 -148
  60. openstackclient/tests/unit/volume/v2/test_volume_snapshot.py +293 -283
  61. openstackclient/tests/unit/volume/v3/test_block_storage_log_level.py +61 -71
  62. openstackclient/tests/unit/volume/v3/test_service.py +221 -141
  63. openstackclient/tests/unit/volume/v3/test_volume.py +130 -119
  64. openstackclient/tests/unit/volume/v3/test_volume_attachment.py +1 -1
  65. openstackclient/tests/unit/volume/v3/test_volume_backup.py +198 -203
  66. openstackclient/tests/unit/volume/v3/test_volume_snapshot.py +682 -47
  67. openstackclient/volume/v2/service.py +41 -38
  68. openstackclient/volume/v2/volume.py +63 -37
  69. openstackclient/volume/v2/volume_backup.py +9 -3
  70. openstackclient/volume/v2/volume_snapshot.py +121 -84
  71. openstackclient/volume/v3/block_storage_log_level.py +22 -28
  72. openstackclient/volume/v3/service.py +105 -14
  73. openstackclient/volume/v3/volume.py +200 -39
  74. openstackclient/volume/v3/volume_backup.py +24 -19
  75. openstackclient/volume/v3/volume_snapshot.py +485 -10
  76. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/AUTHORS +8 -0
  77. python_openstackclient-8.1.0.dist-info/METADATA +264 -0
  78. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/RECORD +83 -81
  79. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/entry_points.txt +7 -6
  80. python_openstackclient-8.1.0.dist-info/pbr.json +1 -0
  81. python_openstackclient-8.0.0.dist-info/METADATA +0 -166
  82. python_openstackclient-8.0.0.dist-info/pbr.json +0 -1
  83. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/LICENSE +0 -0
  84. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/WHEEL +0 -0
  85. {python_openstackclient-8.0.0.dist-info → python_openstackclient-8.1.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,264 @@
1
+ Metadata-Version: 2.1
2
+ Name: python-openstackclient
3
+ Version: 8.1.0
4
+ Summary: OpenStack Command-line Client
5
+ Home-page: https://docs.openstack.org/python-openstackclient/latest/
6
+ Author: OpenStack
7
+ Author-email: openstack-discuss@lists.openstack.org
8
+ Classifier: Environment :: OpenStack
9
+ Classifier: Intended Audience :: Information Technology
10
+ Classifier: Intended Audience :: System Administrators
11
+ Classifier: License :: OSI Approved :: Apache Software License
12
+ Classifier: Operating System :: POSIX :: Linux
13
+ Classifier: Programming Language :: Python
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.10
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
19
+ Requires-Python: >=3.10
20
+ Description-Content-Type: text/x-rst
21
+ License-File: LICENSE
22
+ License-File: AUTHORS
23
+ Requires-Dist: pbr !=2.1.0,>=2.0.0
24
+ Requires-Dist: cryptography >=2.7
25
+ Requires-Dist: cliff >=3.5.0
26
+ Requires-Dist: iso8601 >=0.1.11
27
+ Requires-Dist: openstacksdk >=4.5.0
28
+ Requires-Dist: osc-lib >=2.3.0
29
+ Requires-Dist: oslo.i18n >=3.15.3
30
+ Requires-Dist: python-keystoneclient >=3.22.0
31
+ Requires-Dist: python-cinderclient >=3.3.0
32
+ Requires-Dist: requests >=2.27.0
33
+ Requires-Dist: stevedore >=2.0.1
34
+
35
+ ===============
36
+ OpenStackClient
37
+ ===============
38
+
39
+ .. image:: https://img.shields.io/pypi/v/python-openstackclient.svg
40
+ :target: https://pypi.org/project/python-openstackclient/
41
+ :alt: Latest Version
42
+
43
+ OpenStackClient (OSC) is a command-line client for OpenStack that brings
44
+ the command set for Compute, Identity, Image, Network, Object Store and Block
45
+ Storage APIs together in a single shell with a uniform command structure.
46
+ Support for additional service APIs is provided via plugins.
47
+
48
+ The primary goal is to provide a unified shell command structure and a common
49
+ language to describe operations in OpenStack.
50
+
51
+ Getting Started
52
+ ===============
53
+
54
+ OpenStack Client can be installed from PyPI using pip:
55
+
56
+ .. code-block:: shell
57
+
58
+ python3 -m pip install python-openstackclient
59
+
60
+ You can use ``--help`` or the ``help`` command to get a list of global options
61
+ and supported commands:
62
+
63
+ .. code-block:: shell
64
+
65
+ openstack --help
66
+ openstack help
67
+
68
+ You can also get help for a specific command:
69
+
70
+ .. code-block:: shell
71
+
72
+ openstack server create --help
73
+ openstack help server create
74
+
75
+ You can add support for additional services by installing their clients. For
76
+ example, to add support for the DNS service (designate):
77
+
78
+ .. code-block:: shell
79
+
80
+ python3 -m pip install python3-designateclient
81
+
82
+ A ``Dockerfile`` is provided for your convenience in the repository. You can
83
+ use this to build your own container images:
84
+
85
+ .. code-block:: shell
86
+
87
+ git clone https://opendev.org/openstack/python-openstackclient
88
+ cd python-openstackclient
89
+ podman build . -t example.com/myuser/openstackclient
90
+
91
+ For more information the available options and commands, refer to the `Users
92
+ Guide`__.
93
+
94
+ .. __: https://docs.openstack.org/python-openstackclient/latest/cli/index.html
95
+
96
+ Configuration
97
+ =============
98
+
99
+ OpenStack Client must be configured with authentication information in order to
100
+ communicate with a given OpenStack cloud. This configuration can be achieved
101
+ via a ``clouds.yaml`` file, a set of environment variables (often shared via an
102
+ ``openrc`` file), a set of command-line options, or a combination of all three.
103
+ Your cloud provider or deployment tooling will typically provide either a
104
+ ``clouds.yaml`` file or ``openrc`` file for you. If using a ``clouds.yaml``
105
+ file, OpenStack Client expects to find it in one of the following locations:
106
+
107
+ * If set, the path indicated by the ``OS_CLIENT_CONFIG_FILE`` environment
108
+ variable
109
+ * ``.`` (the current directory)
110
+ * ``$HOME/.config/openstack``
111
+ * ``/etc/openstack``
112
+
113
+ The options you should set will depend on the configuration of your cloud and
114
+ the authentication mechanism(s) supported. For example, consider a cloud that
115
+ supports username/password authentication. Configuration for this cloud using a
116
+ ``clouds.yaml`` file would look like so:
117
+
118
+ .. code-block:: yaml
119
+
120
+ clouds:
121
+ my-cloud:
122
+ auth:
123
+ auth_url: '<url-to-openstack-identity>'
124
+ project_name: '<project-name>'
125
+ project_domain_name: '<project-domain-name>'
126
+ username: '<username>'
127
+ user_domain_name: '<user-domain-name>'
128
+ password: '<password>' # (optional)
129
+ region_name: '<region>'
130
+
131
+ The corresponding environment variables would look very similar:
132
+
133
+ .. code-block:: shell
134
+
135
+ export OS_AUTH_URL=<url-to-openstack-identity>
136
+ export OS_REGION_NAME=<region>
137
+ export OS_PROJECT_NAME=<project-name>
138
+ export OS_PROJECT_DOMAIN_NAME=<project-domain-name>
139
+ export OS_USERNAME=<username>
140
+ export OS_USER_DOMAIN_NAME=<user-domain-name>
141
+ export OS_PASSWORD=<password> # (optional)
142
+
143
+ Likewise, the corresponding command-line options would look very similar:
144
+
145
+ ::
146
+
147
+ openstack
148
+ --os-auth-url <url-to-openstack-identity>
149
+ --os-region <region>
150
+ --os-project-name <project-name>
151
+ --os-project-domain-name <project-domain-name>
152
+ --os-username <username>
153
+ --os-user-domain-name <user-domain-name>
154
+ [--os-password <password>]
155
+
156
+ .. note::
157
+
158
+ If a password is not provided above (in plaintext), you will be
159
+ interactively prompted to provide one securely.
160
+
161
+ Some clouds use federated authentication. If this is the case, your
162
+ configuration will be slightly more involved. For example, to configure
163
+ username/password authentication for a federated user using a ``clouds.yaml``
164
+ file:
165
+
166
+ .. code-block:: yaml
167
+
168
+ clouds:
169
+ my-cloud:
170
+ auth:
171
+ auth_url: '<url-to-openstack-identity>'
172
+ project_name: '<project-name>'
173
+ project_domain_name: '<project-domain-name>'
174
+ username: '<username-in-idp>'
175
+ user_domain_name: '<user-domain-name>'
176
+ password: '<password-in-idp>'
177
+ identity_provider: '<the-desired-idp-in-keystone>'
178
+ client_id: '<the-client-id-configured-in-the-idp>'
179
+ client_secret: '<the-client-secret-configured-in-the-idp>'
180
+ openid_scope: '<the-scopes-of-desired-attributes-to-claim-from-idp>'
181
+ protocol: '<the-protocol-used-in-the-apache2-oidc-proxy>'
182
+ access_token_type: '<the-access-token-type-used-by-your-idp>'
183
+ discovery_endpoint: '<the-well-known-endpoint-of-the-idp>'
184
+ auth_type: 'v3oidcpassword'
185
+ region_name: '<region>'
186
+
187
+ The corresponding environment variables would look very similar:
188
+
189
+ .. code-block:: shell
190
+
191
+ export OS_PROJECT_NAME=<project-name>
192
+ export OS_PROJECT_DOMAIN_NAME=<project-domain-name>
193
+ export OS_AUTH_URL=<url-to-openstack-identity>
194
+ export OS_IDENTITY_API_VERSION=3
195
+ export OS_AUTH_TYPE=v3oidcpassword
196
+ export OS_USERNAME=<username-in-idp>
197
+ export OS_PASSWORD=<password-in-idp>
198
+ export OS_IDENTITY_PROVIDER=<the-desired-idp-in-keystone>
199
+ export OS_CLIENT_ID=<the-client-id-configured-in-the-idp>
200
+ export OS_CLIENT_SECRET=<the-client-secred-configured-in-the-idp>
201
+ export OS_OPENID_SCOPE=<the-scopes-of-desired-attributes-to-claim-from-idp>
202
+ export OS_PROTOCOL=<the-protocol-used-in-the-apache2-oidc-proxy>
203
+ export OS_ACCESS_TOKEN_TYPE=<the-access-token-type-used-by-your-idp>
204
+ export OS_DISCOVERY_ENDPOINT=<the-well-known-endpoint-of-the-idp>
205
+
206
+ Likewise, the corresponding command-line options would look very similar:
207
+
208
+ .. code-block:: shell
209
+
210
+ --os-project-name <project-name>
211
+ --os-project-domain-name <project-domain-name>
212
+ --os-auth-url <url-to-openstack-identity>
213
+ --os-identity-api-version 3
214
+ --os-auth-plugin openid
215
+ --os-auth-type v3oidcpassword
216
+ --os-username <username-in-idp>
217
+ --os-password <password-in-idp>
218
+ --os-identity-provider <the-desired-idp-in-keystone>
219
+ --os-client-id <the-client-id-configured-in-the-idp>
220
+ --os-client-secret <the-client-secred-configured-in-the-idp>
221
+ --os-openid-scope <the-scopes-of-desired-attributes-to-claim-from-idp>
222
+ --os-protocol <the-protocol-used-in-the-apache2-oidc-proxy>
223
+ --os-access-token-type <the-access-token-type-used-by-your-idp>
224
+ --os-discovery-endpoint <the-well-known-endpoint-of-the-idp>
225
+
226
+ For more information on configuring authentication, including an overview of
227
+ the many authentication mechanisms supported, refer to the `Authentication
228
+ guide`__. For more information on configuration in general, refer to the
229
+ `Configuration guide`__.
230
+
231
+ .. __: https://docs.openstack.org/python-openstackclient/latest/cli/authentication.html.
232
+ .. __: https://docs.openstack.org/python-openstackclient/latest/configuration/index.html
233
+
234
+ Contributing
235
+ ============
236
+
237
+ You can clone the repository from opendev.org::
238
+
239
+ git clone https://opendev.org/openstack/python-openstackclient
240
+ cd python-openstackclient
241
+
242
+ OpenStack Client uses the same contributor process as other OpenStack projects.
243
+ For information on this process, including help on setting up you Gerrit
244
+ account and an overview of the CI process, refer to the `OpenStack Contributors
245
+ Guide`__.
246
+
247
+ For more information on contributing to OpenStack Client itself, including
248
+ guidance on how to design new commands and how to report bugs, refer to the
249
+ `Contributors Guide`__.
250
+
251
+ .. __: https://docs.openstack.org/python-openstackclient/latest/contributor/index.html
252
+ .. __: https://docs.opendev.org/opendev/infra-manual/latest/developers.html
253
+
254
+ Links
255
+ -----
256
+
257
+ * `Issue Tracker <https://bugs.launchpad.net/python-openstackclient>`_
258
+ * `Code Review <https://review.opendev.org/#/q/status:open+project:openstack/openstacksdk,n,z>`_
259
+ * `Documentation <https://docs.openstack.org/python-openstackclient/latest/>`_
260
+ * `PyPi <https://pypi.org/project/python-openstackclient>`_
261
+ * `Mailing list <https://lists.openstack.org/mailman3/lists/openstack-discuss.lists.openstack.org/>`_
262
+ * `Release Notes <https://docs.openstack.org/releasenotes/python-openstackclient>`_
263
+ * `IRC (#openstack-sdks on OFTC (irc.oftc.net)) <irc://irc.oftc.net/openstack-sdks>`_
264
+