Skip to content

sroze/kubernetes-client

Repository files navigation

Kubernetes client

Build Status

A library that provide a client for the Kubernetes API client.

Getting started

To create an anonymous client, you can:

$httpClient = new GuzzleHttpClient(
    new Client(),
    'baseUrl',
    'version'
);

$client = new Client(
    new HttpAdapter($httpClient, new Serializer())
);

To had user authentication, you can decorate the http client:

$authenticatedHttpClient = new AuthenticationMiddleware(
    $httpClient,
    AuthenticationMiddleware::USERNAME_PASSWORD,
    'username:password'
);

Serializer

If you use JMS serializer, the serializer adapter already exists in the src/Serializer directory. There is also an handler for the RollingUpdateDeployment object type used by Kubernetes that uses integerOrString types.

Development

Install application dependencies:

composer install

Tests

Tests are specifications written with PhpSpec.

./bin/phpspec run