oks-cli 1.14__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.
@@ -0,0 +1,270 @@
1
+ Metadata-Version: 2.4
2
+ Name: oks-cli
3
+ Version: 1.14
4
+ Author: Outscale SAS
5
+ Author-email: opensource@outscale.com
6
+ License: BSD
7
+ Classifier: License :: OSI Approved :: BSD License
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.6
10
+ Classifier: Programming Language :: Python :: 3.7
11
+ Classifier: Programming Language :: Python :: 3.8
12
+ Classifier: Programming Language :: Python :: 3.9
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Operating System :: OS Independent
16
+ Description-Content-Type: text/markdown
17
+ License-File: LICENSE
18
+ Requires-Dist: certifi>=2024.8.30
19
+ Requires-Dist: charset-normalizer>=3.3.2
20
+ Requires-Dist: click>=8.1.7
21
+ Requires-Dist: colorama>=0.4.6
22
+ Requires-Dist: idna>=3.10
23
+ Requires-Dist: pyyaml>=6.0.2
24
+ Requires-Dist: requests>=2.32.3
25
+ Requires-Dist: urllib3>=2.2.3
26
+ Requires-Dist: human-readable
27
+ Requires-Dist: prettytable
28
+ Requires-Dist: python-dateutil
29
+ Requires-Dist: altgraph>=0.17.4
30
+ Requires-Dist: pynacl>=1.5.0
31
+ Requires-Dist: pyOpenSSL>=25.0.0
32
+ Provides-Extra: dev
33
+ Requires-Dist: pytest>=8.4.1; extra == "dev"
34
+ Dynamic: author
35
+ Dynamic: author-email
36
+ Dynamic: classifier
37
+ Dynamic: description
38
+ Dynamic: description-content-type
39
+ Dynamic: license
40
+ Dynamic: license-file
41
+ Dynamic: provides-extra
42
+ Dynamic: requires-dist
43
+
44
+ # OKS-CLI
45
+
46
+ [![Project Incubating](https://docs.outscale.com/fr/userguide/_images/Project-Incubating-blue.svg)](https://docs.outscale.com/en/userguide/Open-Source-Projects.html)
47
+ [![](https://dcbadge.limes.pink/api/server/HUVtY5gT6s?style=flat&theme=default-inverted)](https://discord.gg/HUVtY5gT6s)
48
+
49
+ <p align="center">
50
+ <img alt="Kubernetes" src="https://upload.wikimedia.org/wikipedia/commons/3/39/Kubernetes_logo_without_workmark.svg" width="120px">
51
+ </p>
52
+
53
+ ---
54
+
55
+ ## 🌐 Links
56
+
57
+ * 📘 [OKS-CLI Documentation](https://docs.outscale.com/fr/userguide/Installer-et-configurer-OKS-CLI.html)
58
+ * 📘 [OKS API Reference](https://docs.outscale.com/oks.html)
59
+ * 🐛 [GitHub Issues](https://github.com/outscale/oks-cli/issues)
60
+
61
+ ---
62
+
63
+ ## 📄 Table of Contents
64
+
65
+ * [Overview](#-overview)
66
+ * [Requirements](#-requirements)
67
+ * [Installation](#-installation)
68
+
69
+ * [Standard Installation](#standard-installation)
70
+ * [User Installation](#user-installation)
71
+ * [Usage](#-usage)
72
+
73
+ * [Commands](#commands)
74
+ * [Examples](#examples)
75
+ * [Development](#-development)
76
+
77
+ * [Editable Mode](#editable-mode)
78
+ * [Project Structure](#project-structure)
79
+ * [Dependencies](#dependencies)
80
+ * [Contributing](#-contributing)
81
+ * [License](#-license)
82
+ * [Support](#-support)
83
+
84
+ ---
85
+
86
+ ## 🧭 Overview
87
+
88
+ **OKS-CLI** is a command-line interface that allows you to deploy and manage Kubernetes clusters on top of OUTSCALE infrastructure.
89
+
90
+ ---
91
+
92
+ ## ✅ Requirements
93
+
94
+ * Python 3.11 or later
95
+ * `pip` (Python package manager)
96
+ * `kubectl` (required for commands that interact with the Kubernetes API)
97
+
98
+ ---
99
+
100
+ ## 📦 Installation
101
+
102
+ ### Standard Installation
103
+
104
+ ```bash
105
+ # Clone the repository
106
+ git clone https://github.com/outscale/oks-cli.git
107
+ cd oks-cli
108
+
109
+ # Create and activate a virtual environment
110
+ python -m venv venv
111
+ source venv/bin/activate
112
+
113
+ # Install dependencies
114
+ pip install -r requirements.txt
115
+
116
+ # Install the CLI in editable mode
117
+ pip install -e .
118
+ ```
119
+
120
+ ### User Installation
121
+
122
+ Install globally without a virtual environment (Python 3.11):
123
+
124
+ ```bash
125
+ pip3.11 install -e --user .
126
+ ```
127
+
128
+ > **Note:** Ensure `~/Library/Python/3.11/bin` (macOS) or the equivalent path is in your `PATH`.
129
+
130
+ ---
131
+
132
+ ## 🚀 Usage
133
+
134
+ Display all available commands:
135
+
136
+ ```bash
137
+ oks-cli fullhelp
138
+ ```
139
+
140
+ ### Commands
141
+
142
+ | Command | Description |
143
+ |--------------------------------------|---------------------------------------------------------------|
144
+ | profile list | List existing profiles |
145
+ | profile add | Add AK/SK or username/password new profile |
146
+ | profile delete | Delete a profile by name |
147
+ | profile update | Update an existing profile |
148
+ | project list | List all projects |
149
+ | project create | Create a new project |
150
+ | project get | Get default project or the project by name |
151
+ | project update | Update a project by name |
152
+ | project delete | Delete a project by name |
153
+ | project login | Set a default project by name |
154
+ | project logout | Unset default project |
155
+ | project quotas | Get project quotas |
156
+ | project snapshots | Get project snapshots |
157
+ | project publicips | Get project public ips |
158
+ | cluster list | List all clusters |
159
+ | cluster create | Create a new cluster |
160
+ | cluster get | Get a cluster by name |
161
+ | cluster update | Update a cluster by name |
162
+ | cluster upgrade | Upgrade a cluster by name |
163
+ | cluster delete | Delete a cluster by name |
164
+ | cluster login | Set a default cluster |
165
+ | cluster logout | Unset default cluster |
166
+ | cluster kubeconfig | Fetch the kubeconfig for a cluster |
167
+ | cluster kubectl | Fetch kubeconfig and run kubectl against it |
168
+ | cluster nodepool list | List nodepools in the specified cluster |
169
+ | cluster nodepool create | Create a new nodepool in the cluster |
170
+ | cluster nodepool delete | Delete a nodepool by name from the cluster |
171
+ | cache clear | Clear cache |
172
+ | cache kubeconfigs | List cached kubeconfigs |
173
+ | quotas | Get quotas |
174
+ | fullhelp | Display detailed help information for all commands |
175
+ | version | Show the current CLI version |
176
+ | install-completion | Install shell completion scripts |
177
+
178
+ ---
179
+
180
+ ### Examples
181
+
182
+ ```bash
183
+ # List all projects
184
+ oks-cli project list
185
+
186
+ # Dry run project creation
187
+ oks-cli project create --project-name my-project --description "Test project" --dry-run
188
+
189
+ # Dry run cluster creation
190
+ oks-cli cluster create \
191
+ --cluster-name my-cluster \
192
+ --project-name my-project \
193
+ --description "My test cluster" \
194
+ --version "1.32" \
195
+ --dry-run
196
+
197
+ # Set a default project profile
198
+ oks-cli project login --project-name my-project
199
+ ```
200
+
201
+ ---
202
+
203
+ ## 🛠 Development
204
+
205
+ ### Editable Mode
206
+
207
+ Install the CLI in editable mode with development dependencies
208
+
209
+ ```bash
210
+ pip install -e ".[dev]"
211
+ ```
212
+
213
+ Changes in the `oks_cli/` directory will be immediately reflected without reinstalling.
214
+
215
+ ### Tests
216
+
217
+ Run the test suite using `pytest` to ensure code correctness and stability:
218
+
219
+ ```bash
220
+ pytest
221
+ ```
222
+
223
+ ### Project Structure
224
+
225
+ ```
226
+ oks-cli/
227
+ ├── oks_cli/ # Source code
228
+ │ ├── cache.py
229
+ │ ├── cluster.py
230
+ │ ├── main.py
231
+ │ ├── profile.py
232
+ │ ├── project.py
233
+ │ ├── quotas.py
234
+ │ └── utils.py
235
+ ├── setup.py # Packaging configuration
236
+ ├── requirements.txt # Dependencies
237
+ └── README.md # Project documentation
238
+ ```
239
+
240
+ ### Dependencies
241
+
242
+ Dependencies are managed via `setup.py` and `requirements.txt`.
243
+
244
+ To reinstall or update:
245
+
246
+ ```bash
247
+ pip install -e .
248
+ ```
249
+
250
+ ---
251
+
252
+ ## 🤝 Contributing
253
+
254
+ OKS-CLI is open source software licensed under BSD-3-Clause.
255
+
256
+ We welcome contributions! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines and instructions.
257
+
258
+ ---
259
+
260
+ ## 📜 License
261
+
262
+ **BSD-3-Clause**
263
+ © Outscale SAS
264
+
265
+ ---
266
+
267
+ ## 🆘 Support
268
+
269
+ * [Official Documentation](https://docs.outscale.com/fr/userguide/Installer-et-configurer-OKS-CLI.html)
270
+ * [GitHub Issues](https://github.com/outscale/oks-cli/issues)
@@ -0,0 +1,14 @@
1
+ oks_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ oks_cli/cache.py,sha256=gXgzDyQHRsYHsltelmVP_zAMTuvuwI7qRXVeLEiuRWA,2680
3
+ oks_cli/cluster.py,sha256=ed6ygebb0eMDtT539yzx51Fhr9SXDFJ6CqADg0-b5xc,32624
4
+ oks_cli/main.py,sha256=jsE-XLdsaoWLmu8ya61LPhb1W5NfJp1ONkm_hrlgYUE,2850
5
+ oks_cli/profile.py,sha256=usbUVKamdnaVOFJqJ6BTkyXovk2R2Edb6kRipWdIZhU,5269
6
+ oks_cli/project.py,sha256=A_4cqS_DzA6GeoH6rQ4IasDlvxnR6FgAAEOR3oqUoRs,16394
7
+ oks_cli/quotas.py,sha256=BPWYM2vlgeSEIJJR90kPof8y_GwW4IJgtmvx32HAazk,640
8
+ oks_cli/utils.py,sha256=Bu4gRMkcV4P7_jx2gfqo6iRHBPZvcmD1CixOYAQFYzc,29587
9
+ oks_cli-1.14.dist-info/licenses/LICENSE,sha256=o4qdIqtVgJ-mQPAup99O12jOt3cEinK1BGzNpQmCQ2U,1511
10
+ oks_cli-1.14.dist-info/METADATA,sha256=Ttul8L7j__8tg1ybXqLpC6Xe2TFL3oENOomm6xAaH7o,9029
11
+ oks_cli-1.14.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
12
+ oks_cli-1.14.dist-info/entry_points.txt,sha256=YZ-ZEMQwOVxAuZIyXC08zvRsoeDClkn-Lto2LEnNAN4,45
13
+ oks_cli-1.14.dist-info/top_level.txt,sha256=QfpV_-mWxsIg1ewmFG8_yYWLAyMB85AtWQlOt-oFMoY,8
14
+ oks_cli-1.14.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ oks-cli = oks_cli.main:cli
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2025, Outscale SAS
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ * Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ * Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1 @@
1
+ oks_cli