# OpenStack

# python-k8sclient - Kubernetes API client code

## Overview

This is Kubernetes API python client code. This code is generated by swagger-codegen. Kubernetes provide swagger-spec to generate client code for different versions. The specs live in Kubernetes repo.

- Free software: Apache license
- Documentation: http://docs.openstack.org/developer/python-k8sclient
- Source: http://git.openstack.org/cgit/openstack/python-k8sclient
- Bugs: http://bugs.launchpad.net/python-k8sclient

## See also

- swagger-codegen: https://github.com/swagger-api/swagger-codegen
- Kubernetes swagger-spec: https://github.com/GoogleCloudPlatform/kubernetes/tree/master/api/swagger-spec

## Prerequisites

You need to install required packages for swagger codegen. Please refer to https://github.com/swagger-api/swagger-codegen#prerequisites

## Steps to generate API client code

Steps to generate Kubernetes client code for v1:

- Clone the python-k8sclient repo:

      git clone https://git.openstack.org/openstack/python-k8sclient

- Clone the swagger-codegen repo. It is recommended to checkout a release

> (e.g. v2.1.3) instead of using the master branch:

>     git clone https://github.com/swagger-api/swagger-codegen.git
>     cd swagger-codegen/
>     git checkout tags/v2.1.3

- Build swagger-codegen:

      mvn package

- Update the v1.json from latest Kubernetes release:

      curl -o ./k8sclient/templates/v1.json https://raw.githubusercontent.com/kubernetes/kubernetes/v1.2.2/api/swagger-spec/v1.json

- Run below command to generate the API client code for Kubernetes:

      cd ..
      java -jar ./swagger-codegen/modules/swagger-codegen-cli/target/swagger-codegen-cli.jar \
          generate \
          -i ./k8sclient/templates/v1.json \
          -l python -o ./KubernetesClientCode

Now you can check the code at location ./KubernetesClientCode.