diff --git a/.gitignore b/.gitignore index bdd5055d15..5acf8a8fdf 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,9 @@ target/ .idea/* *.iml .vscode + +# created by sphinx documentation build +doc/source/README.md +doc/_build + +.pybuild/ diff --git a/debian/.gitignore b/debian/.gitignore new file mode 100644 index 0000000000..b2b5bb0765 --- /dev/null +++ b/debian/.gitignore @@ -0,0 +1,6 @@ +*.substvars +*debhelper* +.debhelper +files +python3-kubernetes +tmp diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000000..f9c7d93c7e --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +python-kubernetes (100:29.0.0-1) UNRELEASED; urgency=medium + + * https://github.com/kubernetes-client/python/releases/tag/v29.0.0 + + -- Wong Hoi Sing Edison Tue, 09 Jan 2024 12:22:45 +0800 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000000..182e094478 --- /dev/null +++ b/debian/control @@ -0,0 +1,37 @@ +Source: python-kubernetes +Section: python +Priority: optional +Standards-Version: 4.5.0 +Maintainer: Wong Hoi Sing Edison +Homepage: https://github.com/kubernetes-client/python/tags +Vcs-Browser: https://github.com/alvistack/kubernetes-client-python +Vcs-Git: https://github.com/alvistack/kubernetes-client-python.git +Build-Depends: + debhelper, + debhelper-compat (= 10), + dh-python, + fdupes, + python3-dev, + python3-setuptools, + +Package: python3-kubernetes +Architecture: all +Description: Python client for the kubernetes API. + This package provides a Python client for kubernetes. Kubernetes is a + system for automating deployment, scaling, and management of + containerized applications. +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + ${python3:Depends}, + python3, + python3-certifi (>= 14.05.14), + python3-dateutil (>= 2.5.3), + python3-google-auth (>= 1.0.1), + python3-requests, + python3-requests-oauthlib, + python3-setuptools (>= 21.0.0), + python3-six (>= 1.9.0), + python3-urllib3 (>= 1.24.2), + python3-websocket (>= 0.32.0), + python3-yaml (>= 3.12), diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000000..12900b4193 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,21 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ + +Files: debian/* +Copyright: 2024 Wong Hoi Sing Edison +License: Apache-2.0 + +License: Apache-2.0 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + http://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + The complete text of the Apache version 2.0 license + can be found in "/usr/share/common-licenses/Apache-2.0". diff --git a/debian/python3-kubernetes.install b/debian/python3-kubernetes.install new file mode 100644 index 0000000000..e3da3e7553 --- /dev/null +++ b/debian/python3-kubernetes.install @@ -0,0 +1 @@ +usr/lib/python*/*-packages/* diff --git a/debian/python3-kubernetes.lintian-overrides b/debian/python3-kubernetes.lintian-overrides new file mode 100644 index 0000000000..11e7003f5d --- /dev/null +++ b/debian/python3-kubernetes.lintian-overrides @@ -0,0 +1,5 @@ +python3-kubernetes: copyright-without-copyright-notice +python3-kubernetes: initial-upload-closes-no-bugs +python3-kubernetes: no-manual-page +python3-kubernetes: package-installs-python-pycache-dir +python3-kubernetes: zero-byte-file-in-doc-directory diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000000..fcaa45efe1 --- /dev/null +++ b/debian/rules @@ -0,0 +1,15 @@ +#!/usr/bin/make -f + +SHELL := /bin/bash + +override_dh_auto_install: + dh_auto_install --destdir=debian/tmp + find debian/tmp/usr/lib/python*/*-packages -type f -name '*.pyc' -exec rm -rf {} \; + fdupes -qnrps debian/tmp/usr/lib/python*/*-packages + +override_dh_auto_test: + +override_dh_auto_clean: + +%: + dh $@ --buildsystem=pybuild --with python3 diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000000..163aaf8d82 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 0000000000..f1f7d8084b --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,2 @@ +python-kubernetes source: file-without-copyright-information +python-kubernetes source: no-debian-changes diff --git a/kubernetes/config b/kubernetes/config deleted file mode 120000 index e65cfe84e5..0000000000 --- a/kubernetes/config +++ /dev/null @@ -1 +0,0 @@ -base/config \ No newline at end of file diff --git a/kubernetes/base/config/__init__.py b/kubernetes/config/__init__.py similarity index 100% rename from kubernetes/base/config/__init__.py rename to kubernetes/config/__init__.py diff --git a/kubernetes/base/config/config_exception.py b/kubernetes/config/config_exception.py similarity index 100% rename from kubernetes/base/config/config_exception.py rename to kubernetes/config/config_exception.py diff --git a/kubernetes/base/config/dateutil.py b/kubernetes/config/dateutil.py similarity index 100% rename from kubernetes/base/config/dateutil.py rename to kubernetes/config/dateutil.py diff --git a/kubernetes/base/config/dateutil_test.py b/kubernetes/config/dateutil_test.py similarity index 100% rename from kubernetes/base/config/dateutil_test.py rename to kubernetes/config/dateutil_test.py diff --git a/kubernetes/base/config/exec_provider.py b/kubernetes/config/exec_provider.py similarity index 100% rename from kubernetes/base/config/exec_provider.py rename to kubernetes/config/exec_provider.py diff --git a/kubernetes/base/config/exec_provider_test.py b/kubernetes/config/exec_provider_test.py similarity index 100% rename from kubernetes/base/config/exec_provider_test.py rename to kubernetes/config/exec_provider_test.py diff --git a/kubernetes/base/config/incluster_config.py b/kubernetes/config/incluster_config.py similarity index 100% rename from kubernetes/base/config/incluster_config.py rename to kubernetes/config/incluster_config.py diff --git a/kubernetes/base/config/incluster_config_test.py b/kubernetes/config/incluster_config_test.py similarity index 100% rename from kubernetes/base/config/incluster_config_test.py rename to kubernetes/config/incluster_config_test.py diff --git a/kubernetes/base/config/kube_config.py b/kubernetes/config/kube_config.py similarity index 100% rename from kubernetes/base/config/kube_config.py rename to kubernetes/config/kube_config.py diff --git a/kubernetes/base/config/kube_config_test.py b/kubernetes/config/kube_config_test.py similarity index 100% rename from kubernetes/base/config/kube_config_test.py rename to kubernetes/config/kube_config_test.py diff --git a/kubernetes/dynamic b/kubernetes/dynamic deleted file mode 120000 index e896b54ffd..0000000000 --- a/kubernetes/dynamic +++ /dev/null @@ -1 +0,0 @@ -base/dynamic \ No newline at end of file diff --git a/kubernetes/base/dynamic/__init__.py b/kubernetes/dynamic/__init__.py similarity index 100% rename from kubernetes/base/dynamic/__init__.py rename to kubernetes/dynamic/__init__.py diff --git a/kubernetes/base/dynamic/client.py b/kubernetes/dynamic/client.py similarity index 100% rename from kubernetes/base/dynamic/client.py rename to kubernetes/dynamic/client.py diff --git a/kubernetes/base/dynamic/discovery.py b/kubernetes/dynamic/discovery.py similarity index 100% rename from kubernetes/base/dynamic/discovery.py rename to kubernetes/dynamic/discovery.py diff --git a/kubernetes/base/dynamic/exceptions.py b/kubernetes/dynamic/exceptions.py similarity index 100% rename from kubernetes/base/dynamic/exceptions.py rename to kubernetes/dynamic/exceptions.py diff --git a/kubernetes/base/dynamic/resource.py b/kubernetes/dynamic/resource.py similarity index 100% rename from kubernetes/base/dynamic/resource.py rename to kubernetes/dynamic/resource.py diff --git a/kubernetes/base/dynamic/test_client.py b/kubernetes/dynamic/test_client.py similarity index 100% rename from kubernetes/base/dynamic/test_client.py rename to kubernetes/dynamic/test_client.py diff --git a/kubernetes/base/dynamic/test_discovery.py b/kubernetes/dynamic/test_discovery.py similarity index 100% rename from kubernetes/base/dynamic/test_discovery.py rename to kubernetes/dynamic/test_discovery.py diff --git a/kubernetes/leaderelection b/kubernetes/leaderelection deleted file mode 120000 index 30e0567f73..0000000000 --- a/kubernetes/leaderelection +++ /dev/null @@ -1 +0,0 @@ -base/leaderelection \ No newline at end of file diff --git a/kubernetes/base/leaderelection/README.md b/kubernetes/leaderelection/README.md similarity index 100% rename from kubernetes/base/leaderelection/README.md rename to kubernetes/leaderelection/README.md diff --git a/kubernetes/base/leaderelection/__init__.py b/kubernetes/leaderelection/__init__.py similarity index 100% rename from kubernetes/base/leaderelection/__init__.py rename to kubernetes/leaderelection/__init__.py diff --git a/kubernetes/base/leaderelection/electionconfig.py b/kubernetes/leaderelection/electionconfig.py similarity index 100% rename from kubernetes/base/leaderelection/electionconfig.py rename to kubernetes/leaderelection/electionconfig.py diff --git a/kubernetes/base/leaderelection/example.py b/kubernetes/leaderelection/example.py similarity index 100% rename from kubernetes/base/leaderelection/example.py rename to kubernetes/leaderelection/example.py diff --git a/kubernetes/base/leaderelection/leaderelection.py b/kubernetes/leaderelection/leaderelection.py similarity index 100% rename from kubernetes/base/leaderelection/leaderelection.py rename to kubernetes/leaderelection/leaderelection.py diff --git a/kubernetes/base/leaderelection/leaderelection_test.py b/kubernetes/leaderelection/leaderelection_test.py similarity index 100% rename from kubernetes/base/leaderelection/leaderelection_test.py rename to kubernetes/leaderelection/leaderelection_test.py diff --git a/kubernetes/base/leaderelection/leaderelectionrecord.py b/kubernetes/leaderelection/leaderelectionrecord.py similarity index 100% rename from kubernetes/base/leaderelection/leaderelectionrecord.py rename to kubernetes/leaderelection/leaderelectionrecord.py diff --git a/kubernetes/base/leaderelection/resourcelock/__init__.py b/kubernetes/leaderelection/resourcelock/__init__.py similarity index 100% rename from kubernetes/base/leaderelection/resourcelock/__init__.py rename to kubernetes/leaderelection/resourcelock/__init__.py diff --git a/kubernetes/base/leaderelection/resourcelock/configmaplock.py b/kubernetes/leaderelection/resourcelock/configmaplock.py similarity index 100% rename from kubernetes/base/leaderelection/resourcelock/configmaplock.py rename to kubernetes/leaderelection/resourcelock/configmaplock.py diff --git a/kubernetes/stream b/kubernetes/stream deleted file mode 120000 index 387e18fe54..0000000000 --- a/kubernetes/stream +++ /dev/null @@ -1 +0,0 @@ -base/stream \ No newline at end of file diff --git a/kubernetes/base/stream/__init__.py b/kubernetes/stream/__init__.py similarity index 100% rename from kubernetes/base/stream/__init__.py rename to kubernetes/stream/__init__.py diff --git a/kubernetes/base/stream/stream.py b/kubernetes/stream/stream.py similarity index 100% rename from kubernetes/base/stream/stream.py rename to kubernetes/stream/stream.py diff --git a/kubernetes/base/stream/ws_client.py b/kubernetes/stream/ws_client.py similarity index 100% rename from kubernetes/base/stream/ws_client.py rename to kubernetes/stream/ws_client.py diff --git a/kubernetes/base/stream/ws_client_test.py b/kubernetes/stream/ws_client_test.py similarity index 100% rename from kubernetes/base/stream/ws_client_test.py rename to kubernetes/stream/ws_client_test.py diff --git a/kubernetes/watch b/kubernetes/watch deleted file mode 120000 index b3079b32f6..0000000000 --- a/kubernetes/watch +++ /dev/null @@ -1 +0,0 @@ -base/watch \ No newline at end of file diff --git a/kubernetes/base/watch/__init__.py b/kubernetes/watch/__init__.py similarity index 100% rename from kubernetes/base/watch/__init__.py rename to kubernetes/watch/__init__.py diff --git a/kubernetes/base/watch/watch.py b/kubernetes/watch/watch.py similarity index 100% rename from kubernetes/base/watch/watch.py rename to kubernetes/watch/watch.py diff --git a/kubernetes/base/watch/watch_test.py b/kubernetes/watch/watch_test.py similarity index 100% rename from kubernetes/base/watch/watch_test.py rename to kubernetes/watch/watch_test.py diff --git a/python-kubernetes.spec b/python-kubernetes.spec new file mode 100644 index 0000000000..2ea2584a8c --- /dev/null +++ b/python-kubernetes.spec @@ -0,0 +1,176 @@ +# Copyright 2024 Wong Hoi Sing Edison +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +%global debug_package %{nil} + +%global source_date_epoch_from_changelog 0 + +Name: python-kubernetes +Epoch: 100 +Version: 29.0.0 +Release: 1%{?dist} +BuildArch: noarch +Summary: Python client for the kubernetes API. +License: Apache-2.0 +URL: https://github.com/kubernetes-client/python/tags +Source0: %{name}_%{version}.orig.tar.gz +BuildRequires: fdupes +BuildRequires: python-rpm-macros +BuildRequires: python3-devel +BuildRequires: python3-setuptools + +%description +This package provides a Python client for kubernetes. Kubernetes is a +system for automating deployment, scaling, and management of +containerized applications. + +%prep +%autosetup -T -c -n %{name}_%{version}-%{release} +tar -zx -f %{S:0} --strip-components=1 -C . + +%build +%py3_build + +%install +%py3_install +find %{buildroot}%{python3_sitelib} -type f -name '*.pyc' -exec rm -rf {} \; +fdupes -qnrps %{buildroot}%{python3_sitelib} + +%check + +%if 0%{?suse_version} > 1500 +%package -n python%{python3_version_nodots}-kubernetes +Summary: Python client for the kubernetes API. +Requires: python3 +Requires: python3-certifi >= 14.05.14 +Requires: python3-python-dateutil >= 2.5.3 +Requires: python3-google-auth >= 1.0.1 +Requires: python3-PyYAML >= 3.12 +Requires: python3-requests, +Requires: python3-requests-oauthlib, +Requires: python3-setuptools >= 21.0.0 +Requires: python3-six >= 1.9.0 +Requires: python3-urllib3 >= 1.24.2 +Requires: python3-websocket-client >= 0.32.0 +Provides: python3-kubernetes = %{epoch}:%{version}-%{release} +Provides: python3dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(kubernetes) = %{epoch}:%{version}-%{release} + +%description -n python%{python3_version_nodots}-kubernetes +This package provides a Python client for kubernetes. Kubernetes is a +system for automating deployment, scaling, and management of +containerized applications. + +%files -n python%{python3_version_nodots}-kubernetes +%license LICENSE +%{python3_sitelib}/* +%endif + +%if 0%{?sle_version} > 150000 +%package -n python3-kubernetes +Summary: Python client for the kubernetes API. +Requires: python3 +Requires: python3-certifi >= 14.05.14 +Requires: python3-python-dateutil >= 2.5.3 +Requires: python3-google-auth >= 1.0.1 +Requires: python3-PyYAML >= 3.12 +Requires: python3-requests, +Requires: python3-requests-oauthlib, +Requires: python3-setuptools >= 21.0.0 +Requires: python3-six >= 1.9.0 +Requires: python3-urllib3 >= 1.24.2 +Requires: python3-websocket-client >= 0.32.0 +Provides: python3-kubernetes = %{epoch}:%{version}-%{release} +Provides: python3dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(kubernetes) = %{epoch}:%{version}-%{release} + +%description -n python3-kubernetes +This package provides a Python client for kubernetes. Kubernetes is a +system for automating deployment, scaling, and management of +containerized applications. + +%files -n python3-kubernetes +%license LICENSE +%{python3_sitelib}/* +%endif + +%if 0%{?rhel} == 7 +%package -n python3-kubernetes +Summary: Python client for the kubernetes API. +Requires: python3 +Requires: python3-certifi >= 14.05.14 +Requires: python36-dateutil >= 2.5.3 +Requires: python3-google-auth >= 1.0.1 +Requires: python3-PyYAML >= 3.12 +Requires: python3-requests, +Requires: python3-requests-oauthlib, +Requires: python3-setuptools >= 21.0.0 +Requires: python3-six >= 1.9.0 +Requires: python3-urllib3 >= 1.24.2 +Requires: python3-websocket-client >= 0.32.0 +Provides: python3-kubernetes = %{epoch}:%{version}-%{release} +Provides: python3dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(kubernetes) = %{epoch}:%{version}-%{release} + +%description -n python3-kubernetes +This package provides a Python client for kubernetes. Kubernetes is a +system for automating deployment, scaling, and management of +containerized applications. + +%files -n python3-kubernetes +%license LICENSE +%{python3_sitelib}/* +%endif + +%if !(0%{?suse_version} > 1500) && !(0%{?sle_version} > 150000) && !(0%{?rhel} == 7) +%package -n python3-kubernetes +Summary: Python client for the kubernetes API. +Requires: python3 +Requires: python3-certifi >= 14.05.14 +Requires: python3-dateutil >= 2.5.3 +Requires: python3-google-auth >= 1.0.1 +Requires: python3-pyyaml >= 3.12 +Requires: python3-requests, +Requires: python3-requests-oauthlib, +Requires: python3-setuptools >= 21.0.0 +Requires: python3-six >= 1.9.0 +Requires: python3-urllib3 >= 1.24.2 +Requires: python3-websocket-client >= 0.32.0 +Provides: python3-kubernetes = %{epoch}:%{version}-%{release} +Provides: python3dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(kubernetes) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-kubernetes = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(kubernetes) = %{epoch}:%{version}-%{release} + +%description -n python3-kubernetes +This package provides a Python client for kubernetes. Kubernetes is a +system for automating deployment, scaling, and management of +containerized applications. + +%files -n python3-kubernetes +%license LICENSE +%{python3_sitelib}/* +%endif + +%changelog diff --git a/setup.cfg b/setup.cfg index 40fddba6a8..e29e9c9554 100644 --- a/setup.cfg +++ b/setup.cfg @@ -4,4 +4,9 @@ build-dir = doc/build all_files = 1 [upload_sphinx] -upload-dir = doc/build/html \ No newline at end of file +upload-dir = doc/build/html + +[egg_info] +tag_build = +tag_date = 0 +