diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-jupyterhub-kubespawner.spec | 378 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 380 insertions, 0 deletions
@@ -0,0 +1 @@ +/jupyterhub-kubespawner-4.3.0.tar.gz diff --git a/python-jupyterhub-kubespawner.spec b/python-jupyterhub-kubespawner.spec new file mode 100644 index 0000000..b4f4dca --- /dev/null +++ b/python-jupyterhub-kubespawner.spec @@ -0,0 +1,378 @@ +%global _empty_manifest_terminate_build 0 +Name: python-jupyterhub-kubespawner +Version: 4.3.0 +Release: 1 +Summary: JupyterHub Spawner for Kubernetes +License: BSD +URL: http://github.com/jupyterhub/kubespawner +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/e9/41/7062f95748c95dde5bc926c50f8d7d7f595751d4aa5cf92147974d78d122/jupyterhub-kubespawner-4.3.0.tar.gz +BuildArch: noarch + +Requires: python3-escapism +Requires: python3-slugify +Requires: python3-jupyterhub +Requires: python3-jinja2 +Requires: python3-kubernetes-asyncio +Requires: python3-urllib3 +Requires: python3-pyYAML +Requires: python3-bump2version +Requires: python3-kubernetes +Requires: python3-pytest +Requires: python3-pytest-cov +Requires: python3-pytest-asyncio + +%description +# [kubespawner](https://github.com/jupyterhub/kubespawner) (jupyterhub-kubespawner @ PyPI) + +[](https://jupyterhub-kubespawner.readthedocs.io/en/latest/?badge=latest) +[](https://github.com/jupyterhub/kubespawner/actions) +[](https://codecov.io/gh/jupyterhub/kubespawner) +[](https://pypi.python.org/pypi/jupyterhub-kubespawner) + +The _kubespawner_ (also known as JupyterHub Kubernetes Spawner) enables JupyterHub to spawn +single-user notebook servers on a [Kubernetes](https://kubernetes.io/) +cluster. + +See the [KubeSpawner documentation](https://jupyterhub-kubespawner.readthedocs.io) for more +information about features and usage. In particular, here is [a list of all the spawner options](https://jupyterhub-kubespawner.readthedocs.io/en/latest/spawner.html#module-kubespawner.spawner). + +## Features + +Kubernetes is an open-source system for automating deployment, scaling, and +management of containerized applications. If you want to run a JupyterHub +setup that needs to scale across multiple nodes (anything with over ~50 +simultaneous users), Kubernetes is a wonderful way to do it. Features include: + +- Easily and elasticly run anywhere between 2 and thousands of nodes with the + same set of powerful abstractions. Scale up and down as required by simply + adding or removing nodes. + +- Run JupyterHub itself inside Kubernetes easily. This allows you to manage + many JupyterHub deployments with only Kubernetes, without requiring an extra + layer of Ansible / Puppet / Bash scripts. This also provides easy integrated + monitoring and failover for the hub process itself. + +- Spawn multiple hubs in the same kubernetes cluster, with support for + [namespaces](https://kubernetes.io/docs/admin/namespaces/). You can limit the + amount of resources each namespace can use, effectively limiting the amount + of resources a single JupyterHub (and its users) can use. This allows + organizations to easily maintain multiple JupyterHubs with just one + kubernetes cluster, allowing for easy maintenance & high resource + utilization. + +- Provide guarantees and limits on the amount of resources (CPU / RAM) that + single-user notebooks can use. Kubernetes has comprehensive [resource control](https://kubernetes.io/docs/user-guide/compute-resources/) that can + be used from the spawner. + +- Mount various types of [persistent volumes](https://kubernetes.io/docs/user-guide/persistent-volumes/) + onto the single-user notebook's container. + +- Control various security parameters (such as userid/groupid, SELinux, etc) + via flexible [Pod Security Policies](https://kubernetes.io/docs/user-guide/pod-security-policy/). + +- Run easily in multiple clouds (or on your own machines). Helps avoid vendor + lock-in. You can even spread out your cluster across + [multiple clouds at the same time](https://kubernetes.io/docs/user-guide/federation/). + +In general, Kubernetes provides a ton of well thought out, useful features - +and you can use all of them along with this spawner. + +## Requirements + +### Kubernetes + +Everything should work from Kubernetes v1.6+. + +The [Kube DNS addon](https://kubernetes.io/docs/user-guide/connecting-applications/#dns) +is not strictly required - the spawner uses +[environment variable](https://kubernetes.io/docs/user-guide/connecting-applications/#environment-variables) +based discovery instead. Your kubernetes cluster will need to be configured to +support the types of volumes you want to use. + +If you are just getting started and want a kubernetes cluster to play with, +[Google Container Engine](https://cloud.google.com/container-engine/) is +probably the nicest option. For AWS/Azure, +[kops](https://github.com/kubernetes/kops) is probably the way to go. + +## Getting help + +We encourage you to ask questions on the +[Jupyter mailing list](https://groups.google.com/forum/#!forum/jupyter). +You can also participate in development discussions or get live help on +[Gitter](https://gitter.im/jupyterhub/jupyterhub). + +## License + +We use a shared copyright model that enables all contributors to maintain the +copyright on their contributions. + +All code is licensed under the terms of the revised BSD license. + +## Resources + +#### JupyterHub and kubespawner + +- [Reporting Issues](https://github.com/jupyterhub/kubespawner/issues) +- [Documentation for JupyterHub](https://jupyterhub.readthedocs.io) +- [Documentation for JupyterHub's REST API](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/jupyter/jupyterhub/master/docs/rest-api.yml#/default) + +#### Jupyter + +- [Documentation for Project Jupyter](https://jupyter.readthedocs.io/en/latest/index.html) | [PDF](https://media.readthedocs.org/pdf/jupyter/latest/jupyter.pdf) +- [Project Jupyter website](https://jupyter.org) + + +%package -n python3-jupyterhub-kubespawner +Summary: JupyterHub Spawner for Kubernetes +Provides: python-jupyterhub-kubespawner +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-jupyterhub-kubespawner +# [kubespawner](https://github.com/jupyterhub/kubespawner) (jupyterhub-kubespawner @ PyPI) + +[](https://jupyterhub-kubespawner.readthedocs.io/en/latest/?badge=latest) +[](https://github.com/jupyterhub/kubespawner/actions) +[](https://codecov.io/gh/jupyterhub/kubespawner) +[](https://pypi.python.org/pypi/jupyterhub-kubespawner) + +The _kubespawner_ (also known as JupyterHub Kubernetes Spawner) enables JupyterHub to spawn +single-user notebook servers on a [Kubernetes](https://kubernetes.io/) +cluster. + +See the [KubeSpawner documentation](https://jupyterhub-kubespawner.readthedocs.io) for more +information about features and usage. In particular, here is [a list of all the spawner options](https://jupyterhub-kubespawner.readthedocs.io/en/latest/spawner.html#module-kubespawner.spawner). + +## Features + +Kubernetes is an open-source system for automating deployment, scaling, and +management of containerized applications. If you want to run a JupyterHub +setup that needs to scale across multiple nodes (anything with over ~50 +simultaneous users), Kubernetes is a wonderful way to do it. Features include: + +- Easily and elasticly run anywhere between 2 and thousands of nodes with the + same set of powerful abstractions. Scale up and down as required by simply + adding or removing nodes. + +- Run JupyterHub itself inside Kubernetes easily. This allows you to manage + many JupyterHub deployments with only Kubernetes, without requiring an extra + layer of Ansible / Puppet / Bash scripts. This also provides easy integrated + monitoring and failover for the hub process itself. + +- Spawn multiple hubs in the same kubernetes cluster, with support for + [namespaces](https://kubernetes.io/docs/admin/namespaces/). You can limit the + amount of resources each namespace can use, effectively limiting the amount + of resources a single JupyterHub (and its users) can use. This allows + organizations to easily maintain multiple JupyterHubs with just one + kubernetes cluster, allowing for easy maintenance & high resource + utilization. + +- Provide guarantees and limits on the amount of resources (CPU / RAM) that + single-user notebooks can use. Kubernetes has comprehensive [resource control](https://kubernetes.io/docs/user-guide/compute-resources/) that can + be used from the spawner. + +- Mount various types of [persistent volumes](https://kubernetes.io/docs/user-guide/persistent-volumes/) + onto the single-user notebook's container. + +- Control various security parameters (such as userid/groupid, SELinux, etc) + via flexible [Pod Security Policies](https://kubernetes.io/docs/user-guide/pod-security-policy/). + +- Run easily in multiple clouds (or on your own machines). Helps avoid vendor + lock-in. You can even spread out your cluster across + [multiple clouds at the same time](https://kubernetes.io/docs/user-guide/federation/). + +In general, Kubernetes provides a ton of well thought out, useful features - +and you can use all of them along with this spawner. + +## Requirements + +### Kubernetes + +Everything should work from Kubernetes v1.6+. + +The [Kube DNS addon](https://kubernetes.io/docs/user-guide/connecting-applications/#dns) +is not strictly required - the spawner uses +[environment variable](https://kubernetes.io/docs/user-guide/connecting-applications/#environment-variables) +based discovery instead. Your kubernetes cluster will need to be configured to +support the types of volumes you want to use. + +If you are just getting started and want a kubernetes cluster to play with, +[Google Container Engine](https://cloud.google.com/container-engine/) is +probably the nicest option. For AWS/Azure, +[kops](https://github.com/kubernetes/kops) is probably the way to go. + +## Getting help + +We encourage you to ask questions on the +[Jupyter mailing list](https://groups.google.com/forum/#!forum/jupyter). +You can also participate in development discussions or get live help on +[Gitter](https://gitter.im/jupyterhub/jupyterhub). + +## License + +We use a shared copyright model that enables all contributors to maintain the +copyright on their contributions. + +All code is licensed under the terms of the revised BSD license. + +## Resources + +#### JupyterHub and kubespawner + +- [Reporting Issues](https://github.com/jupyterhub/kubespawner/issues) +- [Documentation for JupyterHub](https://jupyterhub.readthedocs.io) +- [Documentation for JupyterHub's REST API](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/jupyter/jupyterhub/master/docs/rest-api.yml#/default) + +#### Jupyter + +- [Documentation for Project Jupyter](https://jupyter.readthedocs.io/en/latest/index.html) | [PDF](https://media.readthedocs.org/pdf/jupyter/latest/jupyter.pdf) +- [Project Jupyter website](https://jupyter.org) + + +%package help +Summary: Development documents and examples for jupyterhub-kubespawner +Provides: python3-jupyterhub-kubespawner-doc +%description help +# [kubespawner](https://github.com/jupyterhub/kubespawner) (jupyterhub-kubespawner @ PyPI) + +[](https://jupyterhub-kubespawner.readthedocs.io/en/latest/?badge=latest) +[](https://github.com/jupyterhub/kubespawner/actions) +[](https://codecov.io/gh/jupyterhub/kubespawner) +[](https://pypi.python.org/pypi/jupyterhub-kubespawner) + +The _kubespawner_ (also known as JupyterHub Kubernetes Spawner) enables JupyterHub to spawn +single-user notebook servers on a [Kubernetes](https://kubernetes.io/) +cluster. + +See the [KubeSpawner documentation](https://jupyterhub-kubespawner.readthedocs.io) for more +information about features and usage. In particular, here is [a list of all the spawner options](https://jupyterhub-kubespawner.readthedocs.io/en/latest/spawner.html#module-kubespawner.spawner). + +## Features + +Kubernetes is an open-source system for automating deployment, scaling, and +management of containerized applications. If you want to run a JupyterHub +setup that needs to scale across multiple nodes (anything with over ~50 +simultaneous users), Kubernetes is a wonderful way to do it. Features include: + +- Easily and elasticly run anywhere between 2 and thousands of nodes with the + same set of powerful abstractions. Scale up and down as required by simply + adding or removing nodes. + +- Run JupyterHub itself inside Kubernetes easily. This allows you to manage + many JupyterHub deployments with only Kubernetes, without requiring an extra + layer of Ansible / Puppet / Bash scripts. This also provides easy integrated + monitoring and failover for the hub process itself. + +- Spawn multiple hubs in the same kubernetes cluster, with support for + [namespaces](https://kubernetes.io/docs/admin/namespaces/). You can limit the + amount of resources each namespace can use, effectively limiting the amount + of resources a single JupyterHub (and its users) can use. This allows + organizations to easily maintain multiple JupyterHubs with just one + kubernetes cluster, allowing for easy maintenance & high resource + utilization. + +- Provide guarantees and limits on the amount of resources (CPU / RAM) that + single-user notebooks can use. Kubernetes has comprehensive [resource control](https://kubernetes.io/docs/user-guide/compute-resources/) that can + be used from the spawner. + +- Mount various types of [persistent volumes](https://kubernetes.io/docs/user-guide/persistent-volumes/) + onto the single-user notebook's container. + +- Control various security parameters (such as userid/groupid, SELinux, etc) + via flexible [Pod Security Policies](https://kubernetes.io/docs/user-guide/pod-security-policy/). + +- Run easily in multiple clouds (or on your own machines). Helps avoid vendor + lock-in. You can even spread out your cluster across + [multiple clouds at the same time](https://kubernetes.io/docs/user-guide/federation/). + +In general, Kubernetes provides a ton of well thought out, useful features - +and you can use all of them along with this spawner. + +## Requirements + +### Kubernetes + +Everything should work from Kubernetes v1.6+. + +The [Kube DNS addon](https://kubernetes.io/docs/user-guide/connecting-applications/#dns) +is not strictly required - the spawner uses +[environment variable](https://kubernetes.io/docs/user-guide/connecting-applications/#environment-variables) +based discovery instead. Your kubernetes cluster will need to be configured to +support the types of volumes you want to use. + +If you are just getting started and want a kubernetes cluster to play with, +[Google Container Engine](https://cloud.google.com/container-engine/) is +probably the nicest option. For AWS/Azure, +[kops](https://github.com/kubernetes/kops) is probably the way to go. + +## Getting help + +We encourage you to ask questions on the +[Jupyter mailing list](https://groups.google.com/forum/#!forum/jupyter). +You can also participate in development discussions or get live help on +[Gitter](https://gitter.im/jupyterhub/jupyterhub). + +## License + +We use a shared copyright model that enables all contributors to maintain the +copyright on their contributions. + +All code is licensed under the terms of the revised BSD license. + +## Resources + +#### JupyterHub and kubespawner + +- [Reporting Issues](https://github.com/jupyterhub/kubespawner/issues) +- [Documentation for JupyterHub](https://jupyterhub.readthedocs.io) +- [Documentation for JupyterHub's REST API](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/jupyter/jupyterhub/master/docs/rest-api.yml#/default) + +#### Jupyter + +- [Documentation for Project Jupyter](https://jupyter.readthedocs.io/en/latest/index.html) | [PDF](https://media.readthedocs.org/pdf/jupyter/latest/jupyter.pdf) +- [Project Jupyter website](https://jupyter.org) + + +%prep +%autosetup -n jupyterhub-kubespawner-4.3.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-jupyterhub-kubespawner -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 4.3.0-1 +- Package Spec generated @@ -0,0 +1 @@ +db754737de6517ca58fe3fac36335416 jupyterhub-kubespawner-4.3.0.tar.gz |