kubernator 1.0.16__py3-none-any.whl → 1.0.24.dev20251109010128__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.
- kubernator/__init__.py +1 -1
- kubernator/api.py +180 -67
- kubernator/app.py +7 -3
- kubernator/plugins/gke.py +105 -0
- kubernator/plugins/helm.py +107 -18
- kubernator/plugins/istio.py +150 -37
- kubernator/plugins/k8s.py +122 -52
- kubernator/plugins/k8s_api.py +30 -26
- kubernator/plugins/kops.py +5 -4
- kubernator/plugins/kubectl.py +35 -4
- kubernator/plugins/minikube.py +48 -3
- kubernator/plugins/template.py +2 -2
- kubernator/proc.py +24 -2
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/METADATA +32 -17
- kubernator-1.0.24.dev20251109010128.dist-info/RECORD +31 -0
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/WHEEL +1 -1
- kubernator-1.0.16.dist-info/RECORD +0 -30
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/entry_points.txt +0 -0
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/namespace_packages.txt +0 -0
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/top_level.txt +0 -0
- {kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/zip-safe +0 -0
kubernator/proc.py
CHANGED
|
@@ -108,7 +108,7 @@ class ProcessRunner:
|
|
|
108
108
|
raise RuntimeError("not available")
|
|
109
109
|
return self._proc.stdin
|
|
110
110
|
|
|
111
|
-
def wait(self, fail=True, timeout=None, _out_func=None):
|
|
111
|
+
def wait(self, fail=True, timeout=None, _out_func=None, _stderr_func=None):
|
|
112
112
|
with Timeout(timeout, TimeoutExpired):
|
|
113
113
|
retcode = self._proc.wait()
|
|
114
114
|
if self._stdin_writer:
|
|
@@ -119,9 +119,12 @@ class ProcessRunner:
|
|
|
119
119
|
self._stderr_reader.join()
|
|
120
120
|
if fail and retcode:
|
|
121
121
|
output = None
|
|
122
|
+
stderr = None
|
|
122
123
|
if _out_func:
|
|
123
124
|
output = _out_func()
|
|
124
|
-
|
|
125
|
+
if _stderr_func:
|
|
126
|
+
stderr = _stderr_func()
|
|
127
|
+
raise CalledProcessError(retcode, self._safe_args, output=output, stderr=stderr)
|
|
125
128
|
return retcode
|
|
126
129
|
|
|
127
130
|
def terminate(self):
|
|
@@ -134,6 +137,25 @@ class ProcessRunner:
|
|
|
134
137
|
run = ProcessRunner
|
|
135
138
|
|
|
136
139
|
|
|
140
|
+
def run_pass_through_capturing(args, stdout_logger, stderr_logger, stdin=DEVNULL, *, safe_args=None,
|
|
141
|
+
universal_newlines=True, **kwargs):
|
|
142
|
+
out = StringIO(trimmed=False) if universal_newlines else BytesIO()
|
|
143
|
+
err = StringIO(trimmed=False) if universal_newlines else BytesIO()
|
|
144
|
+
|
|
145
|
+
def write_out(data):
|
|
146
|
+
out.write(data)
|
|
147
|
+
stdout_logger(data)
|
|
148
|
+
|
|
149
|
+
def write_err(data):
|
|
150
|
+
err.write(data)
|
|
151
|
+
stderr_logger(data)
|
|
152
|
+
|
|
153
|
+
proc = run(args, write_out, write_err, stdin, safe_args=safe_args, universal_newlines=universal_newlines,
|
|
154
|
+
**kwargs)
|
|
155
|
+
proc.wait(_out_func=lambda: out.getvalue(), _stderr_func=lambda: err.getvalue())
|
|
156
|
+
return out.getvalue(), err.getvalue()
|
|
157
|
+
|
|
158
|
+
|
|
137
159
|
def run_capturing_out(args, stderr_logger, stdin=DEVNULL, *, safe_args=None, universal_newlines=True, **kwargs):
|
|
138
160
|
out = StringIO(trimmed=False) if universal_newlines else BytesIO()
|
|
139
161
|
proc = run(args, out.write, stderr_logger, stdin, safe_args=safe_args, universal_newlines=universal_newlines,
|
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: kubernator
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.24.dev20251109010128
|
|
4
4
|
Summary: Kubernator is the a pluggable framework for K8S provisioning
|
|
5
5
|
Home-page: https://github.com/karellen/kubernator
|
|
6
6
|
Author: Express Systems USA, Inc.
|
|
7
7
|
Author-email:
|
|
8
8
|
Maintainer: Karellen, Inc., Arcadiy Ivanov
|
|
9
9
|
Maintainer-email: supervisor@karellen.co,arcadiy@karellen.co
|
|
10
|
-
License: Apache
|
|
10
|
+
License: Apache-2.0
|
|
11
11
|
Project-URL: Bug Tracker, https://github.com/karellen/kubernator/issues
|
|
12
12
|
Project-URL: Documentation, https://github.com/karellen/kubernator/
|
|
13
13
|
Project-URL: Source Code, https://github.com/karellen/kubernator/
|
|
14
14
|
Keywords: kubernetes k8s kube top provisioning kOps terraform tf AWS
|
|
15
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
|
16
15
|
Classifier: Programming Language :: Python :: 3.9
|
|
17
16
|
Classifier: Programming Language :: Python :: 3.10
|
|
18
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
19
18
|
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
20
21
|
Classifier: Operating System :: MacOS :: MacOS X
|
|
21
22
|
Classifier: Operating System :: POSIX
|
|
22
23
|
Classifier: Operating System :: POSIX :: Linux
|
|
@@ -31,19 +32,33 @@ Classifier: Intended Audience :: Developers
|
|
|
31
32
|
Classifier: Development Status :: 4 - Beta
|
|
32
33
|
Requires-Python: >=3.9
|
|
33
34
|
Description-Content-Type: text/markdown
|
|
34
|
-
Requires-Dist: coloredlogs
|
|
35
|
-
Requires-Dist: diff-match-patch
|
|
36
|
-
Requires-Dist:
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
Requires-Dist:
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist: openapi-
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist:
|
|
35
|
+
Requires-Dist: coloredlogs~=15.0
|
|
36
|
+
Requires-Dist: diff-match-patch>2023.0
|
|
37
|
+
Requires-Dist: durationpy>=0.7
|
|
38
|
+
Requires-Dist: gevent>=21.1.2
|
|
39
|
+
Requires-Dist: jinja2~=3.1
|
|
40
|
+
Requires-Dist: json-log-formatter~=0.3
|
|
41
|
+
Requires-Dist: jsonpatch~=1.33
|
|
42
|
+
Requires-Dist: jsonpath-ng~=1.7.0
|
|
43
|
+
Requires-Dist: jsonschema~=4.23
|
|
44
|
+
Requires-Dist: kubernetes~=32.0
|
|
45
|
+
Requires-Dist: openapi-schema-validator~=0.1
|
|
46
|
+
Requires-Dist: openapi-spec-validator~=0.3
|
|
47
|
+
Requires-Dist: platformdirs~=4.2
|
|
48
|
+
Requires-Dist: requests>=2.31.0
|
|
49
|
+
Dynamic: author
|
|
50
|
+
Dynamic: classifier
|
|
51
|
+
Dynamic: description
|
|
52
|
+
Dynamic: description-content-type
|
|
53
|
+
Dynamic: home-page
|
|
54
|
+
Dynamic: keywords
|
|
55
|
+
Dynamic: license
|
|
56
|
+
Dynamic: maintainer
|
|
57
|
+
Dynamic: maintainer-email
|
|
58
|
+
Dynamic: project-url
|
|
59
|
+
Dynamic: requires-dist
|
|
60
|
+
Dynamic: requires-python
|
|
61
|
+
Dynamic: summary
|
|
47
62
|
|
|
48
63
|
# Kubernator
|
|
49
64
|
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
kubernator/LICENSE,sha256=wKKdOCMTCPQRV5gDkVLAsXX8qSnRJ5owk7yWPO1KZNo,11387
|
|
2
|
+
kubernator/__init__.py,sha256=6ZQDZlzA65nqVQqVV-dQHp6yy2a8ZEFUX7rV2KaenYk,933
|
|
3
|
+
kubernator/__main__.py,sha256=f0S60wgpLu--1UlOhzfWail-xt8zyIuODodX98_yPN0,707
|
|
4
|
+
kubernator/_json_path.py,sha256=pjQKXxgbpQWETYBIrIuJZHgugF92IbEAM19AC7JUmAQ,3162
|
|
5
|
+
kubernator/_k8s_client_patches.py,sha256=PEeWPInnW38NDyK7G24_Dmw-x7xHpN3vJWZeckdqgK0,76892
|
|
6
|
+
kubernator/api.py,sha256=LaiE8VhoqU-jHWT6G1DnBkzC9OvrkcDiLS8jiDhIGIg,31441
|
|
7
|
+
kubernator/app.py,sha256=ETgysPcIKEDsMTbdIw00-enSLip7Z2cECJrRxjf9ciw,21214
|
|
8
|
+
kubernator/merge.py,sha256=eW5fajnDdI2n8aUqRfTmdG6GWDvDtcVKPKsp3fiB5Nk,5882
|
|
9
|
+
kubernator/proc.py,sha256=43jrpTe1FCdhDIK0b6hnB6XqU_m7iYu3wbzJyzO3pl0,5979
|
|
10
|
+
kubernator/plugins/__init__.py,sha256=h9TLYK8UFEi53ipZSZsTBjp0ljKhisWsgPpt_PkWrO8,670
|
|
11
|
+
kubernator/plugins/awscli.py,sha256=S6X7-qFiaZ7NDVDl2Jg0t-ih9KAJ45cUjjzd5Qe93ZM,4252
|
|
12
|
+
kubernator/plugins/eks.py,sha256=xe7vyPHNwuP8gEYDSzPyBkm-RkAtP64wCOqs9U5I7xI,2273
|
|
13
|
+
kubernator/plugins/gke.py,sha256=HZc-Bu2W8MvF50EgoAcZ8W-CAVEWJ4y8f4yG_3s8C1w,3429
|
|
14
|
+
kubernator/plugins/helm.py,sha256=3y1Wr7v-Dn1twro4j2OpVFZOEXdhQmlXP9qL1l7L5kg,15156
|
|
15
|
+
kubernator/plugins/istio.py,sha256=UFSBJo-I2x4F-ZO5WCSMpConOr_oYNZZb66DNOI_nME,15399
|
|
16
|
+
kubernator/plugins/k8s.py,sha256=Y9QSaRzX5BDE_-nmlwjHYgVOEZK4Zs_hvnJIZ8PxZyQ,28030
|
|
17
|
+
kubernator/plugins/k8s_api.py,sha256=dP4W8AFgH6mTvsbwd10EGfmG55wG3E0SZ7RGQpDgpdw,27897
|
|
18
|
+
kubernator/plugins/kops.py,sha256=-yhpEjydz9E7Ep24WtEs93rLTXtw4yakdgVqXlIj1ww,9688
|
|
19
|
+
kubernator/plugins/kubeconfig.py,sha256=uwtHmF2I6LiTPrC3M88G5SfYxDWtuh0MqcMfrHHoNRA,2178
|
|
20
|
+
kubernator/plugins/kubectl.py,sha256=kz2BKJrg0M2yRJ4Tug9rZgjSEURbT5ybVx4fScDZt58,5102
|
|
21
|
+
kubernator/plugins/minikube.py,sha256=zbboER1VsCvIsh-yUE3_XpzPNcT4c6vh1LigDonEm3U,12384
|
|
22
|
+
kubernator/plugins/template.py,sha256=542nyS4ZNgdwJHEoIA5aLP1d4C312ydd7sPM9ZFbHuI,8357
|
|
23
|
+
kubernator/plugins/terraform.py,sha256=a1MPl9G8Rznjd28uMRdYWrjpFDLlFAVmLFH4hFEsMsQ,5285
|
|
24
|
+
kubernator/plugins/terragrunt.py,sha256=-qN8tTqPUXJ9O7CEiJVUB0GSUQU3DUTkv-aWdIIsm7Q,5051
|
|
25
|
+
kubernator-1.0.24.dev20251109010128.dist-info/METADATA,sha256=zYKRkX29fX8D5DNRZg5OmWpD0wVsmV8APYHFDoioTxg,10840
|
|
26
|
+
kubernator-1.0.24.dev20251109010128.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
27
|
+
kubernator-1.0.24.dev20251109010128.dist-info/entry_points.txt,sha256=IWDtHzyTleRqDSuVRXEr5GImrI7z_kh21t5DWZ8ldcQ,47
|
|
28
|
+
kubernator-1.0.24.dev20251109010128.dist-info/namespace_packages.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
29
|
+
kubernator-1.0.24.dev20251109010128.dist-info/top_level.txt,sha256=_z1CxWeKMI55ckf2vC8HqjbCn_E2Y_P5RdrhE_QWcIs,11
|
|
30
|
+
kubernator-1.0.24.dev20251109010128.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
31
|
+
kubernator-1.0.24.dev20251109010128.dist-info/RECORD,,
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
kubernator/LICENSE,sha256=wKKdOCMTCPQRV5gDkVLAsXX8qSnRJ5owk7yWPO1KZNo,11387
|
|
2
|
-
kubernator/__init__.py,sha256=kM163cxCijR8n3EdwY1rtDuVdXDxAw5Wl7TnvirO8cY,915
|
|
3
|
-
kubernator/__main__.py,sha256=f0S60wgpLu--1UlOhzfWail-xt8zyIuODodX98_yPN0,707
|
|
4
|
-
kubernator/_json_path.py,sha256=pjQKXxgbpQWETYBIrIuJZHgugF92IbEAM19AC7JUmAQ,3162
|
|
5
|
-
kubernator/_k8s_client_patches.py,sha256=PEeWPInnW38NDyK7G24_Dmw-x7xHpN3vJWZeckdqgK0,76892
|
|
6
|
-
kubernator/api.py,sha256=sW_ou7CCsi2buLBdQI0x8xYfLq2LVz-2lnAB9sELumA,26701
|
|
7
|
-
kubernator/app.py,sha256=ZtQm60Cb1z2SkD338B6nue3wLOo_auRqZRW5ou_-d84,20949
|
|
8
|
-
kubernator/merge.py,sha256=eW5fajnDdI2n8aUqRfTmdG6GWDvDtcVKPKsp3fiB5Nk,5882
|
|
9
|
-
kubernator/proc.py,sha256=8YlgbppyHic_51fVTPD7OP8x5yuRuL8j1kThR8MJjNI,5119
|
|
10
|
-
kubernator/plugins/__init__.py,sha256=h9TLYK8UFEi53ipZSZsTBjp0ljKhisWsgPpt_PkWrO8,670
|
|
11
|
-
kubernator/plugins/awscli.py,sha256=S6X7-qFiaZ7NDVDl2Jg0t-ih9KAJ45cUjjzd5Qe93ZM,4252
|
|
12
|
-
kubernator/plugins/eks.py,sha256=xe7vyPHNwuP8gEYDSzPyBkm-RkAtP64wCOqs9U5I7xI,2273
|
|
13
|
-
kubernator/plugins/helm.py,sha256=3BYZBPoiMUtNgmhdcbYCVRTPtaQMYzhfnMqXWyZRJZc,10525
|
|
14
|
-
kubernator/plugins/istio.py,sha256=hD-VCNVGELt7cGFbE7S7dTiqKE7rfhzE8qA9X5tsllE,10532
|
|
15
|
-
kubernator/plugins/k8s.py,sha256=Zj3q_bUmbOADfjSHy2X0BhgrbXuH-fM8Vq75sYFy0nE,24496
|
|
16
|
-
kubernator/plugins/k8s_api.py,sha256=w2aB7CU0rPqRgzhI5mLMJUUSpWlJGCsX_bHl4SjfzM8,27594
|
|
17
|
-
kubernator/plugins/kops.py,sha256=QsrQJUF6wGJo2QRVqP92pG5vmOTYQIc25PD_DWCzrAA,9635
|
|
18
|
-
kubernator/plugins/kubeconfig.py,sha256=uwtHmF2I6LiTPrC3M88G5SfYxDWtuh0MqcMfrHHoNRA,2178
|
|
19
|
-
kubernator/plugins/kubectl.py,sha256=IgNghW1Q6s8V2o08eNY2NWfkkdV9Z6X2A3YFQinFr4g,4028
|
|
20
|
-
kubernator/plugins/minikube.py,sha256=kWPDIS4X1JnEoXw_rIOvgvFtjJMch39uL0mD7gQwtjE,10162
|
|
21
|
-
kubernator/plugins/template.py,sha256=KEiPfI7TbYXmF4a8ATWuFhxxWbcASHttFM_ekYEZ8Ps,8371
|
|
22
|
-
kubernator/plugins/terraform.py,sha256=a1MPl9G8Rznjd28uMRdYWrjpFDLlFAVmLFH4hFEsMsQ,5285
|
|
23
|
-
kubernator/plugins/terragrunt.py,sha256=-qN8tTqPUXJ9O7CEiJVUB0GSUQU3DUTkv-aWdIIsm7Q,5051
|
|
24
|
-
kubernator-1.0.16.dist-info/METADATA,sha256=LlHz8k2lx4hnHKVULshjY7ZM--WxvecEkik7FNq5Pew,10503
|
|
25
|
-
kubernator-1.0.16.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
26
|
-
kubernator-1.0.16.dist-info/entry_points.txt,sha256=IWDtHzyTleRqDSuVRXEr5GImrI7z_kh21t5DWZ8ldcQ,47
|
|
27
|
-
kubernator-1.0.16.dist-info/namespace_packages.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
28
|
-
kubernator-1.0.16.dist-info/top_level.txt,sha256=_z1CxWeKMI55ckf2vC8HqjbCn_E2Y_P5RdrhE_QWcIs,11
|
|
29
|
-
kubernator-1.0.16.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
30
|
-
kubernator-1.0.16.dist-info/RECORD,,
|
{kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{kubernator-1.0.16.dist-info → kubernator-1.0.24.dev20251109010128.dist-info}/namespace_packages.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|