Welcome to AIOKUBERNETES¶
AsyncIO Kubernetes Client for Python 3.6+.
Key Features¶
- Based on aiohttp.
- Stream output when executing commands in Pods.
- Auto-generated via Swagger and Kubernetes Python client generator.
Library Installation¶
$ pip install aiokubernetes
Getting Started¶
"""Print the name of all pods in the cluster."""
import asyncio
import aiokubernetes as k8s
async def main():
# Load default kubeconfig file and create an aiohttp client instance.
config = k8s.utils.load_config(warn=False)
client = k8s.clients.get_aiohttp(config)
proxy = k8s.api_proxy.Proxy(config)
# Ask Kubernetes for all Pods.
cargs = k8s.api.CoreV1Api(proxy).list_namespace(watch=False)
ret = await client.request(**cargs)
# Ensure the API call to Kubernetes did succeed.
assert ret.status == 200
# Optional: wrap the JSon response into a Swagger generated Python object.
obj = k8s.swagger.unpack(await ret.read())
# Print the pod names.
for i in obj.items:
print(f"{i.metadata.namespace} {i.metadata.name}")
# Close all pending client connections.
await client.close()
if __name__ == '__main__':
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
loop.close()
More examples are available here.
Source code¶
The project is hosted on GitHub
Please feel free to file an issue on the bug tracker if you have found a bug or have some suggestion in order to improve the library.
The library uses Travis for Continuous Integration.
License¶
The aiokubernetes
package is Apache 2 licensed and freely available.
Table Of Contents¶
- Quickstart
- API Reference
- aiokubernetes.api.version_api
- aiokubernetes.api.batch_v1_api
- aiokubernetes.api.extensions_api
- aiokubernetes.api.__init__
- aiokubernetes.api.custom_objects_api
- aiokubernetes.api.apps_api
- aiokubernetes.api.certificates_api
- aiokubernetes.api.authentication_v1_api
- aiokubernetes.api.core_v1_api
- aiokubernetes.api.authentication_api
- aiokubernetes.api.rbac_authorization_api
- aiokubernetes.api.apiregistration_v1beta1_api
- aiokubernetes.api.extensions_v1beta1_api
- aiokubernetes.api.policy_v1beta1_api
- aiokubernetes.api.networking_v1_api
- aiokubernetes.api.apps_v1beta1_api
- aiokubernetes.api.storage_v1_api
- aiokubernetes.api.scheduling_v1alpha1_api
- aiokubernetes.api.logs_api
- aiokubernetes.api.apiregistration_api
- aiokubernetes.api.authorization_v1_api
- aiokubernetes.api.scheduling_api
- aiokubernetes.api.apis_api
- aiokubernetes.api.settings_api
- aiokubernetes.api.batch_v2alpha1_api
- aiokubernetes.api.apps_v1beta2_api
- aiokubernetes.api.batch_api
- aiokubernetes.api.authentication_v1beta1_api
- aiokubernetes.api.storage_v1alpha1_api
- aiokubernetes.api.admissionregistration_v1beta1_api
- aiokubernetes.api.admissionregistration_v1alpha1_api
- aiokubernetes.api.core_api
- aiokubernetes.api.authorization_v1beta1_api
- aiokubernetes.api.rbac_authorization_v1alpha1_api
- aiokubernetes.api.certificates_v1beta1_api
- aiokubernetes.api.autoscaling_api
- aiokubernetes.api.autoscaling_v2beta1_api
- aiokubernetes.api.autoscaling_v1_api
- aiokubernetes.api.rbac_authorization_v1beta1_api
- aiokubernetes.api.events_api
- aiokubernetes.api.policy_api
- aiokubernetes.api.apiextensions_api
- aiokubernetes.api.apiextensions_v1beta1_api
- aiokubernetes.api.apps_v1_api
- aiokubernetes.api.apiregistration_v1_api
- aiokubernetes.api.storage_api
- aiokubernetes.api.authorization_api
- aiokubernetes.api.batch_v1beta1_api
- aiokubernetes.api.admissionregistration_api
- aiokubernetes.api.rbac_authorization_v1_api
- aiokubernetes.api.storage_v1beta1_api
- aiokubernetes.api.settings_v1alpha1_api
- aiokubernetes.api.events_v1beta1_api
- aiokubernetes.api.networking_api
- Module Documentation