Skip to main content

A Twisted-based Kubernetes client.

Project description

PyPI Package CI status Coverage

What is this?

txkube is a Twisted-based client library for interacting with Kubernetes.

Usage Sample

from __future__ import print_function
from twisted.internet.task import react

from txkube import network_kubernetes_from_context

@react
def main(reactor):
    k8s = network_kubernetes_from_context(reactor, u"minikube")
    d = k8s.versioned_client()
    d.addCallback(
        lambda client: client.list(client.model.v1.Namespace)
    )
    d.addCallback(print)
    return d

Installing

To install the latest version of txkube using pip:

$ pip install txkube

For additional development dependencies, install the dev extra:

$ pip install txkube[dev]

Testing

txkube uses pyunit-style tests. After installing the development dependencies, you can run the test suite with trial:

$ pip install txkube[dev]
$ trial txkube

txkube also includes integration tests. It is not recommended that you run these against anything but a dedicated testing Kubernetes cluster. Minikube is an easy way to obtain such a thing. Once running:

$ pip install txkube[dev]
$ TXKUBE_INTEGRATION_CONTEXT=minikube trial txkube

This will run the full test suite which includes the integration tests. It will interact with (and make destructive changes to) the identified Kubernetes cluster.

License

txkube is open source software released under the MIT License. See the LICENSE file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

txkube-0.2.0.tar.gz (136.9 kB view hashes)

Uploaded Source

Built Distribution

txkube-0.2.0-py2-none-any.whl (151.6 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page